文摘
这项工作提出了一个理论和数值分析的条件分布的连续的共识是可能的,当网络中部分节点的状态是摄动。具体地说,它检查部分连接的共识水平下blockchains失败/攻击事件。为此,我们开发了随机模型验证一旦检测到一个错误概率和网络故障时一致是不可能的。通过网络度平均场近似我们得出解析解的平均网络共识大型图形大小热力学极限。结果表达式允许我们获得连接阈值以上,网络可以容忍的攻击。
1。介绍
信任通常作为添加剂聚合可靠的碎片。然而,当涉及到网络安全或隐私需求,面临的挑战是如何协作创建信任的网络环境中不确定的来源(1- - - - - -6]。这种方法的一个了不起的成功故事是比特币(7]。在比特币,是由一组代理——信任矿工——与测序块的交易在一个链。区块链(BC)是比特币的支撑技术,矿工们竞争的协议来解决计算量大的问题,被称为Proof-of-Work(战俘)[8]。矿工的结果然后纷纷聚集在一个分布式数据链。结果只是嵌入后的最终版本的链共识,只有达到如果订单关系是一致的。战俘是信任和一个代理,因此,可靠性增加随着链的增长;它逐步更难revert-hack-the链,因为这需要增加计算能力。因此,尽管每个代理产生不安全的本地信息,由此产生的总随着时间的推移变得越来越可靠。
最近,然而,这些优势也引起担忧如何出口到公元前范式cryptocurrency以外的领域,比如物联网(物联网)或无线传感器网络(WSN) [9,10]。这个困难起源于公元前架构的局限性,这阻碍它扩展到小型设备的可能性(例如,传感器)。传感器,尤其是缺乏执行战俘的计算能力。公元前一个更具挑战性的事实是,需要完整的连接操作(这是不可行的轮为)。因此,争论的问题是如何设计blockchains没有战俘和部分连接,同时保持失败和攻击的鲁棒性。
分布式一致性并不是一个新概念。在[11]分析分布式数据库使用的一致性算法密切相关的流行病学模型(12]。两个信息扩散机制,antientropy和散布谣言的行为,发生在分布式一致性模型特别有用。Antientropy规范数据库中的条目从邻居而散布谣言最后更新信息内容实例。这种命令之间的权衡和随机感染流行指数增长允许作者发现通过使用平均场方法。扩散在部分连接网络的概念是在[严格对待13在玻璃的背景下放松。这里,几何方面的回报的可能性马尔可夫过程的超立方体走路也使用平均场理论分析。
图拓扑信息传播的影响已被广泛讨论的文献(如,[14- - - - - -16])。然而,该模型在16)(随机图叠加环晶格)尤其与我们讨论,因为它确保最小连接,同时保持了小世界属性(即。,high clustering coefficient and small characteristic path length [17])。
在[18]描述的通用分布式共识问题;nonfailing网站的选择必须决定在一个共同的价值 。这项研究的作者发现,共识的关键部件破裂是异步性和失败,都注入不确定性系统在不同的尺度上。分布式网络共识也分析(19作者地址),最重要的应用程序的概念,网络时钟同步等。作者介绍了平均共识作为初始状态收敛的极限,这个极限等于平均提供初始值。有趣的是,一个随机共识协议(其中只有一小部分网站需要达成一项价值)所示是更健壮的崩溃比确定性算法(20.]。
没有达到一致时,系统通常分解。从控制理论的角度,研究中取得了一些有趣的结果集中在这个问题上,例如,(19后),针对自愈系统重大地失败。然而,安全性和弹性是多维对象可以解决更一致通过一个复杂的系统的方法(21,22]。例如,[23)模型,提出了一个电话玩家随机播放谣言在他们的合作伙伴。作者研究节点故障的影响,专注于一个有趣的结果;如果失败模式是随机的,导致只有崩溃节点无知的球员有高概率。研究也显示,任何随机谣言传播算法运行了轮需要传输。这是符合我们知道从网络科学24];随机故障就不那么容易传播。该模型考虑(25)由网站运行的进程异步失败在哪里作为伯努利过程建模。在[26]问题是设定的选民模型和入侵过程;同意值从一组导出网站但是导入错误传染给其他节点。
当谈到区块链实现,27]分析了比特币的信息传播网络。这项工作突出的局限性公元前同步机制和系统受到攻击的弱点。这里,通信网络作为随机图模型意味着≈32度,发现块验证过程多半会造成延迟传播和不一致。作者在他们的实验表明,节点的速度的概率分布了解一个街区有一个长尾。这意味着有一个不可忽视的部分不及时接收信息的节点。影响网络相当于考虑一个不完整的共识。公元前组织攻击的一个典型的例子是所谓的selfish-mine策略。这包括节点的一个子集扩散信息部分的目标,而不是均匀分布更新(28]。在[29日一个马尔可夫链模型用于分析在比特币selfish-mine策略。这和其他block-withholding行为能造成毁灭性打击性能如果不诚实的社会网络规模的一半左右。
所有这些作品都提供关键洞察网络弹性的问题,扩散,从不同的角度和共识。然而,作者的知识,数学模型连接的部分blockchains仍下落不明。因此,在本文中,我们的理论和数值分析分布式顺序一致的条件是可能的。在混凝土中,我们检查的共识水平下部分连接blockchains失败/攻击事件。为此,我们开发随机模型验证一旦检测到一个错误概率和网络故障时一致是不可能的。由此产生的表情让我们获得连接阈值高于网络可以容忍攻击。
本文组织如下。节2我们制定这个问题。并给出了研究结果3。最后,我们从我们的研究获得的结论和讨论未来的工作的可能性5。
2。问题公式化
Blockchains可以设想为动力分布式数据库的成分(块)合作,逐步由一组代理。在这个过程中有三个关键因素:(a)如何传播信息,(b)如何实现共识和(c)错误如何影响总体性能。下面我们详细说明这些元素。
2.1。部分网络连通性的共识
我们从网络的角度考虑点对点(P2P)基础设施与两种类型的节点:沟通网站和处理网站,矿工(图1)。用户节点连接到网络中的其他用户可以启动事务。如果一组用户 参与事务安排,一个或多个矿工可以尝试验证预期的交易如果成功,装成一个块。这个问题可以被设想为三个图形的相互作用:沟通、交易和矿工。公元前强调,通常的协议需要完整的图是理所当然的,这并不总是可能的。有可能是故障或故意攻击网络的一部分。然而,它不太可能为一个网络断开连接在正常操作。因此,图连通性是一个合理的下界的假设(特别是在传感器网络和物联网)。这使我们考虑网络提出了(16]; 组成的一个随机图叠加环晶格 。这个模型还展示了小世界属性中发现(14,15),但它更接近于实际需求中发现的最小连接网络和其他网络系统如计算机网络(30.]。
在这一点上似乎可以减少信息传播在公元前图表上著名的扩散问题。这个地区远远的文学(见,例如,13])。然而,公元前的扩散有一些微妙引擎盖下如下我们展示。
2.2。为什么订单问题:连续扩散
在每个事务安排,每个操作的命令集是一个关键因素。考虑到简单的布置如图1(b),代表四种可能的交易。这些可以是正式的直接链接 图所示。有方法这组但不是全部是一致的。的类型,我们将是避免了一致性重复花费问题。两种可能的顺序关系和实现的双射 。他们的结果 第一次订购不引起任何不一致但有序集 违反了双花约束权重不同 。如果我们的标签 步的状态向量 ,一个过渡,说 ,结果在更新方程: 在哪里代表了row-base向量和相对应的图拉普拉斯算子是事务子图吗 。命令允许编写紧凑的更新方程 在哪里 , ,和代表事务重量、基向量,并为每个事务图拉普拉斯算子。在表1,我们将展示的进化状态 与初始状态 为和 。请注意,对节点3跑出值在步骤2但它仍然打算完成交易节点5步骤3。这就像有一个平衡的10美元的银行账户和消费两次通过发送10美元到两个不同的收件人。当谈到了网络测量(比如能源消耗数据)避免这些矛盾是必不可少的31日]。如果一个矿工试图把这些交易到一块,他将达成一致。这些限制使不同正则图扩散(公元前扩散13]。事实上,公元前协议确保重复花费悖论等施加约束不可能发生的 。一个例子是比特币的分布式分类(27]。接下来的问题是如何订购夫妇失败的网络。
2.3。攻击和失败在共识动力学
区块链技术应对上述限制有效地提升事务块规模之间的关系。因此,每一个块(可容纳一个或多个事务)在生成的区块链构建的前一块保存顺序扩散。但是可以使用这种策略,不诚实的用户创建网络中大规模破坏。考虑图中描述2在6名矿工合作建立一个区块链。不失一般性,我们可以根据订单的标签矿工块决议(很可能在同一时间,两名矿工解决一块,如果发生这种情况,公元前仍将排序结果块为了有高概率(20.])。节点3是一个失败的节点;它发送一个错误/攻击nonneighboring节点(a)或者一个矿工人恰好是一个解决下一个块(b)。下面每个图形,我们也显示链的演化。在这个示意图,行代表网站和列代表迭代周期内。一行代表当地的实例链在给定站点和一列代表集体区块链建立了给定的步骤。区块链构造如下。在步骤所有网站的- - - - - -创世纪块。在步骤如果矿工发现没有错误在过去他的本地实例链块解决下一个块和广播邻居的解决方案。nonreached网站简单复制他们的状态。然而,如果发送的站点是一个故障节点,它将广播一个失败,他的一个邻居。在这种情况下,如果受影响的块发现错误在他的解决步骤,他仍然有机会恢复块一致从他的熟人。如果这一共识区块链分解是不可能的。这个流如图3。
(一)
(b)
这两个情况如图2触发不同的现象和整体网络性能有不同的影响。在第一种情况下,错误(表示为表中)不可能被恢复和坚持区块链。然而,在第二种情况下一个额外的恢复步骤可以恢复错误的约定价值 。还需要注意的是,因为网络不是完全连接有网站缺乏状态更新和当地的实例链并不是同步的。这限制了信息传播在网络显示在下一节。
我们强调这一事实,比特币实现,矿工异步继电器模块和事务一旦他们收到或者我(32]。在我们的例子中代理人持有收到邻居顺序块和传播他们的知识。在图4我们比较两种模型的序列图的情况下三个矿工(为了简单起见,我们只考虑一个线程每矿工。自采矿乘以远比继电器,分裂矿业和传递过程两个线程不会影响结论的比较)。不失一般性矿工将解决块在第一、第二和第三个订单。比特币的区块链实现()块的采矿和火炬传递的过程有不同的时间表;≈10分钟为采矿和几秒钟转发。然而在一个战俘不在(b)的上下文,矿业滞后倾向于零和采矿的过程,验证,和继电器趋同。在(a)如果站点在时间发送一个块来 ,这个矿商将其转发经过短暂的验证滞后 。然后,将发布大型矿业后延迟。然而,在(b),因为没有战俘,将广播在时代邻居很快 。这使得大大节约时间和减少网络流量。
2.4。数学模型
通过一起把所有这些事实,我们获得一个最小区块链模型,捕捉上述动力学:(a)部分连接,(b)连续扩散,传播(c)失败。下面我们开发一个随机过程分析研究在不同条件下平均网络性能。
图模型的大小节中描述2.1我们代表每个信息块(或测量状态一般)的网站在th迭代, 。正如上面强调的,所有网站从0-genesis块: 。然后,在流图中描述3在迭代节点 ,检查其状态,并将一块添加到链。我们收集的网站数量匹配当前块的变量 ,等于节点学位加上噪声项 。如果发送一个错误的信号不能恢复的状态 ,然后 和 在任何其他情况下。每个迭代性能比率 是一个衡量水平达成共识的步骤 。取决于是否达到共识整个链可能崩溃。在一个链的合奏我们定义失败和匹配的随机变量 , , ,分别。 如果有一个或多个步骤的共识是不可能的。因此,整体的意思可以表示为 在哪里 ——作为连接probability-represents网络平均度, , 代表的失效概率。因为只能发生连锁故障验证后, ,在那里 验证概率和吗 各自的条件概率。
请注意,即使在正常情况下有一个上界意味着效率 由缺乏完整的连接(完整的连通性和全面复苏 将导致的极限 (即。,100% efficiency)). Hence, both size and connectivity limit network performance due to the partial sequential diffusion, specific for the BC architecture. Next, we look into chain failure probability.
首先,很明显,失败只能发生在迭代最后一块节点是一个错误状态。这就要求(一)emisor节点攻击节点的概率和(b)接收节点 。自连接均匀随机,在一步验证概率吗可以表示为 。另外,因为链如果至少一个步骤需要验证,验证结果区块链验证的概率
3所示。主要结果
3.1。平均场近似链式验证概率
通过使用一个意思是场近似(11我们替换节点度意味着网络度 。在这种情况下,对于大型 , 呈现 在图5我们比较表达式(5蒙特卡罗模拟。环晶格的大小 我们生成的合成网络与连接和增加攻击强度饱和直到图。每个实验点有相同的参数(50分)代表网络报告验证步骤的一部分。随着攻击节点的比例增加验证成倍增长,像流行的11]。正如预期的那样,图连通性(测量附加链接,直到饱和)的比例减少了验证率。
提供这种估计是很重要的,因为大量的验证步骤直接转换成本和效率的实现。接下来,我们详细调查后连锁故障的概率验证步骤。
3.2。网络共识机制
强调,如果节点节点发送一个错误代码在迭代 ,有机会为节点重现这个错误了,邻国之间的共识是在给定阈值。可以制定如下的问题。让代表节点的邻居 。注意,在迭代 ,节点 有价值而剩余的节点可以获得值的设置吗 。给定一个共识阈值 ,让 表示值的最大频率这是不同的 。有协议 的符号代表着地板上的价值 。请注意, 定义了一个简单多数建立共识网站。
因此,灵感来自于antientropy和散布谣言的概念(11),我们分裂的共识问题(6)两种机制:集群和随机感染(我们用数学术语流行病学感染节点的接收给定状态。请注意,在我们的案例中感染不一定是负面的现象,除非播放量)的攻击。在前,邻居得到更新价值 。在后一种情况下邻居们最终达成一个值从其他网站不同从自己的复制或在前面的步骤中区块链循环。
注意符号的数量增加迭代次数。因此,它是由随机感染越来越不可能达成共识。另一方面,共识的联系机制并不减少迭代。因此,共识将主导的联系在随机的共识热力学限制 。一个合理的网络规模(说 )这使我们忽视随机失效概率贡献。下面我们详细说明在这个随机近似。
3.3。随机网络故障在热力学极限
演示过,集群发生在至少有共识网站的 可能的节点(−1项是因为网站已经拥有一个状态)与国家 。同样,它可以假定连接到至少节点 。通过这种方式,我们可以作为一个伯努利试验模型的过程(类似于[25])成功的变量遵循二项式~ 。由此产生的失效概率呈现 由于区块链失效概率可以表示为 通过使用(8)和(3), 我们到达的表达式 现在,只要数量 相比很小 ,我们在最后一个表达式的一阶近似对数级数展开。通过实现相同的平均场近似在前面的部分中,我们获得了方程 在哪里表示对应的平均场近似 。在图6我们展示的平均场近似区块链性能测量的平均网络共识 和 。至于我们生成的合成网络与连接和增加攻击强度饱和直到图。对于每个网络实例,我们监控网站的数量与价值在迭代在区块链循环。这给了我们一个实证估计网络匹配每个迭代 。然后,我们平均的循环量,结果为衡量网络性能(即。共识水平)。最后,我们获得这个量的平均值从蒙特卡罗数据集。每个实验点代表50运行相同的参数。
注意,100% performance-blockchain极限可以只实现完整的连通性 。的上限(黑直线)限制了部分连接的网络匹配;当我们增加性能增加根据(概率的链接10)。同时,强大的攻击策略(大按预期值)降低性能。
一个了不起的结果图6是超过一个临界值的连接性 ;共识是有限的信息传播,而不是失败。这一事实促使我们密切关注可能的估计 。
3.4。估计攻击宽容关键的连接
注意到没有其他比二项式的累积分布函数 ,我们使用普通的二项分布的近似 在哪里误差函数和吗 如果 代表一个小数量,我们查询的条件倾向于 ,或者更具体地说 。为此,我们在这个表达式条件平等来自(11)和(12)。同时,通过使用 近似,以下条件成立: 在大限制 同时也假设 , 可以近似为
从(14)可能试图解决一个字符(13) , , ,和 。但这是不可能的,因为功能 发散的 。然而,一个有趣的案例发生在 。在这个限制,(13只有是有意义的 消失,或者,相当于,如果 。然而,这个值并不提供渐近限制我们正在寻找。
如果我们表达而言, 通过重新调节 我们也重写(13)的 我们获得 我们介绍了功能: 。
考虑的有效近似是可行的 。然后,通过使用相应的解决方案 和大我们发现 这只不过是一个有用的parametrisation (13)。为 我们恢复情况 。然而,更大的值允许我们探索的极限 密切关注。例如,对于 , , 我们到达的解决方案 。这意味着,对于最大附加强度( ),除了 偏差的百分比从关于低于15%。通过设置其他攻击耐受阈值值可以调整不同的区块链网络的实现。。的值 表示在图6可以被设想为一个合理的阈值最小的网络连接确保攻击宽容与上述参数。
4所示。概念证明的例子
注意到这项工作的数学模型解决抽象的具体事务,块,网络体系结构,通信协议等等。实现者必须提供(a)的定义什么是事务,事务(b)标准一致的排序(这相当于定义类似于重复花费问题),(c)如何打包成块,交易和(d)是如何在网络上传播的信息。当这些规范提供的至少有两种可能的场景发现解决这个工作可以应用:无线传感器网络和物联网。
如强调,有模型和当前区块链之间的基本差异在cryptocurrencies协议实现。特别是,在我们的方法的信息不是立即传递到矿工一次创建块;它是按顺序扩散如图4。这有其利弊取决于应用程序域。
当没有Proof-of-Work需求趋向于零块矿业滞后和验证和一代延迟成为具有可比性。这种方式区块链建设速度是由网络延迟。因此,在缺乏战俘的情况下,一个可以安排代理的扩散网络操作。在接下来的例子中我们将展示一个概念验证的例子在物联网领域,我们比较我们的模型和异步扩散方案与传统的区块链实现。在物联网的上下文中考虑人类迁移的问题跟踪,A和B两个人离开房间到房间D, E C(图通过大厅7)。五存在传感器模拟不断捕捉数据的表单 在哪里识别传感器,代表了测量时间, 代表事件。措施收集间隔,然后检查一致性。在 ,时间分为个子区间长度。这些量表示生活区之间的最小位移时间或任何其他相关的时间尺度。一般来说他们将传感器采样率的函数。因此,我们discretise连续变量在测量时代 隐式地定义为 这允许原始数据预处理到一个数据集以条目的形式 ,我们也下降 值。保持我们cryptocurrency比喻,我们定义交易的命令对 : 。例如, 代表一个人的运动从一个房间一个时代在时代大厅C 。一些交易并不代表真正的运动(例如,)。一个可能的事务的有效判据是 如果 。这限制了运动的类型允许在一个特定的方式,但也可以定义任何其他标准。
接下来,我们定义一个作为一个有序序列的事务。如果表示一组测量中可能的交易收集在 ,考虑两种可能的路径: 两个路径代表了运动的两个个体,B, D, e .然而,是不一致的,因为人在B打算从C E C。
因为我们忽视战俘,我们只能考虑块包含一个事务,因此可以立即产生。订单标准提供方法构建信息链避免上述类型的顺序不一致评论。
我们也考虑一组最少的三个分布式代理(矿工在我们的类比)将构建链。根据网络结构和通信协议之间的信息流代理可以以不同的方式定义。然而,模型中提供的部分2允许相当大的减少网络运营哪个更适合物联网的实现。在底部面板图7我们用简化的序列图来比较区块链的信息流(a)和连续扩散(b)模型,我们做图4。在下面的部分,我们还包括当地的摘要信息存储在每个节点。
不失一般性矿业订购1 - 3可以映射到节点(如图4中,我们使用一个线程的验证和采矿过程节点,自采矿时代比验证时间)大得多。在(a),放在第一位提取和验证事务从网络和广播相应的块(1 - 2)。验证后,将这个文件转发(3 - 4)。在稍后的时间,验证 ,将其添加到其本地副本 ,和分发其他节点之间的信息(6、7)。下一个节点3本身已被敌军布上了地雷 然后验证和发送到网络(9 - 11)。最后,节点1只发现它一致的添加其本地链然后它广播信息网络的验证和传输(13 - 15)。
然而连续扩散模型(b),强调,代理商不立即远期交易/块,因为他们收到他们;节点传播信息时产生新的块。在没有战俘的情况下,代理可以节省不必要的同步通信过程。这种方式,节点2不前进(2′)节点3在收到从节点1 (1′);包装时发送的信息(3′)等等。这在很大程度上减少了网络流量。当矿工轮完成节点发送同步消息(虚线从8 9′′)到下一个第一次挖掘节点(在这种情况下),直到没有更多的交易来验证。如果有代理和交易,信息数量的增加在(a)在(b)是代理商的网络中的每个节点的程度。的最大开销获得完整的图 和两种模型一致。
因为网络和物联网通用电池能力很低,这大大限制了网络流量的大小。因此该模型解决这些情况可以添加价值。
5。总结和讨论
在本文中,我们进行了分析,从理论上和数值分布顺序一致的条件是可能存在的局部连通性和不确定性。最小顺序组成的叠加环晶格扩散模型与随机图以及命令感染规则允许我们捕获关键区块链元素:部分连接,连续扩散,传播失败。
在我们设置网络的平均场近似程度是有助于派生封闭表达式验证链一旦检测到错误的概率。我们发现和攻击验证成倍增长。正如预期的那样,图连通性降低验证率。这是一个了不起的结果,因为大量的验证步骤直接转换成本和效率的实现。
我们还提供了网络故障的概率表达式,当共识是不可能的。为此,我们研究分析的成分在blockchains共识的问题。我们发现集群主导在随机感染在大型网络大小限制。这允许我们获得的平均网络性能的表达式的函数连接和失败的力量。我们通过蒙特卡罗模拟验证这个表达式。正如所料,100% performance-blockchain极限可以只实现完整的连通性。此外,有一个上界为部分连接网络匹配。导致较低的性能更强的攻击策略。
由此产生的表情让我们获得连接阈值高于网络可以容忍攻击。除此之外,下界共识只有有限的信息传播,而不是失败。一套合理的假设和代数操作允许我们,实现经营这个绑定表达式。具体地说,为 基于简单多数的共识,我们到达了解决方案; 。这意味着在一个场景中以最大的连接强度,超越 ,区块链共识的百分偏差对上部连接绑定低于15%。
显然这贡献的理解只是第一步部分连接blockchains;这个问题仍然需要进一步的改进以促进更健壮的实现。例如,我们忽略了一些通信延迟或带宽限制等问题。在以后的工作我们将研究其他拓扑模型如无尺度和空间网络和异构的链接。多路复用网络也会让我们探究不同的攻击模式和可能的反击策略。
的利益冲突
作者宣称没有利益冲突。
确认
这项研究支持的部分地区教育部从卡斯蒂利亚y莱昂(西班牙)和欧洲社会基金MOVIURBAN项目SA070U16 Ref。