月亮链 月亮链
Ctrl+D收藏月亮链
首页 > 火币下载 > 正文

ERK:中心化交易所如何用Merkle Tree实现资产储备证明_TREE

作者:

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

最近,在cz几条推特的轰炸之下,全球第二大交易所FTX因为挪用用户资产,被挤兑后迅速宣告破产,由此导致了用户对CEX资产储备不透明的强烈不信任感。而cz提出CEX要做MerkleTree的资产证明,并计划几周内发布,其他交易所纷纷表示跟进。

那么,什么是MerkleTree,中心化交易所应如何通过MerkleTree实现自身资产储备≥用户资产?本文将从技术角度讨论并给出完整的证明方案与代码实现。

我们以ETH为例,当我们要实现资产证明时,我们要证明的是链上资产ETH总额≥交易所用户ETH资产总额。因此,证明分为链上与链下两部分。

链上证明

链上证明比较简单,因为交易所通常会将所有用户充值汇总到几个地址,列出这几个地址在链上自查即可。为证明这些地址是交易所拥有,可用私钥签名一条简单的消息即可,签名只需要发布一次。

Paradigm研究员Samczsun等人成立Web3紧急安全响应系统:8月7日消息,Paradigm研究员Samczsun在ETHSecurity社区发文称,为了防止用户在寻求安全帮助时无意间通知恶意行为者,他与一小群受信任的白帽黑客、审计员等合作开发一个原型Web3 911系统。

如果用户有紧急情况需要帮助或联系安全人员,可在Telegram通过@seal_911_bot向其发送消息。[2023/8/7 21:29:53]

链下证明

链下证明就比较复杂,需要用到MerkleTree。

MerkleTree是一种二叉树,其最底层叶子节点存储数据以及数据的哈希,而每上一层节点则存储两个子节点的哈希,最后由根节点的哈希保证这个MerkleTree的任何节点数据的完整性。因为修改任何一个叶子节点的数据都会导致根节点的哈希变化,因此,使用MerkleTree可以保证,只要发布了Root,树的所有子节点均不可修改:

俄罗斯或将于八月开始测试CBDC:金色财经报道,俄罗斯有望在几周内开始测试其数字卢布,中央银行数字货币(CBDC)。一项赋予中央银行数字货币法律权力的法案于周三获得俄罗斯最高立法机构联邦委员会的通过,该法案仍需总统普京的签署才能生效。如果法案获得普京的签署,数字卢布的测试将从8月1日开始。如果法案获得批准,俄罗斯将成为全球范围内迄今为止最大的CBDC采用国之一。[2023/7/20 11:06:27]

美国当局引渡通过SIM卡互换盗窃加密货币的英国公民:金色财经报道,美国纽约南区检察官办公室宣布,2020年推特黑客事件背后的英国国民Joseph O’Connor已被引渡到美国,他已对多项网络犯罪罪行认罪。SDNY在一份声明中称,Joseph O’Connor将其复杂的技术能力用于恶意目的,进行复杂的SIM卡互换攻击以窃取大量加密货币,黑掉推特,进行计算机入侵以接管社交媒体账户,甚至对两名受害者进行网络跟踪,包括一名未成年受害者。(Coindesk)[2023/5/10 14:54:00]

假设交易所全部5个用户持有若干不等的ETH,按用户ID可表示如下:

FTX已聘请风险咨询公司Kroll作为其索赔代理人:11月18日消息,FTX Group现已聘请美国公司调查和风险咨询公司Kroll作为其索赔代理人,所有向美国破产法院提交的官方文件均可在cases.ra.kroll.com/FTX/查询。[2022/11/18 13:20:08]

可将用户ID视为索引,构造MerkleTree并计算MerkleRoot:

Web3自动化解决方案Doxy Chain完成220万欧元种子轮融资,Level2 Ventures领投:9月6日消息,Web3 自动化解决方案 DoxyChain 完成220万欧元种子轮融资,Level2 Ventures领投,CVVC、Polish Satus Starter 和 Müller Medien 参投。

据悉,DoxyChain是一个为传统文档管理向Web 3.0世界的过渡构建解决方案。

目前该公司推出了两项新的SaaS功能,允许构建一个模块化的基础架构,让客户能够在此基础上开发自己定制的高级工作流程和用例。 10 月,该公司将推出NFT平台DoxyCert和数据交易平台DoxyConnect。[2022/9/6 13:11:00]

