P2sh
P2SH 包裹的 P2PKH 可能嗎?
有一種已知的地址形式
P2SH-wrapped SegWit
,將 SegWit 地址包裝為 Base58 (P2SH) 地址。想到這樣的地址類型,我想出一個問題:
Is P2SH-wrapped P2PKH possible?
我知道它完全沒用,沒有意義,但我現在想考慮一下。
第 1 步:確定要轉換的地址
讓我們使用地址,因為它在這裡
1CciesT23BNionJeXrbxmjc7ywfiyM4oLW
用作範例。第 2 步:將其轉換為“輸出腳本”,然後使用“hash160”對其進行雜湊處理
我得到了
OP_DUP OP_HASH160 7f6ab65fa911f558ca2dde3e9d073acb02c0d5c6 OP_EQUALVERIFY OP_CHECKSIG
。雜湊結果是
c852ac34a1c76b63a279c97502c9ccc4e3cb9e8b
.第 3 步:從散列腳本生成 P2SH 地址
toBase58Check(c852ac34a1c76b63a279c97502c9ccc4e3cb9e8b, 5) = 3KxE77EHe1ip6WGRifwr9fZ5WBDGsLyWFz
結果
3KxE77EHe1ip6WGRifwr9fZ5WBDGsLyWFz
就是我想要的。這是重現此地址生成的程式碼。
題
是否可以花費發送到
3KxE77EHe1ip6WGRifwr9fZ5WBDGsLyWFz
(P2SH 包裝的 P2PKH 地址)的硬幣,就像我們如何花費發送到 P2PKH 地址的硬幣一樣?
這絕對是可能的,你已經正確地完成了嵌套。此外,除了“無用和無意義”之外,它更昂貴,因為用於贖回發送到該地址的輸出的 scriptSig 必須包含 26 個字節的redeemScript(p2pkh 腳本本身)及其推送操作,以及公鑰和簽名。