Segregated-Witness
Segwit 輸出的簽名摘要是什麼
(假設沒有 OP_CODESEPERATOR)
對於標準 P2PKH,簽名摘要是這樣生成的:
新交易
- 很好地解決 TxOuts
- 將所有 TxIn 腳本設置為空
- 將先前的鎖定腳本插入您正在簽名的 TxIn
- 將雜湊類型程式碼附加到事務的末尾
- SHA256 兩次本次交易
- 做個摘要。
對於標準 P2SH,簽名摘要是這樣生成的:
新交易
- 很好地解決 TxOuts
- 將所有 TxIn 腳本設置為空
- 將先前解鎖腳本的兌換腳本插入您正在簽名的 TxIn
- 將雜湊類型程式碼附加到事務的末尾
- SHA256 兩次本次交易
- 做個摘要。
我從這裡學到了上面的那些。至於上面那些,我已經編寫了程序,並成功地簽署並送出了比特幣交易到區塊鏈。
但是說到Segwit,我不知道摘要應該是什麼。對於 P2WPKH 輸出,我嘗試使用與 P2PKH 相同的方法來獲取摘要,但它失敗了。區塊鏈告訴我我的簽名是錯誤的。
對於 P2WPKH 和 P2WSH 支出中的簽名,sighash 算法在 BIP143 中進行了描述。
它與傳統支出中使用的非常不同。