Transactions

兌換 HTLC 時的目的地地址

  • March 22, 2019

從<https://en.bitcoin.it/wiki/Script>上的文本開始:

“典型的比特幣轉移到目標比特幣地址 D 的腳本簡單地用兩件事來阻礙比特幣的未來支出:支出者必須提供 1. 一個公鑰,當散列時,產生嵌入在腳本中的目標地址 D……”

然後查看 HTLC 腳本:

OP_IF
   [HASHOP] &lt;digest&gt; OP_EQUALVERIFY OP_DUP OP_HASH160 &lt;seller pubkey hash&gt;            
OP_ELSE
   &lt;num&gt; [TIMEOUTOP] OP_DROP OP_DUP OP_HASH160 &lt;buyer pubkey hash&gt;
OP_ENDIF
OP_EQUALVERIFY
OP_CHECKSIG

我最初的想法是 HTLC 只能兌換到後面的地址&lt;seller pubkey hash&gt;or &lt;buyer pubkey hash&gt;:它們是與腳本中嵌入的地址相關的唯一數據,因此必須是上面提到的“目標地址”。我理解這是錯誤的。

我現在的想法是否正確:

  1. 兩個公鑰雜湊僅建立了贖回者獲取各自分支的權利;
  2. 實際上,HTLC沒有“腳本中嵌入的目標地址 D”;
  3. 賣方或買方可以兌換到他們喜歡的任何地址;
  4. 在 HTLC 的資金和生命週期中,直到贖回前的那一刻,該地址仍無法確定?

交易的輸入在任何情況下都絕對沒有能力影響輸出。他們只能定義誰可以花錢,而不是他們如何花錢的條件。

引用自:https://bitcoin.stackexchange.com/questions/85514