我正在开发基于区块链的身份系统。并且,由于每个项目将永远在链中,消耗空间,我正在考虑添加工作证明要求将项目添加到链中。
起初我在考虑使用比特币,因为它是一种经过验证的方法来证明工作已经完成,但这样做会阻止用户加入,因为比特币尚未广泛适应。此外,在分布式系统中,尚不清楚谁应该获得这笔钱。
所以,我正在寻找工作证明算法,其复杂性可以根据区块链增长速度轻松调整,以及难以重复使用的东西。此外,如果自工作开始以来复杂性会增加,那么工作应该能够在调整后的复杂性下完成而无需重新完成。
有人可以向我推荐一些可以达到我的目的的东西,并且可以抵抗GPU加速吗?
答案 0 :(得分:1)
简单......烧掉比特币。任何人都可以做到 - 所以没有进入的障碍,你真正需要的是“价值被破坏的证明”。因为价值被破坏,你知道矿工的激励是加强你的链条。
创建一个不可能是真实的比特币地址,但是正确的校验和。然后让你的矿工发送到该刻录地址,并在OP-return中使用公钥。这样做可以让他们在一段狭窄的时间里获得采矿权。
通过增加燃烧的比特币数量来调整“难度”。同一窗口中的多次刻录可以获得奖励共享,但只有一个块被选为正确(校验和最接近窗口所有有效刻录的校验和)。