Segregated-Witness
節點如何從 TxID 獲取資訊 - 也就是說,TxID 不是各種事務組件的 SHA^2(256) 嗎?
如果我是對的,SegWit TxID 由交易的非 SegWit 數據的 SHA^2(256) 雜湊組成。但是,另一個節點如何使用 TxID 來獲取有關交易的資訊,例如地址資訊。
我是否正確地說具有 TxID 的節點會將其發送到一個完整節點,該節點將所需的 TxID 與它儲存的 TxID 與相關資訊相匹配,然後將其發送回節點?如果是這樣,這是否意味著全節點儲存 TxID 和交易資訊?
是的,所有
txid
s 僅根據非見證數據計算。雖然許多節點擁有區塊鏈的完整副本(其中確實包含所有交易),但大多數節點沒有完整的交易索引。通常不可能txid
通過 P2P 協議按其請求交易。通過https://developer.bitcoin.org/reference/p2p_networking.html
節點將根據
inv
(庫存)消息向其對等方發布一次新交易。然後只有被通知的對等方可以請求每個getdata
消息的已宣布事務,這會提示tx
消息響應。getdata
除非出於隱私原因,節點最近向請求節點宣布了交易,否則節點不會處理請求。在沒有事先通知的情況下,節點只能通過請求包含在其中的塊來從對等方了解交易。
您可以在此處閱讀有關 P2P 消息的更多資訊:https ://developer.bitcoin.org/reference/p2p_networking.html