什么是Merkle Tree? Merkle Tree也就是胜超前文说的Merkle树,中文译名还有梅克尔树或默克尔树,因为这是一棵用哈希值搭建起来的树,树的所有节点都存储了哈希值,所以也叫哈希树,英文名为Hash Tree。 Merkle树是一种典型的二叉树结构,看起来像一棵倒着的树,由一个根节点,一组中间节点和一组叶节点组成,最早由Merkle Ralf在1980年提出,广泛用于文件系统和 P2P 系统中。 如何理解Merkle树中的节点? 叶节点:在二叉树中,没有子节点的节点称为叶节点,这是初始节点,对于一个区块而言,每一笔交易数据,进行哈希运算后,得到的哈希值就是叶节点。 中间节点:子节点两两匹配,子节点哈希值合并成新的字符串,对合并结果再次进行哈希运算,得到的哈希值,就是对应的中间节点,这是过程节点。 根节点:有且只有一个,也就是胜超之前分享的Merkle 根,也叫Merkle Root,这是终止节点。 Merkle树有什么特点? 1,首先是它的树的结构,Merkle树常见的结构是二叉树,但它也可以是多叉树,它具有树结构的全部特点。 2,Merkle树的基础数据不是固定的,想存什么数据由你说了算,因为它只要数据经过哈希运算得到的Hash值。 3,Merkle树是从下往上逐层计算的,就是说每个中间节点,都是根据相邻的两个叶子节点组合计算得出的,而根节点是根据两个中间节点组合计算得出的,所以叶子节点是基础。 Merkle树有什么用? 1,Merkle树比较典型的应用场景的就是P2P下载,在点对点网络中作数据传输的时候,为了校验数据的完整性,把大的文件分割成小的数据块,如果小块数据在传输过程中损坏了,那么只要重新下载这一小块数据就行了。 2,Merkle树还可以被用来快速比较大量的数据,因为当两个Merkle树根相同时,则意味着所代表的数据必然相同。 3,Merkle树可以实现零知识证明,关于零知识证明以后有时间再分享,ZCash就是采用零知识证明来达到交易匿名的目的。 —- 编译者/作者:叶胜超区块链 玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。 |
叶胜超:一分钟搞懂Merkle Tree以及它的特点和作用(27)
2019-12-06 叶胜超区块链 来源:区块链网络
LOADING...
相关阅读:
- 游侠区块链10月28日分析:比特币高点13850完美预期后市偏空2020-10-28
- INX有限公司准备收购Openfinance的经纪人-经销商和ATS业务– Cryptovibes.com2020-10-28
- Coinbase暂停与比特币上涨同时进行的交易2020-10-28
- 节点经济助推实体商业币耀BtLux为民营企业赋2020-10-28
- AlphaWalletVictorZhang:区块链3.0和2.0主要差别在于权益使用2020-10-28