比特币和其他加密货币在以下位置使用隐私 两个都 区块链级别和网络层。公共区块链是数字交易的永久记录,因此,区块链隐私实现重点在于隐藏交易数据并匿名化发送者和接收者的身份.
像Monero和Zcoin这样的以隐私为中心的加密货币结合了Ring CT和零知识证明等区块链级别的匿名功能,以确保无法追踪交易。但是,P2P /覆盖网络通信在匿名化跨区块链网络的交互中也起着至关重要的作用。 Monero和Zcoin都集成了网络层隐私功能,例如 托尔 和 I2P, 但是这些功能还伴随着长期的开发和其他弊端.
这 蒲公英协议 是一种网络层匿名解决方案,最初于2017年提出,旨在帮助改善比特币的P2P网络隐私。其原始建议随后被发现包含各种 缺点 由于潜在对手的某些理想主义假设,随着时间的推移,这可能导致其去匿名.
最终,今年5月提出了《蒲公英协议》的改进版本,称为 蒲公英++. Dandelion ++通过原始协议解决了这些问题,并且已经由研究团队实施,并得到了比特币开发团队的积极回应。 Dandelion ++似乎准备包含在即将发布的比特币核心版本中.
什么是蒲公英++?
Dandelion ++是一种轻量级且直接的网络层解决方案,具有正式保证的匿名性,可以使用现有的加密货币轻松实现。它显着地改进了原始蒲公英提案的理想假设,并且在使用目标和分析指标方面与大多数广播通信匿名协议有所不同。.
为了更好地理解Dandelion ++的工作原理,必须重点关注如何在比特币中广播交易以及原始的Dandelion协议如何工作。在比特币中,当用户从某个节点广播交易时,该交易会传播到连接到该特定节点(称为对等节点)的节点。然后,交易消息随后在链式反应中传播,每个节点进一步将消息传播到它们所连接的节点。这被称为比特币的八卦协议,这是交易如何可以非常快速地到达网络中大多数节点的方式.
比特币现在实现了一种称为扩散的广播形式,其中每个节点都以指数和独立的延迟向邻居传播交易,以减轻用户IP地址的匿名性。虽然有效,但扩散具有 最近 在多项研究中证明不能提供足够的匿名保护.
第三方观察者可以映射交易消息的来源及其IP地址(不包括在比特币交易消息中) 控制足够的节点 或使用连接到大量节点的超级节点。他们可以通过观察哪些节点首先看到事务来有效地映射原始地址。蒲公英++ 纸 明确确定使用超级节点的研究如何记录所有P2P节点的中继流量,并观察事务模式随时间扩展以最终推断出源IP地址。通过将IP地址与发送者的假名链接,即使每个交易使用新的公钥,第三方也可以取消用户的匿名并链接其他交易。.
最初提出蒲公英是为了缓解这些漏洞,但它依靠的是在实践中无法坚持的理论保证。最初的蒲公英提案提出了3个理想假设:
- 所有节点都遵守协议
- 每个节点仅生成一个事务
- 所有比特币节点都运行蒲公英
这些假设在实践中显然行不通,这就是Dandelion ++试图解决它们的原因。原始的蒲公英协议分为两个阶段:
- 干相
- 绒毛相
干阶段是匿名阶段,在该阶段协议被设计为减少映射回原始节点IP地址的可能性。在干阶段,它不是将节点向所有连接的对等方广播事务的节点,而是根据算法通过隐私图将事务消息中继到单个随机对等方。随后,该节点仅将交易消息发送到另一个对等方,并且模式继续进行,直到最终(随机)一个节点以典型的传播格式将该消息广播到网络的其余部分.
这是绒毛阶段开始的地方。一旦单个节点使用扩散方法广播消息,交易消息就会迅速传播到网络中的大多数节点。然而,由于事务消息在以允许观察者将其映射到单个节点的方式传播之前已通过隐私图传送到许多单独的节点,因此追溯到原始节点变得更加困难。取而代之的是,观察者只能将事务的传播映射回几个在干阶段传输消息的节点,从而使发送方的实际身份更加混乱。实际上,这抽象地类似于环签名混淆了交易的实际签名者的方式.
图片来源–朱莉娅·范蒂(Giulia Fanti)在里斯本的演讲
Zcoin 博客 通过使用典型的高中八卦提供了一个很好的例子,说明了蒲公英协议如何工作:
* STEM PHASE *
- 凯西:“对不起,我对努瓦大为迷恋。请不要告诉任何人”
- 乔治:“天哪,你知道凯西告诉我什么吗?她对Nuwa情有独钟。我只告诉过你,请不要告诉任何人”
- 爱丽丝:“贝蒂,你不会相信凯西最好的朋友,乔治刚刚告诉我,凯西在努瓦身上狠狠地砸了!你是我最好的朋友,所以我只告诉过你,请不要告诉任何人好!”
*开始阶段
- 布拉伯茅斯·贝蒂(Blabbermouth Betty):“哦,好消息!我有很好的消息来源,凯西(Kathy)对努瓦(Nuwa)情有独钟。
最初的Dandelion协议的主要问题是由于假设其知识有限,因此低估了特定类型的对手。 Dandelion ++特别着重于对Dandelion的实现选择进行细微更改,例如图拓扑和转发消息的机制.
结果,对算法的这些小的更改以指数方式扩大了问题状态空间,以进行匿名分析。 Dandelion ++依靠增加对手必须学习的信息量来消除用户的匿名性.
Dandelion ++与Dandelion的显着不同之处在于其干阶段,即在将交易消息传播到网络之前,它通过称为电缆的交错路径传递交易。电缆可以分开,但在选择要传播到的节点时,其直觉仍然仅限于其本地邻居。在比较诸如Tor之类的网络级匿名解决方案时,这是一个重要的考虑因素,Tor是一种洋葱路由协议,其中客户端需要全局,最新的网络信息来确定交易路径.
图片信用– Dandelion ++学术论文
Dandelion和Dandelion ++都以异步周期进行。每个节点在其内部时钟达到特定阈值时都会前进。对于每个时期,Dandelion ++都在4个主要组件中进行了轻微的优化:
- 匿名图
- 交易转发(自己)
- 交易转发(中继)
- 故障安全机制
匿名图在匿名阶段使用随机的4正则图而不是线性图。节点对Dandelion ++中继的选择独立于其出站邻居是否支持Dandelion++.
事务转发(自己)是指节点每次生成自己的事务时,都会沿着4规则图中的相同出站边缘转发该事务。这与蒲公英中有问题的假设之一不同,在该假设中,假设节点仅产生一个事务.
事务转发(中继)是在茎阶段中节点接收到茎事务并选择中继事务或将其分散到网络的概率时刻。将交易分散到网络的选择是 伪随机. 此外,对于所有中继事务,节点可以是扩散器或中继节点.
故障保护机制是每个主干阶段事务在哪里跟踪每个节点是否再次将其视为起毛阶段事务。如果不是,则节点分散交易.
在这些阶段中对该算法的细微调整,使得通过观察事务消息的传播来映射IP地址变得非常困难。 Dandelion ++论文继续指出可以针对原始Dandelion协议使用的特定攻击,包括图学习攻击,相交攻击,图构造攻击和黑洞攻击。通过每种攻击媒介,他们都可以通过理论分析和模拟来展示Dandelion ++如何缓解它们.
Dandelion ++不会显着增加网络延迟,其实际可行性已在比特币的主网上得到证明。它提供了一种轻量级且有效的网络层匿名工具,以减少将攻击映射为匿名用户的可能性。尽管具有优势,但Dandelion ++并未明确防御ISP或AS级别的对手,后者可以使用路由攻击使用户匿名.
比较Dandelion ++和Tor
与其他网络匿名实现(例如Tor)相比,Dandelion ++具有明显的优势. 托尔 是专注于隐私的最杰出的网络覆盖层,它使用洋葱路由来隐藏用户的地理位置和IP地址.
Tor在加密货币系统的网络堆栈级别上的集成极具挑战性。门罗(Monero)就是一个很好的例子,因为它花了四年多的时间来实现其类似Tor的I2P 科夫里 项目进入他们的网络,目前仍在进行中。许多加密货币网络没有时间或技术专长来集成此类功能.
对于不了解网络隐私不足或缺乏通过Tor正确路由交易的经验的主流比特币用户来说,通过Tor路由交易的用户也不是特别可行。此外,由于带宽有限,与蒲公英相比,Tor可能较慢++.
相同 学习 他指出了对比特币中的扩散广播的一些不具名的担忧,还强调了对节点的攻击,这些攻击最终导致拒绝或将Tor连接列入黑名单。这可能导致取消匿名交易并映射用户IP地址.
结论
Dandelion ++是对原始Dandelion协议的有益改进。最终可能集成到即将发布的比特币核心版本中,并且应该会大大改善比特币的P2P网络隐私。加密货币的攻击媒介不断发展,其解决方案也在发展。 Dandelion ++代表了保护用户的又一步 比特币的隐私.