Bitcoin-Core

原始交易在哪里以及如何儲存在區塊鏈上?

  • May 31, 2021

我的理解是交易以雙雜湊格式儲存在區塊鏈上:即 SHA256(SHA256(rawtransaction))。但也可以訪問原始交易。這意味著原始交易數據必須儲存在某個地方。那麼,如果原始交易數據沒有儲存在區塊鏈上,那麼它儲存在哪裡呢?還是我最初關於交易以雙散列格式儲存的陳述不正確?我不認為可以通過反轉雙雜湊操作來提取原始交易數據。

這是一個定義問題。

區塊鏈不儲存任何東西,它是一種抽象的資料結構,由網路中的節點共同維護。這些節點是儲存東西的節點。這可能包括也可能不包括實際的交易數據——沒關係。

比特幣區塊鏈由雜湊連結的區塊頭組成。每個區塊頭都包含前一個區塊頭的雜湊值。每個區塊頭還包含其中所有交易雜湊的雜湊(通過 Merkle 樹)。這些交易雜湊顯然是交易數據本身的雜湊。

這是所有節點都需要同意的結構的定義,因為它涉及雜湊,並且這些雜湊需要匹配。但他們實際上儲存的是他們自己的業務。具有未修剪歷史的完整節點將儲存所有交易和所有塊。修剪後的節點可以將所有交易和塊儲存到歷史中的特定點。更輕量級的節點可能只儲存塊頭和使用者感興趣的交易。

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