隐私是特性不是产品:这对匿名币意味着什么?

前言:隐私是加密世界被提及频次最高的方面之一。现在的问题是:不在于隐私是不是有需求,而在于如何在一个透明的公链上实现隐私。为了实现隐私,需要一种专属的加密货币?还是说隐私是公链的一种特性,无须另起炉灶做一条公链?不同的人看法会大相径庭,本文的看法是隐私只是一种特性,不是产品。专注于隐私的加密货币将有可能逐渐失去竞争力。大家是怎么看的?需要注意的是,本文并不是投资建议,只代表作者对隐私和加密货币演化方向的看法,并不一定正确。请大家做好自己的研究和决策。本文作者是“Ryan Gentry 和Matt Shapiro”,由“蓝狐笔记”社群的“Colis”翻译。
隐私是价值加密货币的一种特性,而不是其本身提供的产品。用户不应该为了实现财务隐私而利用价值较少和安全较低的加密货币,这会导致承担资产负债表风险。本文试图表明,像比特币和以太坊这样的通用平台已经为大多数用户提供了足够的隐私保证,他们不再需要利基的专注隐私的区块链。
抗审查是《加密世界的100万亿美元之路》主题的三大核心信条之一,如果没有隐私,它就无从说起。因此,隐私必须是开放金融、全球无国界货币以及Web3的关键组成部分。然而,在迄今为止的加密货币生态体系中,与隐私相关的开发大多数都发生在专注于隐私的区块链上。比特币和以太坊社区优先考虑解决扩展性和用户体验问题。
有些开发者将财务隐私特性视为最高优先级,他们构建原生支持隐私的协议。其中的例子包括了Zcash、Monero,还有新入局的Grin、Beam等。他们在功能和可用性上做了各种权衡,以保证隐私是他们的核心价值主张。但问题是,在单独链上以隐私为价值主张来构建的方向对吗?
加密货币投资者的一个共同论点是,专注于隐私的区块链应该累积价值,因为隐私在金融交易中具有重要性。我们认同隐私的重要性,但并不认为两者存在必然关系。我们期望网络参与者不需要因为选择原生隐私协议而承受资产负债表风险,而是期望最有价值的区块链根据不同的技术权衡获得胜利,其中用户和公司找到创新的解决方案,将隐私带入这些网络。
而且,正如我们所写的,layer-1资产通常应该被看作为货币,layer-1货币会产生明显的网络效应,因此,从长远看,只有少数的链会胜出。如果非原生隐私的链能为大多数人提供足够好的隐私,那么,原生隐私的链将可能没落。
在本文中,我们将讨论围绕隐私抑制功能是如何进行技术权衡的、使用专注于隐私的区块链和资产具有的内在资产负债表风险、将隐私带入受众更多的区块链的不同方法、什么是“足够隐私”、以及我们是如何考虑隐私相关的投资的。
完全隐私

有四种私人信息在加密货币交易中可能泄漏:发送者、接收者、金额、以及IP地址。如果这四种信息都能成功隐藏,不被第三方观察者发现,那么,交易就具有完全隐私。

隐私是特性不是产品:这对匿名币意味着什么?

正如表1所示,隐私有它的范围。在这个范围中,一端是不隐藏以上所有四种信息的交易,例如比特币和以太坊交易。另一端则是Zcash的Sapling交易,它可以隐藏上述四种信息(可以结合混淆IP的技术如Dandelion和Kovri)。Zcash的zk-SNARK 架构允许发送者将隐藏金额的代币发送给匿名的接收者,同时不会在区块链上留下任何可识别信息,也不会泄漏到网络上。理论上来说,它们是完全的隐私。
尽管Zcash已有近3年历史,但只有5%的ZEC使用SNARKs进行存储,在这5%中,还有一半是采用传统的SNARKs。大约95%的ZEC存储在透明的地址中,它们无法提供隐私。2019年中,尽管加密市场总体上有了反弹,而ZEC是个例外。

