Proof of Buy,一种专为Layer1设计的Layer2共识

来自项目方的女巫攻击

前面我们提到, proof of buy会让矿工们支付 L1 token到项目方的地址(以下简称mining addr)上,久而久之,为了防止项目方自己利用自己的 出块无成本的优势(因为矿工的token都是支付给他的)来自己亲自下场挖矿垄断出块权,我们设计了VRF这种伪随机的方式来让L2出块不会仅仅只受L1 token的支付数量的影响。

但有一个问题仍未解决,项目方可以利用自己的L1 token资金优势来进行女巫攻击:项目方自己可以分身为很多矿工来跟其他正常矿工抢夺出块权。即,假设现在有10个正常矿工要竞选L2的出块权,项目方决定亲自下场挖矿,虽然VRF能保证项目方的L1 token足够多也未必能挖到,但是它可以冒充出5000个矿工来一起参与挖矿,以此来无限稀释正常矿工能挖到矿的概率。

我们使用一种解法来防止这种攻击的可能,即把所有转入了mining addr的L1 token,都做一次转变,给这些L1 token(我们假设就是CKB这个币)的 type_script内增加一个逻辑: 该token永远不可以再回到该mining addr

如此项目方便不能够利用自身的优势挤压其他正常矿工了,但他们仍然可以用这些token去做别的事情(支付工资、资助生态) 并且由于该逻辑是写死进 type_script的,项目方自己无法使用混币器等手段通过抹除其交易历史的方式来绕过该限制。

唯一可能的方式是项目方将这些标记过的CKB和市面上其他正常的CKB进行交换。 但由于标记过的CKB有了用途的限制,所以普遍情况下在市场上它与正常CKB的汇率普遍会高于1:1,当汇率高于1:1的情况下,项目方便需要使用超量的被标记的CKB才能换回正常的CKB再进行女巫攻击,这是一件不可持续的事情,并且该L2越值钱,汇率就会越高,项目方的女巫攻击成本就越大。因此我们认为该种方式完全能够削弱项目方的女巫攻击。

1 Like