火星链 火星链
Ctrl+D收藏火星链
首页 > Fil > 正文

DEF:科普 | 默克尔树的基础数据结构

作者:

时间:1900/1/1 0:00:00

本文主要介绍了默克尔树的基础数据结构,以及默克尔树相关的应用延伸的起点。

默克尔树简介

本文主要介绍了默克尔树的基础数据结构,以及默克尔树相关的应用延伸的起点。

在Coursera平台的比特币和加密货币技术课程中,作者学习了如何使用基于哈希的数据结构来验证P2P网络系统中数据完整性的基础知识。该课程中提到的核心数据结构之一是默克尔树,它存在于比特币区块链中,以一种非常有效地节省空间和时间的方式,来帮助验证交易的存在(本文后面会详细介绍!)。作者深入研究了默克尔树,意识到这个数据结构实际上是多么丰富的,所以决定写一篇默克尔树学习笔记。

欧易OKEx将于3月18日推出DeFi系列科普视频:据欧易OKEx官方消息显示,欧易OKEx将正式推出DeFi系列科普视频《欧易DeFi20讲》,本系列节目由欧易OKEx亚太区CEO马克金主讲。该视频首期将于3月18日11:00(HKT)推出,用户可以在欧易OKEx官方学院、金色财经观看。

《欧易DeFi20讲》主要包含DeFi入门指南、全景解读DeFi生态及如何参与DeFi三个篇章,可以轻松使用户了解DeFi原理,洞察DeFi价值,掌握DeFi热点,更多详情请关注欧易OKEx官方学院。[2021/3/18 18:55:59]

默克尔树解说

默克尔树构建完成后,看起来是这样:

IMF今日发布的加密货币科普视频实为两年前旧闻,且存在诸多疏漏:国际货币基金组织IMF今日在推特上发布了一条关于加密货币的科普视频,这段时长两分钟的视频最初发布于2018年6月。该视频称加密货币是“货币进化的下一步”,但没有特别提到DLT、区块链,甚至是代币名称等术语。BTC、XRP和ETH只出现在说明加密交易的图形中。尽管这段视频到目前为止已经获得了超过13.7万的点击量和2900个赞,但来自加密社区的许多反应都是批评的,他们指出了信息中的漏洞和似乎具有误导性的措辞。

Reddit用户nanooverbtc称:“他们犯了很多错误,比如把私钥称为密码。”该视频也没有讨论挖矿或加密货币供应。Kraken策略师Pierre Rochard等知名人士表示:“可证明的稀缺性是比特币有趣的原因,你忘了提这一点。”(Cointelegraph)[2020/8/24]

和H,如果没有缩写的话,根哈希也可以为H+H)+H+H)))

现场 | 火币中国推出数字经济及区块链产业科普新书:金色财经现场报道,12月6日,由海南省工业和信息化厅主办,南南合作金融中心协办,海南生态软件园、火币中国承办的“海南自贸港数字经济和区块链国际合作论坛”在海口举行,这是全球首次区块链部长级论坛。

在本次论坛上,火币中国举行了“数字经济及区块链产业科普系列新书发布”仪式,希望通过教材、专业教育、培训等多种方式,帮助从业者、高校、研究机构深入了解区块链,从而建立起区块链全局性知识模型,真正推动区块链应用落地。火币中国CEO袁煜明介绍,将联合机械工业出版社面向普通高等教育推出《区块链导论》、《区块链系统设计与应用》和《区块链新商业模式分析》系列教材,这是国内最早推动的区块链教材之一;火币中国还积极参与数字经济的研究,由中信出版社出版的新书《读懂Libra》已经上市;由火币中国负责编写的区块链技术科普读物《区块链技术进阶指南》将于12月面世;首本行业内最全的区块链应用案例集《区块链产业应用100例》在本次论坛进行了首次刊印。[2019/12/6]

a、b、c、d是一些数据元素,H是哈希函数。如果你不是很了解哈希函数,可以把它理解为数据块的“数据指纹”,Hash是一个把任意长度的数据映射成固定长度数据的函数,而根据Hash值反推原始输入数据的特征是几乎不可能的。每个节点都是通过哈希运算父节点得到的,默克尔树的常见结构是二叉树,但也有非二叉树结构的,比如以太坊平上默克尔树。本文只讨论这种最常见的二叉树结构。

声音 | ETC Labs主管:科普教育是未来几年公链面临的巨大挑战:ETCLabs主管Darin Kotalik认为,科普教育是未来几年公链面临的巨大挑战,人们必须要对区块链有基本的认识,分清楚公链和私链的区别。[2019/8/25]

自下而上通过哈希运算相同高度的节点,直至生成默克尔树根节点。在生成默克尔树的时候,如果存在单个叶子节点无法匹配成对,就需要特殊处理这个情况,除此之外,树的构造非常简单。

默克尔树构建完成后,就可以在O(logn)时间内使用根哈希对叶子进行验证,验证工作是通过重新创建包含从根到被验证的数据段进行的。在上面的例子中,如果想要验证c,那么就需要得到H和H+H)。数据c哈希后得到H,再将H与H进行哈希运算,然后将H与H在进行哈希运算,得到一个最后的哈希值,如果这个哈希值与根哈希相同,则说明c确实是默克尔树中数据的一部分。

在BT下载等情况下,是由另一方提供数据c,H和H+H)的,如果你担心这种方法的安全性,请记住在一个哈希函数上不可能找到e值使得H=H。这意味着只要根哈希是正确的,其他人很难作假他们提供的数据。