隐私是特性不是产品:这对匿名币意味着什么?

尽管有希望,但市场已经作出反映:Zcash的Sapling交易所提供的隐私并没有让ZEC更有价值。
有几个原因。
首先,加密货币的核心创新是这样的一种概念:无须第三方信任的程序执行、轻松可验证的稀缺性。由于来自各种文化和各行各业的人们都可以验证他们的代币,上述特性可以实现社会可扩展性,它是作为已知整体的确定部分。不幸的是,根据定义,完全隐私会妨碍完全的可审计性。
2018年3月,Zcash在其加密学中发现一个bug,该漏洞允许无限增发。正如Zcash基金会自己承认的那样,在不赞成Sprout地址之前,不可能知道是否有人已经利用了这一点。用户可以验证有多少代币发送到隐藏的池中,但无从知道这些代币是否被恶意行为者任意增发。完全隐私交易可以防止投资者验证Zcash是否如它被认为的那般稀缺。
其次,优化隐私导致Zcash付出沉重代价。每次创建一个完全的隐私交易,为了产生矿工可以用零知识证明验证的证明,发送者必须进行一系列确定的计算步骤。这些步骤在计算上是昂贵的,并且Sprout版本过于笨重,无法被广为采用。Zcash团队针对代币转移进行明确的优化,他们编程了Sapling版本,并避开任何额外的功能,例如以太坊的有状态的智能合约,或门罗的多重签名合约(尽管这些将来也许会有。)更高效的完全隐私交易导致Zcash失去了可编程性。
随着2016年和2017年肆意的牛市泡沫结束,今天的市场更偏好更少隐私、更多安全性、可编程性以及可证明稀缺的资产,例如比特币和以太坊。
尽管如此,看上去无国界货币的未来将是完全透明的。抗审查要求一定程度的财务隐私。那么,现在的问题是:怎么才算是足够的隐私?
“在人群中消失”的隐私
比特币和以太坊社区都非常努力以将原生隐私带入到它们的链中。它们没有进行“完全隐私”的优化,而是推动“在人群中消失”的隐私——这种策略由Tor网络推动并流行开来。
“在人群中消失”的隐私是指其交易符合一组规则,这使得观察者很难辨别交易的实际发送者、接收者以及特定交易金额。遵守这些规则的交易越多,人群越大,观察者就越难辨别这些交易。
与完全隐私交易相比,此策略通过为用户混淆带来安全,因为第三方观察者可以看到发生了交易,但无法清楚知道发送者、接收者以及交易金额。所有的声明充其量都是概率性的,在大多数情况下,发送者和接收者维持合理的可否认性。
比特币持有者则使用CoinJoins作为他们在“人群中消失”的工具。
CoinJoins于2013年由Greg Maxwell首次提出,其中的交易涉及到多方参与者,他们将其多个单输入和单输出的交易组合为单个多输入和多输出的交易。这打破了发送者和接收者之间的直接链接,并且如果所有的输出大小都相同,它就混淆了谁接收多少比特币。信任最小化的与CoinJoins协调的应用,如Wasabi钱包和Samourai钱包,近期备受欢迎。

隐私是特性不是产品:这对匿名币意味着什么?

