欧易推出储备金证明功能,能否提升透明度?
储备金证明是用来证明链上储备金是否足以覆盖用户在交易平台账面所有资产的审计方法,它涉及两个关键数据:交易平台储备和用户资产余额。当储备/余额(即储备金率)大于等于100%时,就证明平台的储备充足,用户的资产也足够安全。
要验证用户资产,欧易使用了“默克尔树”这一数据架构。在默克尔树中,用户资产信息被匿名快照保存到叶节点内,所有叶节点信息向上级节点层层传递,汇总到根节点,也就完成了对所有用户资产的记录。只要每个用户的资产信息被包括在叶节点内,即可证明他们的资产被包括在欧易的总用户资产中。如果用户资产发生变化,它也将反映在根节点数据中。而要验证平台储备,欧易披露了部分持币地址,以向公众公开平台钱包内的资产情况。
储备金证明能够提高交易平台的透明度,但这其中仍然存在两个问题。第一,是否所有用户的资产都被默克尔树记录;第二,交易平台公开的地址是否归交易平台所有。针对这两个问题,欧易推出了一套开源验证工具,任何用户都可以自行验证。
让我们先来解决第一个问题。登录欧易账户,进入“审计”页面并点击“查看详情”,就可以看到本次审计中自己资产的数据。在“查看详情”里,我们可以获得用于手动验证资产是否包括在默克尔树中的数据。
将数据复制到文本编辑器并生成一个 .json 文件。这里包含了默克尔树中不同层级和节点上的数据。
使用欧易提供的 MerkleValidator 对这个文件进行验证,我们发现工具上出现了“Merkle tree path validation passed”的字样,这代表数据通过验证,我的资产已包含在默克尔树快照中。同时,验证结果也显示了默克尔树根节点所记录的欧易用户的 $BTC、$ETH 和 $USDT 余额。这和欧易官方网站所展示的用户资产是一致的。
而当我们对文件中的数据进行了修改,
再次验证时,MerkleValidator 上显示出了“Merkle tree path validation failed”,说明验证失败。
MerkleValidator 向所有用户开放,而如果每一位用户都能够验证自己的资产被包含在默克尔树中,那么就可以证明所有用户的资产都被默克尔树记录。
至于验证交易平台公开的地址是否归交易平台所有,欧易在公布持币地址的币种、余额和签名时,也用对应的私钥签名一条消息 “I am an OKX address”。我们可以在欧易网站上下载钱包地址信息,并使用 VerifyAddress 工具进行验证。下方出现的“Verify address signature end, all address passed”字样证明已通过验证,这些地址的所有权属于欧易。
验证结果还显示出了各钱包地址上 $BTC、$ETH 和 $USDT 的总和,这同样与欧易网站上展示出的钱包资产相吻合。
通过使用欧易新的储备金证明功能,我们——以及任何用户——都可以验证上文所提出的两个问题,这提供了比单纯的审计报告更好的透明度。同时,这也符合加密世界所倡导的“Don't trust,verify”。
OKX
交易所