首页 » InfoTech »

Merkle可信树(Merkle Tree)介绍

2018年9月9日 / 28次阅读
比特币

打开支付宝首页,搜索“529018372”,即可领取红包!可重复领。

Merkle可信树(Merkle Tree)是为了解决多重一次签名(对多个数据做一次数字Hash签名)中的认证问题而产生的,Merkle可信树结构具有一次签名大量认证的优点,在认证方面具有显著的优势。如今,Merkle可信树的树形结构已经被广泛应用到了信息安全的各个领域,比如证书撤销、源组播认证、群密钥协商等等。并且基于Merkle可信树的数字签名方案在安全性上仅仅依赖于哈希函数的安全性,且不需要太多的理论假设,这使得基于 Merkle 可信树的数字签名更加安全、实用。

 

Merkle可信树(Merkle Tree),也叫哈希树,是由Ralph Merkle于1979年提出申请的专利。它是一种用做快速归纳和校验大规模数据完整性的树形数据结构。

它具有以下特点:

它是一种树,大多数是二叉树,也可以是多叉树,具有树结构的所有特点。

Merkle Tree的叶子节点是数据块的哈希。

Merkle Tree的非叶子节点的哈希值是根据它下面所有叶子节点的值哈希计算得到,如下图所示。

备注:如果最开始叶子节点是奇数个,可以复制最后一个叶子节点,凑成偶数个。

可以发现,只要存储的叶子节点数据有任何的变动,就会逐级向上传递到相应的父节点,最终使得Merkle树的根节点哈希值发生变化。

Merkle可信树(Merkle Tree)

Merkle可信树(Merkle Tree)

Merkle树的应用场景有以下几种:

快速比较大量数据:当两个Merkle树的根哈希值相同时,说明所代表的的数据都相同

快速定位修改:如上图,如果交易C发生改变,那么就会导致N2、N5和Merkle Root发生改变。所以,我们想要快速定位,只需要沿着Root==>N5==>N2就可以定位到交易C发生改变。

零知识证明:例如,想要证明一组交易中包含某个交易A,但又不想让对方知道交易A的具体内容,那么就可以构建Merkle树(如上图),向对方公布N0、N1、N4和Root,对方就可以确认交易A的存在,但无法知道交易A的具体内容。

本文链接:http://www.maixj.net/ict/merkle-tree-18851
云上小悟 麦新杰(QQ:1093023102)

相关文章

评论是美德

无力满足评论实名制,评论对非实名注册用户关闭,有事QQ:1093023102.


前一篇:
后一篇:

栏目精选

云上小悟,麦新杰的独立博客

Ctrl+D 收藏本页

栏目

AD

ppdai

©Copyright 麦新杰 Since 2014 云上小悟独立博客版权所有 备案号:苏ICP备14045477号-1。云上小悟网站部分内容来源于网络,转载目的是为了整合信息,收藏学习,服务大家,有些转载内容也难以判断是否有侵权问题,如果侵犯了您的权益,请及时联系站长,我会立即删除。

网站二维码
go to top