标签: blockchain merkle-tree
我试图了解Merkle树在SPV中的作用以及区块链技术中的许多其他情况,并且无法理解这一问题:如何在验证交易时生成Merkle路径。
在下图中,假设我要验证交易 2 ,我了解 3 , 01 的哈希值, 4567 并且需要根,但是,我想知道这条默克尔路径是如何产生的。
当事务 2 被提供给服务器/节点时,服务器/节点如何知道返回哪个路径以验证 2 ?如果服务器已经知道这条路径,为什么服务器不验证它,为什么还要费心返回这条路径呢?
谢谢,
答案 0 :(得分:1)
令我困惑的部分在上图中,1,2,...,8用于表示交易,但是这种过度简化的表示使我认为交易只有一个组件,因此订购和验证可以发生在一个动作中,即被分类正在被验证。
事实上,下面的两个图表显示了一条交易数据的详细信息,其中txid作为索引,如上面的1,2,...,8,并且那里有' sa交易比单个txid多得多。
在Merkle树中,检查事务ID(txid)以将传入事务放置在Merkle树底部的正确位置,并将Merkle路径返回到SPV以检查内容。
服务器返回Merkle路径比检查非常事务以减少工作负载更容易。因此,整个过程就结束了。