一文读懂Filecoin是怎样防止女巫攻击的?
女巫攻击到底是什么?
女巫攻击(Sybil Attacks)是Filecoin面临的三种网络攻击之一,它的意思是恶意节点通过克隆ID的方式欺骗网络以获取额外的收益,这种方式被称为女巫攻击。那么,这个女巫攻击称呼来自何处呢?
根据Flora Rhea Schreiberie在1973年的小说《女巫》改编的同名电影,是一个化名Sybil Dorsett的女人心理治疗的故事。她被诊断为分离性身份认同障碍,兼具16种人格。如果网络中存在一个恶意节点,那么同一个恶意节点可以具有多重身份,就如电影中的女主角分裂出的16个身份,原来需要备份到多个节点的数据都被欺骗地备份到了同一个恶意节点,比如该恶意节点伪装成多重身份,这就是女巫攻击。
这种网络攻击方式就和女巫一样可怕
通俗理解:用户提交网络请求,存储N个独立备份。这时,某个恶意节点生成了Y个身份标识,网络就以为是Y个独立存储节点,而恶意节点的实际存储分数少于N份或者干脆只有一份,但是该恶意节点却可能获得N份独立备份(奖励),换句话说它可能获得了N倍区块爆币奖励,此时,该恶意节点攻击成功。
那么Filecoin又是如何解决女巫攻击的呢?
Filecoin防止女巫攻击的解决方案
首先各位小伙伴要明白Filecoin中为什么要防止女巫攻击?
很简单,比如某厂商只有1个节点用来进行Filecoin挖掘,然后其通过女巫攻击实现10个节点同时进行挖掘Filecoin,但是该厂商却只贡献了1个节点的存储算力,就好像明明只干了一份工作却冒领了10份奖励,这种情况欺骗了Filecoin官方和Filecoin网络。所以,为了防止欺诈和公平性,必须解决女巫攻击问题。
复制证明就是Filecoin防止女巫攻击的解决方案,复制证明的核心思想就是确保证明者保存了独立备份。那么,复制证明是如何实现的呢?
第一步,加密时间长,解密时间短。通过加密时间的延长使恶意矿工不能及时通过临时生成加密后的文件来挑战,因为要生成复制证明必须要求证明者使用加密后的文件作为输入,也就是说只有矿工实际存储了加密后的文件才能保证按时完成挑战,缩短解密时间是为了更快提取文件减少计算资源损耗。
第二步,定时提交存储证明。每间隔一段时间,矿工需要提交一次存储证明,说白了就是要定期上交证明给Filecoin网络检查验证。因为加密过程时间非常长,很占时间,所以要降低挑战时间、解密时间和验证时间的长度,即降低生成存储证明的复杂度。
上面的整个过程就是Filecoin的复制证明(PoRep)。
Filecoin的复制证明实现过程
PoRep的基本定义是这样的:验证者V向证明者P提供一段独特的数据证明π,以说服P自己存储了数据D的一个特定备份Di,这个证明是专为P生成的挑战C的应答。
通俗的理解是这样的:某矿工大刘(验证者V)给某用户小张(小张向网络发布了多个存储任务)说,“我手里有一个独特的数据证明,是你发布的存储任务中的某个备份,该备份仅此一份”,只要两人“暗号证明”对上了,只要用户小张确认没问题,那么矿工大刘就能拿到对应备份的任务奖金(Filecoin网络挑战爆块出币)。
Filecoin是否能100%完美地可以防止女巫攻击呢?
并不是,在年初的时候,Filecoin网络还不稳定,甚至在测试网期间还出现了系统BUG,有节点矿工就恶意获得了很多虚拟FIL币。所以,各位小伙伴们明白了Filecoin网络为什么要进行测试了吗?就是为了在正式主网上线运行后能够保证系统稳定,否则如果主网上线后出现问题或者漏洞,不仅对其他矿工来说不公平,对整个Filecoin网络生态都可能造成及其严重影响。
Filecoin官方之所以拿出425万FIL币作为奖励,刺激矿工们参与测试网和校准网,就是想以主网上线后的代码为真实模拟看看会不会出现什么问题。
微信扫描关注公众号,及时掌握新动向
2.本文版权归属原作所有,仅代表作者本人观点,不代表比特范的观点或立场
2.本文版权归属原作所有,仅代表作者本人观点,不代表比特范的观点或立场