区块链入门 | 区块链领域各类隐私保护技术简介
区块链的最大特性是其公共账本是透明的。 但在许多情况下,进行隐蔽交易是可行的。 在本文中,我们将向您介绍旨在提升交易隐私级别的四个概念。 加密货币是隐蔽的,这实际是一种常见的误解。 它们中的大多数并不是匿名的,这意味着默认情况下,虽然现实世界的身份不与地址相关联,但可以通过持续的数据分析进行连接。
为何需要隐私?
在区块链上创建私有交易有许多合理的理由。 如果您有健康问题并且需要定期购买处方药,您有充分的理由私密地进行这些交易。 如果您有业务,您不希望向竞争对手透露您的收入来源,如果您为配偶购买礼物,您可能不希望他或她在实际获得礼物之前看到它。 希望私下交易有很多充分理由,我们认为隐私是并且应该被视为一项基本人权。对于本文,我们假设您熟悉许多区块链用于记帐的UTXO模型。 如果您不太了解,请随时查看我们之前的文章。
找零地址
引入了找零地址后,对方无法通过查找您用于与和对方交易的地址来访问你的整个交易历史记录。 大多数现代钱包会在您创建交易时自动为您生成找零地址。 在常规比特币交易的上述示例中,您可以看到交易的一个输入和两个输出。 第一个输出转到不同的地址,是用户想要花费的金额。 UTXO的其余部分回到了资金来源的同一地址。
无论是找零还是常规的转入交易,支持更改地址的钱包将在您每次收到资金时生成新地址。 上面的示例显示了与之前具有完全相同金额的交易,但这次找零返回到新创建的找零地址。 此功能通过使跟踪给定用户的事务历史记录变得更加困难、更加隐私。
混合硬币
像SharedCoin,TumbleBit或CoinJoin(Dash使用)这样的硬币,混合协议是通过在单个交易中混合多个不同的输入和输出来改善隐私的手段,通常是在几个交易中期期间。
硬币混合交易不需要对许多其他加密货币(例如Horizen)使用的基本比特币协议进行任何更改。在上图中,您可以看到硬币混合交易的原理图。许多输入在混合池(中心)中组合,然后分配到它们的目标地址。硬币混合交易使得攻击者更难以找出谁向谁汇款。
混合服务提供的隐私水平远远优于使用常规交易,但是可以通过监控混合交易中的硬币数量来轻松地将输入地址链接到输出地址。网上有工具可以这样做。硬币混合的另一个缺点是可用的许多混合器是由第三方集中管理的,可能会窃取您的资金。基于CoinJoin的技术可以避免因没有中央集仅而导致您的硬币被盗的风险。
到目前为止,有许多硬币混合协议的迭代,逐步改进了隐私承诺。以CoinJoin为例,每个用户都必须向混合池发送相同的金额,这使得金额跟踪变得更加困难。 机密交易 将通过隐藏交易金额来解决此问题。在我们的高级篇,我们将更详细地讨论各个混合器,让我们先继续前向下阅读。
环形签名
环形签名在2001年,由Rivest,Shamir和Taumann首次引入。从那时起,这个概念已被用于许多隐私协议。 我们将利用白宫泄漏困境来证明环形签名概念的价值主张。
想象一下,一位高级别的白宫官员(爱丽丝)想向媒体透露有关总统的秘密。 她需要确保,接收秘密的记者有办法在不泄露她身份的情况下验证信息来源。 她能做的是使用环形签名对邮件进行签名。 为了构建环签名,她需要的只是她的私钥和其他可能的告密者的公钥,例如, 内阁的其他成员(鲍勃和卡罗尔)。
验证者(记者)可以验证该消息确实是由高级官员签署的,但他无法确定谁构建了签名(Alice,Bob或Carol?)。
在加密货币领域,用户可以收集一堆公钥,创建交易并使用他的私钥对其进行签名。 网络上的节点的验证者可以验证交易是否有效以及该消息是否已由其中一个组成员签署。 他们无法分辨谁签署了交易,这使得环形签名非常适合私密交易。
Monero是最值得注意的加密货币,它使用环形签名,环形签名是Monero构建的CryptoNote协议的一部分。 CryptoNote协议已经构建,其中一个补充是RingCT协议。 这是对环签名方案的提升,它不仅隐藏交易的发送者而且还隐藏转移的金额。
零知识证明
零知识证明(zk-Proofs)早在区块链技术出现之前就已为人所知,但随着分布式账本的出现,进化出了一整套新的可用案例。
简单地说,零知识证明可以让您向验证者证明您知道某些事情,而不会泄露你发送的信息。下面是一个直观的非示例,说明了这可能是什么样子。看见的人是证明者,被蒙住眼睛的人是验证者,并且验证者有两个不同颜色的球。
观察者(证明者)需想要说服被蒙住眼睛的人(验证者)两个球具有不同的颜色,而不会露出颜色。他们坐在一张桌子旁,盲人向证明者展示其中一个球。盲人继续将两个球放在桌子下面并选择在第二轮中显示一个球 - 与之前相同或另一个相同。如果他选择展示同一个球,则证明者知道因为他看到了相同的颜色并告诉了盲人。如果盲人要显示另一个球,则证明者可以肯定地告知验证者(盲人)已将球在桌下转换过了。
在第二轮中,如果必须猜测的话,证明者有一半的机会猜到正确答案。他们必须猜测,以防他试图证明(球是不同颜色的)是错误的。在这一点上,盲人不能确定验证人是否正确,或者证明者是靠运气猜的。
但如果他们多次重复游戏,那么每次通过猜测获得正确答案的机会都会呈指数级下降。在仅仅十轮比赛之后,每次通过纯粹运气召唤正确球的机会在1024(1/2 ^ 10)中减少到1。盲人现在可以非常肯定,虽然证明者没有分享关于颜色本身的任何信息,但她知道这两个球确实具有不同的颜色。
使用零知识证明进行加密货币交易的思路如下:您构建一个证据,证明您要发送的交易将被验证节点视为有效,而不会泄露任何实际的交易数据。这要将发送者、接收者和金额隐藏。另一个非常适合zk-Proofs应用案例是身份验证。例如。您可以向实体证明您已达到某个年龄而不会泄露任何个人数据,例如您的出生日期。 Horizen使用Zk-snark进行隐蔽交易。 zk-SNARKs是一种特殊类型的零知识证明,即零知识简洁非交互式知识论证。
简洁是指在易于计算和验证,使其更简便。
非交互式意味着证明者和验证者不必同时在线。 对于上面的球示例,证明者和验证者必须来回几次,然后验证者才能确认证明者的言论。 通过非交互式证明,证明者可以完全自己构建证明,而无需在此过程中进行通信。
知识论证描述了证据在计算上是合理的,即使坏人拥有巨大的算力资源,也不能伪造错误的证明。
要使用Horizen的私密交易,您将使用不同的地址类型。 在钱包中,您可以生成t-Addresses(透明地址)或z-Addresses(私密地址)。 当您将资金发送到z-Address私密地址时,金额和发件人将记录在区块链中,但不会显示在接收地址中。 如果您将资金再次转发到第二个z-Address私密地址,则既不会记录任何有关交易的信息,也不会记录发件人,收件人和金额。 如果您想尝试此功能,可以下载Horizen旗舰应用领域(链接到钱包下载)。 确保在设置中激活全节点模式,否则您将无法生成z-Addresses私密地址。
总结
有很多方法可以在公共区块链上拿回您的隐私。 像变更地址和硬币混合器这样的方法,这样虽然不能提供强大的隐私,但它们有助于使得跟踪交易到原始地址,并将现实身份对应到区块链上的地址变得更加困难。 环形签名和Zero-Knowledge Proofs是更先进的技术,实际上允许您完全私密,且不用同时在线地进行交易,即使在完全开放的公共区块链上也是如此。
(来源:HORIZEN)