Merkle-Tree

Merkle Tree 中的交易數量總是“偶數”嗎?

  • September 18, 2018

根據 Merkle Tree 的定義和結構,顯然,插入 Merkle Tree 結構的塊中的交易數量必須是偶數(而不是奇數),不是嗎?

請看下圖,它顯示了一個 Merkle 樹:

在此處輸入圖像描述

我見過的所有例子都是這樣的,這意味著默克爾樹中的交易數量顯然總是偶數(例如,在上面的例子中,有四個交易)。有沒有交易數量是奇數的例子?如果交易數量是奇數,會發生什麼?(例如,如何在上面的例子中插入 5 筆交易?)

如果 merkle 樹的任何級別上的節點數為奇數,則將最後一個節點複製並與自身進行散列。

如果有 Tx4,圖表將如下所示

                 Root (Hash01234444)
              /                      \
       Hash0123                 Hash4444
       /      \                    /     \
  Hash01      Hash23           Hash44     Hash44
  /   \        /   \             /   \
Hash0  Hash1  Hash2  Hash3     Hash4   Hash4

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