区块链技术资源分享
追寻中本聪先生的脚步

区块链分片随机抽样的随机性是如何产生的?

首先,重要的是要指出,即使随机数的产生是高度可利用的,这对协议来说也不是一个致命的缺陷。相反,它只是意味着有一个中等偏高的集权激励。原因在于,由于随机性选取相当大的样本,因此很难将随机性偏差超过一定数量。

如上所述,最简单的方法就是通过二项式分布

如果希望避免大小为N的样本被攻击者破坏超过50%,并且攻击者具有全球利益池的p%,则攻击者能够在一轮中获得如此多数的概率是:

随机抽样概率公式

下面是一个表格,说明N和P的各种值在实践中的概率:

N = 50 N = 100 N = 150 N = 250
p = 0.4 0.0978 0.0271 0.0082 0.0009
p = 0.33 0.0108 0.0004 1.83 * 10-5 3.98 * 10-8
p = 0.25 0.0001 6.63 * 10 -8 4.11 * 10 -11 1.81 * 10-17
p = 0.2 2.09 * 10 -6 2.14 * 10 -11 2.50 * 10 -16 3.96 * 10 -26

因此,对于N> = 150,即任何给定的随机种子将导致有利于攻击者的样品的几率是很小的确实。这就意味着从随机性的安全角度来看,攻击者需要在选择随机值的顺序上有非常大的自由度,以彻底打破抽样过程。大多数利益证明随机性的漏洞不允许攻击者简单地选择种子; 在最坏的情况下,他们给了攻击者许多机会从许多伪随机生成的选项中选出最有利的种子。如果对此非常担心的话,可以简单地将N设置为更大的值,并且在计算随机性的过程中增加一个中等难度的密钥导出函数,以便花费超过2 100 计算步骤来找到一种方法来充分地偏置随机性。

现在,我们来看看为了获取利润而不是直接收购,试图影响随机性的攻击风险。例如,假设有一个算法从一些非常大的集合中伪随机地选择了1000个验证者(每个验证者获得$ 1的奖励),攻击者拥有10%的股份,所以攻击者的平均“诚实”收入为100,攻击者可以操纵随机性来“重新掷骰子”(攻击者可以无限次地执行此操作),这个成本是1美元。

由于中心极限定理,样本数量的标准偏差以及其他已知的数学结果 N个随机样本的预期最大值略低于M + S * sqrt(2 * log(N)),其中M是平均值,S是标准偏差。因此,操纵随机性和有效地重掷骰子(即增加N)的奖励急剧下降,0重新审判你的预期奖励是100美元,一个重新审判105.5美元,两个108.5美元,其中三个110.3美元,其中四个111.6美元,五个112.6美元,六个113.5美元。因此,在五次再审之后,它不值得这样做。因此,一个经济动机的攻击者(10%的股份)将(社会上浪费)花费5美元,获得13美元的额外收入,净盈余8美元。

然而,这种逻辑假定单轮重掷骰子是昂贵的。许多比较老的证明算法有一个“赌注打磨”漏洞,重掷掷骰子只是在本地计算机上进行计算; 具有此漏洞的算法在分片环境中肯定是不可接受的。较新的算法(参见关于分布式共识机制算法的“验证器选择”部分)具有只能通过在块创建过程中自愿放弃一个点来完成掷骰子的属性,这需要放弃奖励和费用。减轻边缘经济动机的攻击对样本选择的影响的最好办法是找到增加成本的方法。从N轮投票中增加成本的一个方面是一个方法是Iddo Bentov设计的多数位方法 ; 淡褐色纸的分片算法期望使用这种方法。

多米尼克·威廉斯(Dominic Williams)最为研究和倡导的确定性门限签名方法是另一种不被少数群体联盟利用的随机数生成方式。这里的策略是使用确定性的门限签名 来生成从中选择样本的随机种子。确定性阈值签名具有这样的性质,即不管给定的一组参与者中的哪一个向算法提供其数据,只要至少1/3的参与者诚实地参与,值就保证相同。这种方法显然不是经济上可以利用的,并且完全抵抗各种形式的利害关系,但是它有几个弱点:

  • 它依赖于更复杂的密码学(具体来说,椭圆曲线和配对)。其他方法仅仅依赖于对常见散列算法的随机预言。
  • 当许多验证器脱机时,它会失败。只要大多数剩余节点是诚实的,公共区块链的预期目标就是能够在网络的很大一部分中存活同时消失。确定性门限签名方案在这一点上不能提供这种属性。
  • 在Zamfir模型中,有超过1/5的验证器串通是不安全的。上述利益相关者常见问题解答(FAQ)中描述的其他方法仍然会使处理随机性变得非常昂贵,因为来自所有验证人的数据被混合到种子中,并且进行任何操作都需要通用串通或彻底排除其他验证者。

有人可能会认为确定性的门限签名方法在一致性有利的情况下效果更好,而其他方法在可用性有利的情况下效果更好。

在贿赂攻击者或协调选择模式中通过随机抽样进行分片的关注是什么?

在贿赂攻击者或协调选择模型中,验证者随机抽样的事实并不重要:无论样本是什么,攻击者都可以贿赂绝大多数样本做攻击者喜欢的事情,或者攻击者控制大多数的样本,并且可以指导样本以低成本执行任意动作(O(c)成本,准确地说)。

在这一点上,攻击者有能力对该样本进行51%的攻击。由于存在跨层次传染的风险,威胁进一步放大:如果攻击者破坏了碎片的状态,攻击者就可以开始向其他碎片发送无限量的资金,并执行其他交叉碎片的恶作剧。总而言之,贿赂攻击者或协调选择模型的安全性并不比简单地创建O(c)altcoins好得多。

我们如何改进呢?

基本上是通过全面解决欺诈检测问题。

解决这个问题的一个主要类别是使用挑战 - 反应机制。挑战 - 响应机制通常依赖于一个升级原则:事实上X(例如,“第#54号碎片整理#17293是有效的”)最初被接受为真,如果至少有k个验证人签署声明(支持存款)是。但是,如果发生这种情况,那么有一些挑战期可以让2k验证者签署声明,声明这是错误的。如果发生这种情况,4k验证人可以签署一个声明,说明声明实际上是真实的,等等,直到一方放弃或大多数验证人签署声明,此时每个验证人和客户自己检查X是否为真。如果X被裁定为正确,那么所有提出这种要求的人都会得到奖励,每个提出矛盾要求的人都会受到惩罚,反之亦然。

看看这个机制,你可以证明恶意行为者失去了一定数量的资金,与他们被迫查看给定数据的行为者数量成比例。强迫所有用户查看数据需要大量的验证者签署错误的索赔,这可以用来惩罚所有这些索赔,所以迫使所有用户查看一段数据的成本是O(n ); 这防止了挑战 - 响应机制被用作拒绝服务向量。

区块链分片随机抽样的随机性是如何产生的?

分享到:更多 ()

来评论吐槽 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

快手号:神吐槽shentucao

交易所地址更多手机免费挖矿APP