作者: Eli Ben Sasson
翻译 & 校对: 周瑾 & 闵敏
在技术的辅助下,任何人都能独立验证一项密码货币业务是否能持续健康发展,再也不需要依赖于专业的审计师。
本文于 2018 年 9 月 19 日首次发表于 CoinCenter。
-rawpixel 发表于 Unsplash 的照片-
由于密码学货币交易所一直是黑客攻击的重灾区,业内领先的几家交易所不得不定期进行偿付能力审计,让客户和监管机构确信交易所处于盈利状态,或是拥有 “全额准备金” 。这一过程需要消耗大量的人力和财力,并且极易被滥用。本文介绍了一种可以更好地解决偿付能力审计以及其他财务报表问题的方法,这需要利用区块链以及 计算完整性零知识证明技术 。
Mt. Gox 被黑及其后果
Mt. Gox 曾是当时最大的比特币交易所,经手 70% 以上的比特币交易。然而,在 2014 年的第一季度,有关其偿付能力的谣言开始广为流传,到了 2014 年第二季度,该交易所突然关闭并宣布破产,之前的谣言都得到了证实。为什么?因为他们丢了 85 万枚比特币。晴天霹雳。按今天的价格算,这些比特币价值 58 亿美元。到底是员工监守自盗、还是遭遇外部黑客攻击,还是二者兼而有之,迄今为止还都是未解之谜,但有一点很明确,就是在长达几个月的时间里,交易所的资金慢慢流向了外部账户地址,而客户一直被蒙在鼓里。
这么大一笔钱是如何神不知鬼不觉地被偷走的?面对快速增长的比特币交易量和金额, Mt. Gox 显然措手不及,没有充分的时间强化其操作安全性。一部分原因在于公有链是不可逆的——一旦交易在链上发生,除非对整个系统造成巨大的破坏,否则几乎不可能篡改链上的交易。但是,如果当时存在某种方法可以让客户有能力监控交易所的偿付能力,他们就能更早地发现问题,从而避免这场危机。
由于这一事件的影响(当时还有一些小型交易所也遭到了黑客攻击),业内领先的几家加密货币交易所开始定期邀请外部审计师代表监管机构以及客户进行 偿付能力审计 。在审计过程中,交易所会向审计师证明其(通过密钥)控制的资产多于对客户的负债。审计师必须准备一份资产负债表,将该交易所的偿付能力下限发表在某个公共论坛上,并宣布:“截至今日,该交易所处于盈利状态。”(请注意,偿付能力审计检查的是交易所是否具有 全额准备金 ,但我们接下来要讨论的方法可以根据对商业银行的要求用于部分准备金 偿付能力审计。)
人工进行偿付能力审计的缺点
这种偿付能力审计有一些缺陷。一方面,它需要消耗人力和财力资源;另一方面,它不具备操作安全性,由于价值数十亿美元的密码学资产是通过密钥控制的,关于密钥的使用信息将被披露给外部人员(审计师);最令人担忧的是,受到攻击的交易所可以从资产负债表中删除一部分对客户的负债,以此掩盖事实。毕竟,审计师很难知道是否每一笔负债都登记在账簿上,因此他们只能选择相信交易所。
偿付能力审计的注意事项
基于上述问题,偿付能力审计应该达到什么样的目标?首先,应当避免泄漏交易所的商业机密。其次,应该让每一位客户都能验证交易所是否将对他们的负债记入了资产负债表中,以供偿付能力审计,从而提高透明度并强化公共监督。第三,这一过程不应交由任何外部审计师执行,从而减少开支并降低遭受攻击的可能性;换句话说,我们需要一种由加密货币交易所独立执行的 自审计 流程。最后,即使没有外部人员参与审计,也要能防止流氓交易所做假帐。等等,第一个目标中提到的隐私性不是和第二个目标中提到的透明度相矛盾吗?第三个目标中提到的自审计不也和第四个目标提到的健全性相矛盾吗?是否可以同时实现这些目标?令人惊讶的是,答案是肯定的;我们接下来将作出解释。
加密信封、区块链以及计算完整性
不考虑隐私问题的话,监管机构可以简单粗暴地要求交易所对外披露详细的资产负债表。这样就可以利用公共监督防止交易所通过漏记负债来做假帐,因为那些被漏记负债的客户会引起轰动。可惜的是,出于对隐私的保护,这种简单的方案行不通。
解决该问题的第二种尝试是,由监管机构来要求交易所向客户私下展示详细的资产负债表,如,向每个客户发送月度报告。即使不考虑私人商业信息泄露的问题,资不抵债的流氓交易所也有办法骗过客户,即,每位客户看到的资产负债表里都记入了自己的负债,但是删去了其他客户的负债,以此营造出一种盈利的假象。如果要防止这一行为,需要客户公开他们的(保密的)财务数据,这显然是行不通的。因此,我们的下一个方案就是,要求交易所为每份(月度)资产负债表发布一个唯一的公共 “锚点”,然后针对每个客户提供个性化信息。这样一来,客户就可以利用这个公共锚点来验证他所收到的信息。此外,这个锚点会将交易所与资产负债表 “绑定” 起来,不会损害该交易所的财务隐私。
确实,交易所可以获取所有隐私数据——密钥、资产、客户账户和对客户的负债,并将它们放进一个密封的小信封中,然后放到公司无法篡改的地方。这个信封就是上文所说的 “锚点”,用于获取资产负债表。现在,交易所将运用新的密码学工具(下文会解释)来模拟一个可信的审计员,赋予其访问信封内容的权限。这些工具的神奇之处在于,诚实的交易所可以使用它们来为每个客户提供可信证明,同时 不会 泄露信封里的内容。流氓交易所则很难利用它们来为不符合信封中信息的资产负债表创建可信证明。这种 “自审计” 能力是区块链 和 零知识证明 的强大组合所带来的产物。
用作加密信封的承诺方案
源自加密信封概念的数字化模拟方案已经被计算机安全地使用了数十年。密码学家称其为密码学承诺(cryptographic commitments)。无论原始数据大小如何,转化成加密信封(承诺)之后通常都会变得非常小,仅有 32 个字符。
幸好有了去中心化的区块链技术,我们可以把交易所的加密信封放到防篡改的地方了。由中本聪开创的区块链技术的核心是,创建一个不受任何一方控制且不可逆的公共账本。这种不可逆性是通过强大的计算要求和经济激励机制实现的。确实,比特币区块链已经成为了一种值得信赖的时间戳服务。因此,交易所在将实行个性化偿付能力审计所必需的客户数据放入加密信封(承诺)之后,就可以通过一种安全有效的方式来保存这些信封。唯一不足之处是,如何向监管机构以及公众证明,信封中的数据是有效的,并且不会透露其他任何可能侵犯客户隐私的信息。这正是 零知识证明 发挥作用的地方。
作为可信审计师的零知识证明
打一个极端的比方,零知识 (ZK) 证明就好比杂货店收据。每个证明都是一串字符(像收据一样),用来保证 计算完整性 ,也就是说,这个证明会让我们(验证者)相信最终的计算结果是正确的。杂货店收据会让我们相信我们所需支付的总金额是对的,而零知识证明(其增强版本)强大到足以处理任何计算,并让我们相信计算结果是对的。此外,零知识证明保障了隐私性,这就意味着该证明(字符串)不会泄漏输入值。它与杂货店收据的相似之处是:1. 只显示总金额;2. 不显示单个物品的价格和数量;3. 使客户相信其应付款金额是对的。最后,一些零知识证明非常有效:通过智能手机检验它们只需要不到一秒,即使计算过程冗长且繁琐;可以将零知识证明看作一张列有数百万物品的收据,只需要眨眼的时间就能核对完。
现在总结一下我们为偿付能力审计问题设计的方案,可以实现上文提到的四大目标(隐私性、透明性、自审计性、健全性)。它包括三个步骤。前两步很容易通过现有技术实现;而第三步则使用正兴起的零知识证明来实现:
- 交易所将本应提供给可信审计师的所有数据放入加密信封中,以证明其对每个客户都具有偿付能力。这些数据包含该交易所控制下的所有密钥、所有资产以及对客户的负债。再强调一遍,加密信封非常简短(只有 32 个字符),而且不会向查看它的人透露任何信息。
- 交易所将该加密信封(全部 32 个字符)发布到区块链上,如比特币。
- 交易所会读取加密信封里的内容,为每位客户都生成一个专属的偿付能力零知识证明(即 “收据 ”)。这一计算得到两个公共的输出(同时所有输入都被 “删除” 以保护隐私),分别是:1. 表示交易所处于盈利还是亏损状态的一比特数据,以及 2. 特定客户的账户余额。
该证明具有隐私保护性,这意味着客户对加密信封中的信息一无所知(除了他们自己的账户信息)。零知识证明的神奇之处在于,它们是用数学语言表示的 “证明”:真命题都能被证明,能被证明的都是真命题。因此,处于亏损状态的交易所无法欺骗客户说它自己是盈利的,也不能通过改变信封中客户的账户信息来欺骗客户。交易所有且只有一种解决方案:证明其提供的信息是正确的,并进行个性化的偿付能力审计。
零知识证明技术的现状
零知识证明于 20 世纪 80 年代中叶提出。在过去的几年中,这一技术得到了突飞猛进的发展,已经应用于商业领域。如今有三大优秀的零知识证明系统:ZK-SNARK(由 Zcash 等密码学货币使用)、ZK-STARK(由 StarkWare 商业化,并由以太坊基金会赞助)和 Bulletproofs(正由 Monero 币开发中)。
总结
上述实现个性化偿付能力审计的免信任型三步流程可以应用于任何其他类型的财务报表(包括收入、股权以及现金流量表)。自从人类开始记录以来,财务报表已经存在了上千年了,可以追溯到文字记录诞生之时。记账技术已经从 4000 年前的黏土片发展到纸片,再到使用数字签名的文件。至今为止,如果要确保其正确性,要么选择信任财务报表的发布者,要么信任为其提供担保的外部(人类)审计员。将区块链技术、承诺方案以及最重要的零知识证明结合起来,可能会在将来真正实现免信任,并从公众的立场出发,由公众来进行透明、民主的审核。延伸阅读
- 隐私保护性型比特币交易所偿付证明 [Dagher, Bunz, Bonneau, Clark, Boneh; ACM CCS 2015]
- zkLedger: 基于隐私保护的分布式账本审计 [Narula, Vasquez, Virza; NSDI 2018]
本文来自,仅作分享,存在异议请联系平台删除。本文观点不代表刺猬财经 - 刺猬区块链资讯站立场。