目前来看,隐私交易似乎是今年可以贯穿全年的话题,从年初的 Grin 和 Beam,到以太坊的隐私交易,再到这两天突然大涨的 Origo。
Grin 所代表的 Mimblewimble(MW)隐私协议在年初就吸引了币圈大量目光。除了隐私的特点,团队的匿名、无 ICO 融资、无预挖等等这些完全不同于行业其他项目的特点,让 Grin 成了今年最早的明星项目。
MW 的隐私处理比较好理解。正常的一笔交易,一定会出现三个信息,发送方、交易金额、接收方。但是在用 MW 协议的时候,可以不显示在三个信息,达到交易完全隐私。
虽然 MW 的实现方式非常简单且合理,但对于交易双方来说,并不是非常方便。
Grin 交易有两种方式,IP 交易或者转账文件交易,而不管哪种,交易双方最好都要在线。一方不在线的话,交易有可能就不能完成。
而且,只有在确认的区块中,交易是完全隐私的,在那些未确认的区块中,交易信息一样是公开的。任何人都可以在未确认的区块中找到交易双方的信息。
所以 MW 并没有那么方便。
Grin 的热度过后,以太坊开始发力自己的隐私交易。一个名为 Hopper 的 DApp 已经实现了以太坊的隐私转账。
不管任何时候,用户都可以在 Hopper 的智能合约上存入 1 ETH,然后通过另一个账户把这 1 ETH 取出来。这种方法是基于零知识证明,用户其实把 ETH 存进了一个混合账户中,零知识证明并不会显示 ETH 到底是哪个账户存进来的。
所有的 ETH 都在一个混合账户中,只有你才能分辨出哪个 ETH 是你存的,也只有你自己才能取出来。所以,利用这种方法,用户可以自己对自己的资金进行匿名转移,或者为别人的地址匿名转账。
我们用 Alice 给 Bob 转账 1 ETH 举个例子。
首先,Alice 先向中继器发送一个承诺,中继器会将这个承诺发到 Hopper 的智能合约。这个承诺是一个 Bob 地址的秘密数值的哈希值。随后 Alice 要为这个承诺支付 1ETH 到智能合约中。
等 Alice 想要用 Bob 的地址取出这 1ETH,需要生成一个零知识证明,中继器将证明发送到智能合约中,合约验证后就可以取出 1ETH,不过会有些 gas 费用。
但是,Hopper 的隐私交易有一个很严重的问题,就是转账金额有很严重的限制,只有 1 个 ETH。超过这个金额,或者大家任意选择金额放进智能合约内的话,就完全没有匿名性了。
而且,Hopper 一定需要大量的用户才能体现出隐私性。要是只有一两个用户,根本无法保证匿名。
7 月 17 日,以太坊创始人 V 神在 twitter 上转发了一篇介绍中继注册燃烧机制的文章,同时也评论道,「这是以太坊实现隐私转账的关键」。
众所周知,以太坊上每一笔交易在广播过程中要支付一定比例的 gas 费用。谁支付了 gas 费用,就知道这笔交易是谁支付的了。
中继注册燃烧机制,是在以太坊 Layer2 上建立一套机制,来销毁交易的 gas 费用,也就是说,不让其他人看到谁支付的 gas 费用,这样实现隐私交易。
以太坊上的匿名交易不止于此。8 月初,Tornado.Cash 推出了一个基于零知识证明的转账工具,类似于混币器,用户可以把 ETH 或 DAI 按不同标准化规格汇入一个合约地址,从而完成匿名交易。
这些确实是解决问题的办法之一,但准确的说,这些方案都没有准确解决 Gas 费用暴露的问题。而 Origo 的隐私机制,考虑到了 Gas 费用隐匿这一点。
Origo 使用的依然是零知识证明,因为零知识证明在不知道发送方、接收方和交易金额这些细节的情况下,仍然能验证交易是否有效。只不过,Origo 为用户提供了私人地址,专门进行隐私交易。区块律动 BlockBeats 在本地体验了一下 Origo 的隐私交易,同时也与 Origo 的联合创始人吴昕聊了聊,看看 Origo 的隐私交易究竟如何实现。
首先,用户需要创建一个以太坊 0x 开头的地址,和一个以 ogo 开头的私人地址。随后,用户可以把以太坊地址上的资产,转账进 ogo 的私人地址,这是链上资产隐私化的第一步。
「这一步其实是 ogo 地址之间匿名转账的特例。」吴昕表示。在 Origo 的设计中,最重要的是隐私地址之间的互相转账,而公开地址与私人地址之间只是隐私地址之间转账的特例。但对于用户来说,这是资产可以隐私化的关键一步。
资产转移进 ogo 私人地址后,用户就可以与其他 ogo 地址交易。在此期间,交易完全匿名,从浏览器上看不交易双方和交易金额,但有个问题是,交易会产生 gas 费用,对此 Origo 设计了特殊的机制。
在转账的时候,交易发送方要先预留一部分金额充当 gas 费用,其他人只能看到这部分金额是多少,看不到具体的转账金额。
为了更好的解释,吴昕举了个例子,以太坊上的转账,相当于 A 手里拿着一张 100 元直接给 B,其中 2 元是交易费用,B 拿到手里是 98 元。
而 OGO 的转账,是 A 手里拿着一个信封给 B,在信封上面放了 2 元算作交易费用,B 拿到手里是一个信封。除了他俩,没有人知道信封里面有多少钱。这种方法,就算其他人可以看到 gas 费用,也不会知道交易的具体信息。
其实 Origo 不只有一种方法来防止 gas 费用泄露信息,吴昕还提到,曾经有一种方法是把 gas 费用从隐私地址向公开地址转账,相当于公开地址是一个代理人。但是团队后来发现这种方式长时间使用可能仍会泄露交易信息,就被排除了。
2019 上半年以来,隐私交易的热点从年初火到了现在,每个项目都有自己独特的匿名方式。在比较了这些项目后,Origo 的匿名方式似乎要比其他方式更有效。
Origo 的隐私交易不需要双方同时在线,也不会因为区块没有确认导致交易信息泄露;在隐私交易金额上没有限制;而且也从根本上解决了 gas 费用暴露交易发送方的问题。这样看来,Origo 比 Grin、Hopper,比 V 神称赞的中继燃烧机制还要合理,更加实用。