我写了一个新的consensus algorithm 。是否有一个 self 评估 list 可供我运行以查看其是否满足基本要求?比如它能抵抗双花攻击吗?或者说它是如何扩展的?
最佳答案
我回顾了整个算法。虽然这个想法很棒,但感觉有点不完整。以下 self 评估 list 基于 ETH、BTC 等成熟区 block 链的要求和采取的安全措施。
系统标准:
- 系统所需的存储容量是多少? -- RAM 使用情况、带宽
- 当整个网络离线时会发生什么?
算法评估:
- 该算法可扩展吗?当用户呈指数级增长时,可扩展为可操作。
- 矿工需要多长时间才能达成 2/3 共识?
- 用户资金有安全措施吗?
- 用户如何安全地转账? (加密哈希算法,只有授权实体才能解密,确保安全)
架构评估:
- 它是否去中心化、透明且不可变?
用户评价:
- 是否有足够的动力让矿工/验证者验证交易?
- 是否有足够的动力让"new"矿工/验证者加入网络?
- 单个实体有可能主宰网络吗?
- 有什么安全措施可以防止盲目/不可靠的数据传输?
抗攻击评估:
- 该算法是否能够抵抗双花攻击、Eclipse 攻击、女巫攻击(身份盗窃)、67% 攻击?
- 诚实的用户有办法防御此类攻击吗?如果不是,那么攻击者攻击区 block 链后成功的可能性有多大?
- 作为攻击者,该算法的弱点是什么?某件事一旦被 2/3 确认就无法更改,那么你如何才能获得 2/3 的投票呢?
这些是我在阅读算法描述时想到的一些条件,但没有得到解答。共识算法考虑了当前系统的最大吞吐量和延迟,以便提供如何逃避攻击和保护用户安全的整体思路。如果共识算法无法做到其中任何一个,那么它就不会在市场上流行,因为网络将因缺乏算法而变得不值得信任。为了确保不是这样,除了用户在尝试加入网络时会想到的区 block 链/算法特定问题之外,还应该询问此类问题。归根结底,每个人都喜欢保证自己的资金安全可靠,并远离公众,以避免任何类型的攻击。</p>
关于cryptocurrency - 共识算法检查表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75102154/