关于100%资产准备金

人民币资产

人民币资产的偿付能力验证,在技术上是可以做到的,譬如,公开一个银行账户,提供一个专用的查询密码,但这样做在目前行业的现状下是有风险的,主要风险有:

  • 被恶意举报,有可能造成该银行账户被冻结;
  • 被无意流入的“问题资金”牵连,导致银行账户被执法冻结;
  • 其他不明原因导致的银行账户冻结。

由于存在以上可能性,一旦账户被全部冻结,将对交易平台及用户会造成很大的困扰,为了广大用户的资金安全,云币网采取特殊的安全策略管理用户的人民币资金,因此无法采用可验证的方式公布人民币资产,只能每天公布系统统计的人民币资产数据。

区块链资产

特别说明:区块链资产的数量验证,需要该区块链资产本身的区块链支持验证功能,以下所有的说明都是以比特币来举例,但对区块链技术支持验证的资产品种同样有效。

关于资产证明

资产证明是由交易所向用户提供的,表明自己持有一定数额区块链资产的证据。也有人把资产证明称做 100% 准备金证明 Proof of Reserve,或者偿付力证明 Proof of Solvency。它意味着我们将保管用户在云币的所有资产,而不能将其中的任何一部分用于任何事情,如放贷等。举例说明,就是用户存 100 个比特币,平台必须保留 100 个比特币;10% 准备金率就是存 100 个比特币,平台可以只保留 10 个比特币,另外的 90 个比特币移作他用。

资产证明的作用

如果交易所能够证明自己始终持有足够数额的区块链资产,比如大于等于全体用户存款总额的资产,用户便有理由相信自己在任何时候都能顺利的取回自己存放在交易所的区块链资产。

资产证明应该包括什么?

完备的资产证明应该提供两个数字,并且证明这两个数字真实有效: a. 交易所当前 可支配的资金,这部分数据将是用户可验证的数据; b. 所有用户存入交易所的 资金总和,云币网在首页和微博上每天公布的数据即是这个数据。 当 a 大于等于 b (a/b >= 100%) 时,即使交易所全部用户同时提现,交易所也有足够的资金满足。但由于云币网采用冷热钱包隔离制度,我们提供的地址为冷钱包地址,其中资产数量会略少于公布的 可支配资金,不足的部分为热钱包地址,为了避免攻击,热钱包地址会不定期更换,所以这部分资金不做公开。

如何证明交易所可支配资金数额?

对于比特币资产,交易所将公布钱包地址,任何人都能够通过查询工具得知该地址中当前的比特币数量,这个数量便是交易所拥有的比特币资金总额。接下来交易所只需再公开一条签名消息 Sign Message,就可以证明自己是上述钱包地址的拥有者,这样便完成了可支配比特币资金的证明。

如何证明用户存入交易所的资金总额?

最简单的方法是公开所有用户账户,将所有账户资金数额相加得到用户存款总额。由于每个用户都能够确认自己的账户被包含在交易所公布的全体用户数据中,因此可以确定交易所没有漏报用户数据去造假。

这种方法的缺点也很明显:用户隐私被公开,所以很少被真正采用。目前比特币社区获得最广泛关注的是另一种叫做 Merkle Approach 的方案,也是云币网采用的方案。

由于有足够多的用户会进行验证,用户便有理由相信,交易所存款总额数据包含了所有用户的账户,也就是说交易所存款总额确实是所有用户存款之和。

更详细的说明以及证明,可参考 https://iwilcox.me.uk/2014/proving-bitcoin-reserves

现在有哪些验证工具?

  1. Proof of Liability 在线工具 http://olalonde.github.io/proof-of-liabilities 这是Merkle Approach标L提供的一个在线验证工具,用户在提交数据后只要点击按钮即可得到验证结果。该项目源代码地址:https://github.com/olalonde/proof-of-liabilities

  2. Peatio/liability-proof https://github.com/peatio/liability-proof 这是云币开源团队用 Ruby 实现的一个工具,可在命令行环境下使用。

  3. PoLtree https://github.com/zw/PoLtree/ Merkle Approach标准(草案)的另一参与制定者 Zac 提供的 Clojure 实现。

以上三种验证工具都可验证符合此格式的数据:https://github.com/olalonde/proof-of-liabilities#serialized-data-formats-work-in-progress--draft