Private-Key

我在哪裡可以找到允許我從 ECDSA 簽名計算 Z1 和 Z2 的程式碼?

  • December 27, 2020

通過使用區塊鏈中的弱簽名恢復比特幣私鑰,我可以進行其他計算,但我不知道如何計算Z1Z2Sean Bradley提供了一個公共程式碼:

<http://2coin.org/tx.asmx?op=GetTXExtended>

但它現在似乎不起作用。是否有其他一些公共程式碼可以計算Z1Z2使用任何語言。我可以將其轉換為我喜歡的語言。任何幫助表示讚賞。

根據 Nils 的文章,這些z值是在 ECDSA 公式中籤名的雜湊值。可以在OP_CHECKSIG wiki 頁面和 Krzysztof Okupski 的優秀開發人員參考 PDF中找到有關哪些數據進入這些雜湊的背景。

比特幣核心生成雜湊的程式碼在這裡。任何其他簽署交易(或驗證簽名)的比特幣應用程序都必須具有兼容的功能(至少對於預設的 SIGHASH_ALL),因此您應該能夠找到幾乎任何流行的程式語言的實現。

將您的交易粘貼到此頁面 <https://2xoin.com/getRSZfromRawTX/>

如果它能夠解碼 TX,它將為您提供所有 R、S 和 Z。

例如, 0100000002f64c603e2f9f4daf70c2f4252b2dcdb07cc0192b7238bc9c3dacbae555baf701010000008a4730440220d47ce4c025c35ec440bc81d99834a624875161a26bf56ef7fdc0f5d52f843ad1022044e1ff2dfd8102cf7a47c21d5c9fd5701610d04953c6836596b4fe9dd2f53e3e014104dbd0c61532279cf72981c3584fc32216e0127699635c2789f549e0730c059b81ae133016a69c21e23f1859a95f06d52b7bf149a8f2fe4e8535c8a829b449c5ffffffffff29f841db2ba0cafa3a2a893cd1d8c3e962e8678fc61ebe89f415a46bc8d9854a010000008a4730440220d47ce4c025c35ec440bc81d99834a624875161a26bf56ef7fdc0f5d52f843ad102209a5f1c75e461d7ceb1cf3cab9013eb2dc85b6d0da8c3c6e27e3a5a5b3faa5bab014104dbd0c61532279cf72981c3584fc32216e0127699635c2789f549e0730c059b81ae133016a69c21e23f1859a95f06d52b7bf149a8f2fe4e8535c8a829b449c5ffffffffff01a0860100000000001976a91470792fb74a5df745bac07df6fe020f871cbb293b88ac00000000

將輸出

[
 {
   "sigR": "d47ce4c025c35ec440bc81d99834a624875161a26bf56ef7fdc0f5d52f843ad1",
   "sigS": "44e1ff2dfd8102cf7a47c21d5c9fd5701610d04953c6836596b4fe9dd2f53e3e",
   "sigZ": "c0e2d0a89a348de88fda08211c70d1d7e52ccef2eb9459911bf977d587784c6e",
   "pubKey": "04dbd0c61532279cf72981c3584fc32216e0127699635c2789f549e0730c059b81ae133016a69c21e23f1859a95f06d52b7bf149a8f2fe4e8535c8a829b449c5ff",
   "N": 0
 },
 {
   "sigR": "d47ce4c025c35ec440bc81d99834a624875161a26bf56ef7fdc0f5d52f843ad1",
   "sigS": "9a5f1c75e461d7ceb1cf3cab9013eb2dc85b6d0da8c3c6e27e3a5a5b3faa5bab",
   "sigZ": "17b0f41c8c337ac1e18c98759e83a8cccbc368dd9d89e5f03cb633c265fd0ddc",
   "pubKey": "04dbd0c61532279cf72981c3584fc32216e0127699635c2789f549e0730c059b81ae133016a69c21e23f1859a95f06d52b7bf149a8f2fe4e8535c8a829b449c5ff",
   "N": 1
 }
]
`

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