在哈希树中,非叶子节点是直接哈希的数据,还是它们是子哈希的哈希?

时间:2011-12-07 06:13:52

标签: algorithm data-structures hashtree

我正在寻找the wikipedia article for hash trees,我对他们的图表感到有些困惑。

叶子节点显然包含基础数据的哈希值。

哈希树中的叶节点是否与任何非叶节点不同?非叶子节点是否包含数据散列,或散列哈希

鉴于此图:

Hash tree diagram

其中哪一个是Hash 1哈希?

  1. Hash 1-0 + Hash 1-1
  2. Data block 002 + Data block 003
  3. 或者哈希树根据应用程序(rsync,P2P网络,Git等)根本不同?

1 个答案:

答案 0 :(得分:1)

这是维基文章所说的:

  

树中更高的节点是它们各自的哈希值   儿童。例如,在图片中,散列0是散列的结果   哈希0-0然后哈希0-1。也就是说,hash 0 = hash( hash 0-0 || hash 0-1 )其中||表示连接。

但我确信开发人员可以自定义树和算法,使用不同的哈希函数等,针对不同的数据或速度或内存或其他任何方式进行优化。