交易所发布MerkleRoot后,可确保所有子节点——即用户ID对应的子节点余额均完全确定下来,每个用户均可根据自己的用户ID查询余额是否相符,只要有任何一个用户发现自己的余额在指定索引的位置不符,即可判断交易所造假。

为了证明交易所的用户资产储备总额,交易所也不得不公开所有子节点的索引与余额,这样任何第三方才能计算出用户资产总额,并根据交易所公布的MerkleRoot确认这些子节点数据没有被篡改。

然而,这样一来,每个用户的持币余额就完全公开了,可以很容易地对持币大户进行跟踪。因此,我们需要一种机制将一个用户的余额拆成若干份,并存储在多个不同的索引地址。为了确保索引不会冲突,可使用SparseMerkleTree,用以太坊地址作为索引。对SparseMerkleTree不熟悉的同学可以参考针对以太坊实现的一种SparseMerkleTree。

例如,对于用户45678持有的45.67余额,我们可以分为3份:

14.727835427.8394771023.10268748然后,根据ID计算出确定的若干地址索引:

6f1cc8a44919eb1c6576d6819b37ac9ab288ecb59759bf1d54e5f25f135d7674dea3bef0d24fb15346daefba020f7e5bfa957b13aeaa4b72034a90fd这样我们就可以把这个用户的余额分别存放在3个子节点上。把所有用户都处理一遍,假设结果如下:

我们就可以得到一个地址索引=余额的列表。对地址进行排序,以便让同一个用户的多个地址不再连续列出,得到地址/余额的CSV如下:

交易所计算总额683.91以及MerkleRoot值0x61cdf659...c41c40fe,公开CSV文件及MerkleRoot后,任何第三方可校验树的有效性,并获得用户资产总额,再与链上对比。对于每一个用户来说,需要根据自己的ID,快照时产生的余额,以及交易所给出的用于生成确定性地址的随机数,可自行验证对应的若干节点余额总和与自己的资产额度完全相等。

这种方式既能保证每个用户可验证自己的资产,又能保证其他人无法推算某个用户的资产,其缺点是计算较为繁琐,需要相应的第三方工具帮助用户校验。

小结

本文给出了一种交易所用户资产的额度证明,并保证不泄漏任何用户的额度。详细代码可参考GitHub源码:

https://github.com/michaelliao/eth-smt/blob/master/sample/src/main/java/com/itranswarp/sample/Proof.java

责任编辑:Kate

标签:ERKMERTREEETRTERK币HAMMERtree币合约地址WeTrust

火币下载热门资讯
WEB:你的Web3域名,价值究竟何在?_ENS

本文的结构如下,对域名已有了解的读者可以直接跳至自己喜欢的章节进行阅读本文的第一章,本文将具体介绍Web3域名当下和潜在的具体应用场景;在第二章,本文将对当前数量繁多的域名类项目做一个分类梳理.

1900/1/1 0:00:00
RAGE:Outlier Ventures:探讨 VE 代币模型的 5 种改进方案_GENS

我们在《ve代币模型的优缺点及改进思路》一文介绍了当前投票托管代币设计的现状,涵盖了代币设计的最初目标和目前缺陷,其中包括累积所有基础veToken的元治理协议.

1900/1/1 0:00:00
META:MetaOracle:第一个支持多链多代币的动态赔率预测市场平台_MetaniaGames

预测市场所谓预测市场,预测做动词市场做主语——一般指将信息或对未来的预判当作标的进行押注和交易。市场化预测特别是动态赔率市场被广泛认为在特定情况下能成为最优秀的信息聚合处理器.

1900/1/1 0:00:00
NFT:「 投资人必读 」代币的增值 — 代币的回购、销毁、权益质押、激励等_NFTFundArt

随着基础业务增长所带来的回报逐步兑现,如何让代币资产逐渐增值,从而使其持有人从相关业务中直接受益?这些代币增值的机制有什么,分别有哪些优缺点?我们在这篇文章中将回答所有这些问题.

1900/1/1 0:00:00
以太坊:ZK-EVMs:扩展以太坊区块链_ROL

以太坊的合并已经完成了一段时间,以太坊区块链社区正专注于网络扩容的工作,以实现更便宜的交易费用、更快的交易,以及更多的吞吐量.

1900/1/1 0:00:00
NAN:FTX破产后CZ首次AMA十大要点总结_Binance Crunch

在?11?月?14?日晚币安??AMASpace中,Binance?创始人?赵长鹏回答了一些有关币安、FTX??和加密货币行业的问题,短短80分钟时间里吸引了超过4万名听众.

1900/1/1 0:00:00