Merkle Tree如何验证交易平台储备金?|Tokenview

FTX的倒闭再次对中心化机构的受信任程度造成致命一击。11 月 9 日,Binance 创始人 CZ 发文说所有交易平台都应该采用Merkle Tree证明资金储备情况,并且Binance也将开始进行。紧接着部分交易平台也宣布采用Merkle Tree方式来提高平台资金透明度。对于普通用户来讲,对Merkle Tree的概念可能知之甚少。那么Merkle Tree究竟是什么,以及为什么它可以用来验证中心化机构是否有100%的储备金,Tokenview就给大家科普一下。

Merkle tree(又称默克尔树)是区块链技术的基本组成部分。Merkle tree是一种结构,允许对大量数据中的内容进行高效和安全的验证。这种结构有助于验证数据的一致性。比特币和以太坊都使用Merkle tree。

MerkleTree工作原理

我们以比特币中的Merkle tree为例,解释Merkle trees是如何工作的?

Merkle tree是一种二叉树,由一组节点组成。树底部有大量叶节点:在一个区块中,每一笔交易数据,进行哈希运算后,得到的哈希值就是叶节点;一组中间节点:其中每个节点都是其两个子节点配对后再次进行哈希计算,得到的哈希值;最后是一个根节点:也是由它的两个子节点的哈希值形成的,代表树的“顶部”。(Merkle tree需要偶数个叶节点。如果交易的数量是奇数,最后一个哈希将重复一次,以创建偶数个叶节点。)

如图所示,一个区块中包含的A、B、C和D四个交易。每一个交易都经过哈希计算,生成哈希A、B、C和D,存储在每个叶节点中。之后,通过哈希A和哈希B将叶节点对汇总到父节点中,得到哈希AB。同样,哈希C和哈希D,得到哈希CD。然后再次将这两个哈希(哈希AB和哈希CD)经过哈希计算生成根哈希(Merkle根)。
在这里插入图片描述

Merkle trees的目的是允许区块中的数据零碎地传递:一个节点只能从一个源下载区块头,从另一个源下载与他们相关的树的一小部分,并且仍然可以确保所有数据都是正确的。这样做的原因是哈希向上传播:如果恶意用户试图将虚假交易交换到 Merkle 树的底部,这种变化将导致上面的节点发生变化,然后上面节点发生变化会最终改变树的根,从而改变了区块的哈希值,导致协议将其注册为一个完全不同的块(几乎可以肯定是无效的工作量证明)。

在这里插入图片描述

Merkle tree将数据的验证与数据本身分离开来,可以显著减少受信任权威为验证目的而必须维护的数据量。
Merkle tree有三个主要好处:

  1. 它们提供了一种方法来证明数据的完整性和有效性。
  2. 它们需要很少的内存或磁盘空间,因为证明的计算简单且快速。
    3.它们的证明和管理只需要少量的信息在网络之间传输。

Merkle tree储备金证明

FTX的倒闭再次对中心化机构的信任产生致命一击。这也暴露出用户和中心化机构之间信息不对称的严重问题。用户资产究竟去哪了,是否被挪用,以及如何验证交易平台的资金储备。现有的储备证明是由受信任的第三方出具审计报告,证明中心化机构的储备证明与用户资产的负债证明相一致。就拿此次FTX破产来讲(挪用储户资金导致资不抵债),其实用户都不清楚自己存入交易平台的钱是否被挪用。最直接的办法就是交易平台直接公开储户资产信息,但这又会造成隐私泄露。

更改区块中的任意交易都会完全改变Merkle tree根节点的哈希值,以及Merkle tree将数据的验证与数据本身分离开来,便可以用很小的成本就可以验证数据完整性。这也就是为什么Merkle tree可以用来验证交易平台储备金。

作为一个普通用户,要验证当前交易平台的储备金是否有变动过,就可以参照Merkle tree原理,将每个账户都看做一个节点,账户的金额相当于节点数据。用户可以将自己的账户进行一次哈希计算,找到自己的节点位置以及相邻节点位置。紧接着再向上计算哈希值,最后得到一个根哈希。将自己算出来的根哈希和交易平台公布的链上数据进行对比,如果一致就表明储备金是正确的。也就证明该平台安全运行。

用Merkle Tree验证CEX储备金的真实性,是确保信息透明的一种方式。但这种方法并非没有缺点,如,这在一定程度上会暴露CEX和用户的资产隐私,为黑客提供了安全漏洞;如果要储存所有账户节点哈希,就对存储空间产生极大的要求。但是,从当前的行业现状来看,采用Merkle Tree证明资金储备情况似乎已经是改善用户信任问题的不二之选。

参考文章:
https://ethereum.org/en/whitepaper/#merkle-trees
https://medium.com/hackernoon/merkle-trees-181cb4bc30b4

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值