Начиная с этого текста на https://en.bitcoin.it/wiki/Script :
«Сценарий для типичного перевода биткойнов на биткойн-адрес назначения D просто обременяет будущие расходы биткойнов двумя вещами: отправитель должен предоставить 1. открытый ключ, который при хэшировании дает адрес назначения D, встроенный в сценарий ...»
а затем глядя на скрипт HTLC:
OP_IF
[HASHOP] <digest> OP_EQUALVERIFY OP_DUP OP_HASH160 <seller pubkey hash>
OP_ELSE
<num> [TIMEOUTOP] OP_DROP OP_DUP OP_HASH160 <buyer pubkey hash>
OP_ENDIF
OP_EQUALVERIFY
OP_CHECKSIG
Моя первоначальная мысль заключалась в том, что HTLC можно было выкупить только по адресу, указанному ниже <seller pubkey hash>
или <buyer pubkey hash>
: это единственные данные, относящиеся к адресам, встроенным в сценарий, поэтому это должен быть «адрес назначения», упомянутый выше. Я понимаю, что это неправильно.
Правильно ли я сейчас думаю:
Входы транзакции не имеют абсолютно никакой возможности влиять на выходы в любой ситуации. Они могут только определить, кто может тратить, а не условия того, как они это делают.
Алистер Манн