同样,CoinJoins并非是完全隐私的技术,因为观察者可以分辨出哪些代币进出混币者中。但,这种类型的增长提供足够大的人群,以至于寻求隐私的用户实际上可以实现“在人群中消失”。Chainalysis是一家著名的区块链分析公司,它的客户包括了FBI、DEA以及IRS,他们也承认他们“无法追踪使用了混币服务的代币的轨迹”。
默认情况下,以太坊的底层相对于比特币有更少的隐私性,因为它使用了基于账户的模型,而不是基于UTXO模型。这意味着单个交易地址会重复使用多次,而不是每次交易产生新地址。
不过,相对于比特币,智能合约平台有个优势是它允许使用更高级的交易类型。可以编写这样的智能合约:它为发送到其中的所有资产提供“消失在人群中”的隐私。它甚至还可以编写能够实现完全隐私的智能合约。如今,有好几个支持隐私的智能合约案例正在主网上运行,且还有更多的在开发中。
以太坊的“混币器”如Argent的Hopper、Heiswap以及Tornado,它们呈现“在人群中消失”类型的隐私,其效果堪比比特币CoinJoins的隐私。其中,用户可以将固定金额的特定资产(如0.1ETH或10DAI等)存进智能合约,并等待其他大量用户存入相似大小的代币,从而构建一个大型的匿名组,然后将他们原来金额的代币提取到新地址,而新地址跟原来地址不产生链接。因为面额必须是刚好的,这些解决方案很难吸引大量的存储,这限制了它们扩展为可持续独立业务的能力。
Aztec协议已经开发出一组智能合约模块,它支持机密资产、隐藏地址、零值输出,特别是旨在以太坊上构建“在人群中消失”的隐私资产池。用户需要将其公开资产发送到智能合约,合约会将这些资产的隐私版本注入隐私池,并分配给用户新的交易用隐私地址。隐私池中的资产越多,人群越大,提供给所有参与者的保护就越强。
为现有区块链提供隐私的竞争不仅仅是通过layer-2方式增加。在不久的将来,像Decred和Tezos这样具有强大治理能力的较小型公链将添加协议原生的隐私功能。像比特币和以太坊一样,这些社区看到了隐私交易的价值主张,他们正在努力为社区提供隐私功能,但不是启动原生的财务隐私作为其核心产品。此外,Tezos社区正在直接拷贝Zcash的Sapling工作。
所有这些在公链上的工作都在试图优化当前“在人群中消失”的黄金标准:门罗。尽管只有5%的ZEC是隐蔽交易的,而在默认情况下,100%的XMR是根据一组通过混淆创建安全的规则来进行转移的。
门罗交易使用三种原语来混淆发送者、接收者以及金额:环签名、隐蔽地址、环机密交易(RingCT)。环签名支持发送者用11个用户的密钥来签名交易,从而掩盖其密钥。隐身地址支持接收者的每笔交易使用一次性的地址,从而隐藏其真正的公钥。RingCT允许对其交易金额进行隐蔽处理,但可以验证不会造成通胀。
由于所有交易被迫使用这些功能,因此,所有XMR都属于同一匿名集,并在相同的人群中消失。尽管如此,门罗在2018年熊市中的表现并没有比Zcash好多少。

隐私是特性不是产品:这对匿名币意味着什么?

尽管门罗交易的灵活性比Zcash稍微好些,但有状态的智能合约仍然是不可能的。尽管可能还需要大量的工程开发,但最近的研究突破使得HTLCs(支持像闪电网络这样的layer-2解决方案)成为可能。对于门罗来说,遗憾的是,他们的开发者社区不大,资金不充足,这意味着新功能开发是相对静止的。
无论底层链如何,“在人群中消失”的隐私只能提供可行的可否认性。人群越大,可否认性就越可行。
原来的问题是:多少隐私才算足够隐私?现在变成:如果对手想对用户的交易进行匿名处理,如果交易是在Wasabi钱包的比特币匿名集vs.Aztec的以太坊匿名集vs.门罗的匿名集中进行,人们不得不花费多少?
去匿名化的成本
今年早些时候,研究者提出了针对门罗的FloodXMR攻击,该攻击利用它环签名选择过程的某些方面,仅仅花了1700美元,就对它超过一年的交易的50%进行了去匿名化。门罗社区质疑该成本,称其成本太低了。他们同样也质疑其方法,说分析过于简化,没有考虑到任何现实世界的情况,如多次攻击同时发生,或价格的波动。
本节的目的不是复制FloodXMR攻击,而是利用其原理来构建通用的思考框架:如何考虑非私有链上的隐私池。攻击的基本结构如下:每天在门罗上进行特定金额的交易。
这些交易全部都混在一起,因此没有一方可以知道谁给谁发送了多少,除了他们自己之外。然而,由于所有交易是公开的,且在环签名模式中地址被重复使用,因此攻击者自身可能大量参与这些交易。
通过这样做,攻击者已经极大降低了匿名集,且将更容易来确定每个交易的实际发送者和接收者,从而有效地对交易进行去匿名处理。具体来说,根据上述的报告,“控制一年内生成的交易输出密钥的75%的恶意行为者能追踪到同一时期内创建的所有交易输入的47.63%。”
如果做出某些假设,那么,这种攻击可以延展到比特币的CoinJoin隐私池以及以太坊的Aztec协议隐私池。在过去12个月的大部分时间中,CoinJoins在比特币交易量中比例已经占到5-10%。

