Sybil attack:少数节点通过伪造或盗用身份伪装成大量节点,进而对分布式系统系统进行破坏。
由来:
“女巫攻击”的名字由Brian Zill建议,来源是70年代的一部叫做《Sybil》的美国系列片。片中的女主角人格混乱,扮演着16个角色。
在Sybil攻击中,攻击者通过创建大量的假名标识来破坏对等网络的信誉系统,使用它们获得不成比例的大的影响。
对等网络上的实体是能够访问本地资源的一块软件。 实体通过呈现身份在对等网络上通告自身 。 多于一个标识可以对应于单个实体。
换句话说,身份到实体的映射是多对一的。 对等网络中的实体为了冗余,资源共享,可靠性和完整性而使用多个标识。
在对等网络中,身份用作抽象,使得远程实体可以知道身份而不必知道身份与本地实体的对应关系。
默认情况下,通常假定每个不同的标识对应于不同的本地实体。 实际上,许多身份可以对应于相同的本地实体。
对手可以向对等网络呈现多个身份,以便出现并充当多个不同的节点。 因此,对手可能能够获得对网络的不成比例的控制水平,例如通过影响投票结果。
(摘自wikipedia: https://en.wikipedia.org/wiki/Sybil_attack)
大规模的p2p系统面临着有问题的和敌对的节点的威胁,为了应付这种威胁,很多系统采用了冗余。然而,如果一个有恶意的实体模仿了多个身份,他就可以控制系统的很大一部分,破坏了系统的冗余策略。我们把这种模仿多个身份的攻击定义为女巫攻击(Sybil Attack)。
一个防止女巫攻击的方法是采用一个信任的代理来认证实体。
验证技术可用于防止Sybil攻击和消除伪装敌方实体。 本地实体可以基于中央权威来接受远程身份,其确保身份和实体之间的一对一对应,并且甚至可以提供反向查找。 身份可以直接或间接地验证。 在直接验证中,本地实体查询中央授权机构以验证远程标识。 在间接验证中,本地实体依赖于已经接受的身份,继而保证所讨论的远程身份的有效性。
基于身份的验证技术通常以匿名为代价提供问责制 ,这可能是一个不可取的折衷,特别是在希望允许无检查的信息交换和公开讨论敏感话题的在线论坛。 验证机构可以通过拒绝执行反向查找来尝试保持用户的匿名性,但是这种方法使验证机构成为攻击的主要目标。 或者,权威机构可以使用除了用户的真实身份的知识之外的一些机制 - 诸如验证未识别的人在特定地点和时间的物理存在 - 来实施在线身份和真实世界用户之间的一一对应。
(摘自wikipedia: https://en.wikipedia.org/wiki/Sybil_attack)
节选自:https://blog.csdn.net/qq_35056292/article/details/60480292
在工程实践中,一个对等网络成员的增加或者删除,除了像比特币,以太坊采用POW的竞争性共识,算力说话之外。更容易面临女巫攻击的是采用POS和BFT等协商性共识的对等网络。
所以在开发中,开发者们提出,要像一个国家的政治治理一样,比如人民代表是选举出来代表进行政治活动的。但是在这些代表要保护起来。对应在计算机系统中就是这些参与记账的节点,要保持一定的匿名性。他们的IP不能随意公开。
对应整个对等网络的成员的更新,增加或者删除,都要有一套事先约定的共识协议,也就是达成共识的共识。
网友评论