|三分钟了解区块链常用数据结构「默克尔树」( 二 )


看到这里 , 你可能已经意识到了默克尔树其实就是将数据分割成多个小块 , 进行多次哈希运算 , 搭建出的一个树状数据结构 。 那为什么要对数据进行拆分 , 计算出多个哈希值用于校验呢?这不是增加工作量了吗?但其实这样做是为了提高数据验证的灵活性 , 数据量越大 , 默克尔树的这一优势会体现得越明显 。
试想一下 , 如果我们不对数据进行拆分 , 而是将整体计算成一个哈希值 , 那当数据校验出现问题时 , 我们很难分辨问题出现在哪里 , 只能回过头去对整个数据进行排查 , 如果数据量特别大 , 那么这个错误排查过程无异于海底捞针 。
|三分钟了解区块链常用数据结构「默克尔树」
本文插图

但在默克尔树里 , 数据被拆分成多个小块 , 形成了多个分支 , 可以根据具体情况对部分数据进行校验 , 无需校验整个数据 , 从而提高数据校验的灵活性和效率 。
|三分钟了解区块链常用数据结构「默克尔树」
本文插图

最后总结一下默克尔树的知识要点:

  • 由哈希值构成的树状数据结构
  • 用于验证验证区块链等去中心化系统中的数据的完整准确性
  • 具有灵活高效验证数据的优势
来源链接:mp.weixin.qq.com


推荐阅读