隐私是特性不是产品:这对匿名币意味着什么?

假定给定隐私池中的平均交易费用、寻求隐私交易的次数、主链市值的百分比保持不变,那么进行去匿名处理的成本是:
成本=(平均交易费用)*(平均每天新交易数)*1.25*(隐私池中的市值占比)*365
表2显示了BTC的Washabi钱包池、ETH的Aztec池(假定它占有5%的以太坊市值)、XMR的攻击成本,使用的从2018年10月19日到现在的平均值。

隐私是特性不是产品:这对匿名币意味着什么?

另外一种查看去匿名处理所需成本的方法如表3所示。在这里,我们确定在以太坊或比特币的隐私池中需要持有多少市值比例,才能达到与门罗类似的去匿名处理成本。

隐私是特性不是产品:这对匿名币意味着什么?

当然,这种高层级的分析忽略了攻击者如何接近每条链的很多细微差别。它不在于提供完全确切的数字,但可以给出基本的感受:这些“在人群中消失”的隐私方案实际上是什么样的级别。市场应该对这些数字有所关注,但要理解,鉴于它们更大的市值、交易量以及交易费,在比特币和以太坊中的隐私池将很快会比攻击整个门罗匿名集的成本更高。
不用推测未来,其中量化市场是如何看待当今隐私的一种方法是那些最需要隐私交易的用户(暗网用户)最常使用哪种加密货币。门罗被认为是当前最具有隐私的加密货币,因此大家可能会认为它依然占据统治地位;然而,CipherTrace发现,只有不到5%的暗网交易使用的是门罗,而使用最多是比特币。
结论
加密货币存在的理由是提供一种无须依赖可信第三方即可实现的价值交易的数字方法。加密货币要成为全球的无国界的货币必须可抗审查。而其前提是财务隐私。加密货币的隐私之战就像是跟那些寻求去匿名化的加密用户之间发生的军备竞赛,但它必须赢,因为只有这样加密货币才能成功。
遗憾的是,正如我们上面描述的,默认情况下,实现完全隐私交易的成本太高了,如Zcash。它去掉了加密货币的另一个核心价值主张:无须许可地验证整个交易历史中没有发生双花和没有增发的能力。没有这种验证的属性,没有加密货币能在社会层面实现扩展,以成为全球无国界的货币。
因此,获胜的加密货币必须实现某种版本的“在人群中消失”的不完全隐私,且它是构建在可公开验证的账本之上。如表2和表3所展示的那样,比特币和以太坊社区能将隐私池附加到其原生公链上,并且能很快让它们的去匿名处理攻击成本高于整个门罗链,这是因为它们有更高的交易量和交易费用。显然,隐私是无国界货币的特性,而不必是核心产品。
隐私命题必须以此为前提进行理解。不是投资那些优化匿名交易的底层加密货币,而是开始资助那些基于比特币或其他智能合约平台上提供隐私即服务的公司。Layer-2解决方案将默认为其交易者提供隐私,这可能驱动那些重视匿名交易的人离开主链。
从根本上讲,在底层链上实现完全隐私过于昂贵,而这就是像Wasabi钱包、Samourai钱包、Argent、Heiswap、Tornado以及Aztec协议这些业务的机会。