声音 | 火星人朋友圈科普RAM:火星人在朋友圈发文称,“什么是RAM?简单来说就是EOS这个国家的土地,所有的经济行为都离不开土地。只要EOS的BP们能投票形成一个稳定的供给预期,并且不改变目前的Bancor算法,那么RAM后续的价格有可能会像北上广深的房价走势。房价下跌不行,房价过快上涨也不行,EOS的生态越来越像某国了,真有意思。”[2018/7/6]

输出某些数据的验证路径和重新创建通向默克尔树根的分支一样简单。在数字签名方案中使用默克尔树时,验证整个默克尔树及其各个叶子节点自身的数据就很重要,并且这实际上是可以在O(logn)时间内完成。有一些更高级的算法是可以完成这一输出过程的。

默克尔树的执行方法

下图是完整版本的代码,作者将会在这里解释创建和验证默克尔树的方法。注意build_tree和_audit方法都是来自较大类的实例方法。

构建树的方法是将叶子添加到堆栈中,并检查堆栈中的前两个节点是否具有相同的高度。当高度相同时,节点有一个“子值”(两个节点哈希值相连后的再次哈希值),当高度不同时,一个新节点会追加到堆栈中。当最后两个节点高度不同时,需要处理这种边缘情况。

上面的方法在单节点情况下会失败,因为不满足任何条件,所以有一个小方法来处理完整性。

上图是本文要解释的验证过程。公开验证方法会检查一些先决条件,这就是为什么大部分逻辑放在这个私人版本中的原因。

默克尔树的应用

默克尔树在区块链中应用,近年来引起了人们的广泛关注。在许多P2P网络系统中(不仅仅是区块链),个人需要能够从不受信任的一方获取数据,并证明对方发送给他们的内容是他们想要的真实内容。BT文件(种子文件)就是一个例子:当你下载一个BT文件时,你会收到别人在网上“播种”的BT文件,但是你怎么能确定这些文件真的,是你要下载的内容,而不是垃圾或恶意软件呢?默克尔树可以对从对方接收到的数据进行身份验证,以解决这个信任问题。

类似的问题也适用于像比特币和以太坊这样的加密货币:如果有人声称另一个同行在交易中向他们支付了费用,那么网络上的一个节点如何验证交易是否真的发生了呢?一种方法是,节点可以存储曾经发生过的完整交易历史记录,但是,就节点的时间和空间成本而言,这是不现实的。默克尔树提供了一种解决方案,可以为网络上的节点节省时间和空间。通过每个区块中的交易数据创建默克尔树,可以在O(logn)时间内审计交易。此外,它为一些比特币客户端提供了新的解决方案,可以节省空间,只存储默克尔树根,不需要存储历史每一笔交易,这创造了巨大的价值!

除了区块链和BT下载,默克尔树还能在任何需要有效检测不一致性的系统中被应用:

证书颁发机构(CAs)使用默克尔树作为证书透明性的一种方法。在这里,公钥私钥对被视为默克尔树的叶子。这是CAs用来防止某个CA可能耍无赖并试图在某个领域的所有者不知道证书的情况下对该领域的证书进行认证的一种机制。

高度可伸缩的数据库,如ApacheCassandra和DynamoDB,处理网络上复制数据库的故障。这个过程被称为“反熵”,ApacheCassandra博客和AmazonDynamoDB论文对其进行了较为深入的描述。

RSA的数字签名替代品,在这种情况下,默克尔树的根充当公钥,单个节点用作一次性签名。最近,人们做了更多的工作来推进这种技术,因为理论上它可以抵抗量子计算攻击(和RSA不一样,默克尔树为当今大多数公钥密码术提供了支持)。

默克尔树的应用确实很多,在任何特定领域的默克尔树应用都是需要长篇大论来论述的,在这里我们只做简单的介绍。

原文:https://hackernoon.com/merkle-tree-introduction-4c44250e2da7

稿源:https://first.vip/shareNews?id=2130&uid=1

标签:区块链DEFIEFIDEF区块链的未来发展前景与应用DeFi ForgebeFITTER Healthdefy币是真是假

Fil热门资讯
Klaytn:重磅丨外媒:三星今日开卖区块链版Galaxy Note 10,买手机还送加密货币

据报道,韩国电子巨头三星电子(SamsungElectronics)将发布新版GalaxyNote10智能手机,这款特别版本的手机将预装加密货币钱包,以推动区块链技术的应用.

1900/1/1 0:00:00
XRP:XRP分叉发起者遭遇威胁,Ripple Labs再次转移价值4亿美元的XRP

据Trustnodes9月1日报道,XRP背后的运营公司RippleLabs持有约500亿枚XRP,目前其已经转移了15亿枚,价值约4亿美元,约占总市值5%.

1900/1/1 0:00:00
区块链:5G 链网(全球)产业创新峰会即将在南京召开

2019年是中国5G商用元年,工业及信息化部在今年6月6日正式发放5G牌照,标志着中国正式迈进第五代移动通信时代.

1900/1/1 0:00:00
加密货币:区块链入门 | USDT、Libra这些稳定币是什么?有什么作用?

许多人都已清楚地看到,区块链技术将进入主流市场,区块链资产和加密货币可能颠覆很多行业,但仍有一些因素阻碍了主流采用.

1900/1/1 0:00:00
加密货币:英国脱欧“巨变”,比特币却“反常”跌破1万美元

北京时间8月28日晚间,英国女王伊丽莎白二世已批准首相约翰逊暂停议会的请求,休会时间直至10月14日.

1900/1/1 0:00:00
ARI:以太坊Parity客户端曝出RPC安全漏洞,用户需尽快升级

周二,在颇受欢迎的以太坊Parity客户端发现了一个可能导致电脑关机的代码漏洞。以太坊客户端Parity将全球超过3000台计算机服务器连接到以太坊区块链网络.

1900/1/1 0:00:00