Blockchain.info
閱讀比特幣原始交易
我想了解比特幣資料結構。所以我嘗試理解 json 格式的原始交易。當我檢查blockchain.info API 文件時,我看到輸入結構是為這樣的交易定義的:
"prev_out": { "hash":"a3e2bcc9a5f776112497a32b05f4b9e5b2405ed9", "value":"100000000", "tx_index":"12554260", "n":"2" }, "script":"76a914641ad5051edd97029a003fe9efb29359fcee409d88ac"
但是當我從 blockchain.info 查詢交易時,情況似乎有所不同:
"prev_out": { "spent":true, "tx_index":8845778, "type":0, "addr":"1CfD77hupeUvFwBPxZ2fA8iyWmVwQY22oh", "value":10212000000, "n":1, "script":"76a9147fe34b97aeff4ab754770be5c8f12e2e95332fd488ac" }
是否有任何文件清楚地解釋了這些數據欄位?
我目前的奇蹟:
- 什麼是花費欄位?
- 查詢的交易中沒有雜湊欄位,我想一定有嗎?
- 什麼是類型欄位?
- 哪些欄位已簽名?簽名是由哪些欄位散列生成的?
您應該知道,不同的事務解析器通常包含自己的欄位,這些欄位不直接包含在原始事務中。例如,原始交易中不會找到“地址”,但可以通過查看它來推斷。我不確定“類型”和“n”欄位指的是什麼。您可能想看看這些連結:
我不確定您的問題 1、3,它將特定於 api。我不確定您在問題 2 中指的是什麼。對於問題 4,它取決於交易類型(非隔離見證或隔離見證)和簽名類型(sighash_all、sighash_none、sighash_single)。
我已經使用了很長時間,並且總是跳過欄位。既然你提到它,這裡是一個部分答案:
1.) 我不知道。
2.) 交易雜湊出現在列表末尾;它也出現在您提供的連結中。
3.) 另一個好問題。我不知道。
4.) 被簽名的欄位來自之前的交易,基本上,整個資料結構都被簽名,除了“scriptSig”欄位被“pubkey”腳本填充。
關於交易結構的文件有以下三個重要來源:
2.) Andreas Antonopoulos 的“掌握比特幣”
我希望這是有益的。