女巫攻击是在点对点网络中看到的一种攻击,其中网络中的一个节点同时主动操作多个身份并破坏声誉系统中的权限/权力。此攻击的主要目的是获得网络中的大部分影响力,以在系统中执行非法(相对于网络中设置的规则和法律)行为。单个实体(计算机)具有创建和操作多个身份(用户帐户、基于 IP 地址的帐户)的能力。在外部观察者看来,这些多重虚假身份似乎是真正独特的身份。
女巫攻击的历史
该攻击以Sybil一书的主题命名(主题名为 Sybil Dorsett)。一篇名为 The Sybil Attack 的论文由 Microsoft Research 的 John R. Douceur 撰写。
几个例子:
- 最近所谓的俄罗斯干涉美国大选是一种女巫攻击,其中在 Facebook 上操作了多个假账户。这种攻击属于伪女巫攻击的范畴,因为所使用的平台(Facebook)本身没有受到损害。
- Sybil 攻击在 Tor 网络上进行。
- 区块链网络中的 51% 攻击。
- 亚马逊和其他电子商务平台上的多个虚假评论仅通过一个身份(这种大规模计算能力可(不道德地)从孟加拉国等国家/地区租用。
形式模型
Sybil Attack 论文中使用的模型很简单。它包括:
- E 个实体 = c(正确)个实体 + f(错误)个实体
正确 –诚实地遵循网络中设置的协议和规则的实体(其诚实性已得到验证)。
故障 –行为随意且无法预测的实体。他们没有诚实地遵守网络中的协议和规则。 - 通信云:一种非常通用的云,不同实体之间的消息通过它传播。
- 管道:将实体与通信云连接起来
女巫攻击的类型
- 在直接攻击中,诚实节点直接受到女巫节点的影响。
- 在间接攻击中,诚实节点受到与女巫节点直接通信的节点的攻击。这个中间节点受到了 sybil 节点的恶意影响,因此受到了威胁。
比特币网络如何防止女巫攻击?
比特币网络使用工作量证明(PoW)共识算法来证明添加到区块链中的任何块的真实性。完成这项工作需要大量的计算能力,这为矿工提供了诚实工作的激励(比特币奖励;目前每开采一个区块 12.5 个比特币),并且没有对错误工作的激励。交易由每个节点验证,如果块中包含错误交易,则拒绝为无效交易。一种被称为 51% 攻击的 sybil 攻击在比特币网络中几乎是不可能的,因为矿工太多,单个组织很难控制 51% 的矿工。
防止女巫攻击的方法
赋予不同成员不同的权力——这是基于声誉系统的。具有不同权力级别的成员被赋予不同的声誉级别。
创建身份的成本——为了防止网络中出现多个虚假身份,我们可以为旨在加入网络的每个身份设置成本。需要注意的一点是,让同时操作多个假身份变得不可行比创建新身份更有意义。多重身份可以加强安全性、匿名性和审查预防。
在加入网络之前验证身份 –
- 直接验证:已建立的成员验证网络的新加入者
- 间接验证:已建立的成员验证其他一些成员,这些成员又可以验证其他新的网络加入者。由于验证新加入者的成员由已建立的实体进行验证和验证,因此新加入者被信任是诚实的。
注意:尽管上述技术使得对网络进行女巫攻击变得困难,但此类攻击并非不可能。