Revisiting Fast Practical Byzantine Fault Tolerance: Thelma, Velma, and Zelma
在之前的注释(arXiv:1712.01367 [cs.DC])中,我们观察到Zyzzyva中的安全违规和Fab中的活性违规。在这份手稿中,我们对两者都进行了粗略的修复。在这两个方案中应用了相同的视图改变核心,并且还应用于将它们组合起来并创建具有两种方法的优点的单个增强方案。
2018-01-26 cs.DC
On Conflict-Free Replicated Data Types and Equivocation in Byzantine Setups
本文研究了无冗余复制数据类型(CRDTs)的模糊容限特性。我们表明,CRDTs的子类是模棱两可的宽容,从而可以应付任何数量的拜占庭故障:没有模棱两可的检测,预防或补救,他们仍然履行强最终一致性(SEC)。我们还推测,只有一个基于操作的CRDT设计支持非交换操作,满足SEC在拜占庭环境中的任何数量的故障。
2021-10-08 cs.DC cs.DS
Search on a Line by Byzantine Robots
研究了$n$机器人在无限直线上的容错并行搜索问题。从原点开始,机器人需要在未知位置找到目标。机器人可以以最大速度$1$移动,并且可以在它们之间以无线模式进行通信。然而,在$n$机器人中,存在表现出{ \em拜占庭故障}的$f$机器人。一个有缺陷的机器人可能在到达目标后也无法报告,或者它可能会恶意声称已经找到了目标,而实际上它并没有。由于存在这样的故障机器人,搜索的目标只能得出结论时,非故障机器人有足够的验证,目标已经found. We的目的是设计算法,最大限度地减少值$S_d(n,f)$,时间找到一个目标在距离$d$从原点由$n$机器人,其中$f$是有故障的。我们给出了几种不同的算法,其运行时间取决于比率$f/n$,故障机器人的密度,也证明了下界。我们的算法是最佳的故障机器人的一些密度。
2016-11-24 cs.DC cs.DS
On Probabilistic Byzantine Fault Tolerance
拜占庭容错(Byzantine fault tolerance,BFT)是分布式无信任系统中的一个重要研究课题,它可以保证系统在1/3拜占庭进程存在时仍能正常运行。尽管过多的BFT系统以前的工作,他们主要关注的是从所有参与过程的状态推断出的共同知识。在BFT系统中,关键是要知道一个进程知道其他进程的状态和系统的全局状态的知识。然而,目前还缺乏对拜占庭故障常识的研究,例如,是否所有诚实节点都知道拜占庭节点的存在。在动态环境中,流程可能会意外和不可预测地失败或受损。关键是要推理出哪些进程知道网络中的故障进程。在本文中,我们感兴趣的是研究BFT系统中,拜占庭进程可能会随机行为不端,可能在一些随机的时间段。本文所研究的\emph{probabilistic Byzantine}(PB)过程问题比已有工作中所研究的问题更一般。我们提出了一种方法,使我们能够制定和理由的PB过程的并发知识的所有进程。我们提出了我们的研究所提出的方法在同步和异步系统。
2020-02-08 cs.DC
On the Byzantine-Fault-Tolerant Consensus for Blockchain among Connected Vehicles
在共识过程中能否保证拜占庭容错(Byzantine fault tolerance,BFT)是区块链系统的关键问题。当车辆保持移动时,互联车辆(CV)能否实现BFT共识?本文试图回答这一基本问题。它侧重于描述流动性对简历中BFT共识性能的影响。
2021-12-25 cs.DC
Hosting Byzantine Fault Tolerant Services on a Chord Ring
在本文中,我们将展示如何有状态的拜占庭容错服务可以托管在和弦环。提出的策略有四个方面:首先,开发了一种将复制服务状态的维护与环恢复分离的复制方案。其次,使基于环的服务的客户端具有复制意识。第三,一个共识协议的介绍,支持序列化的更新。最后,拜占庭容错复制协议的发展,以确保完整的服务数据托管在环上。
2010-06-17 cs.DC
Approximate Agreement under Mobile Byzantine Faults
在本文中,我们解决近似协议问题的移动拜占庭故障模型。我们的贡献是三方面的。首先,提出了移动拜占庭故障模型到混合模式故障模型的第一个映射,该映射进一步证明了移动拜占庭故障模型中类MSR(Mean-Subsequence-Reduce)近似一致算法的正确性,具有独立的意义。其次,我们证明了在所有现有的移动拜占庭故障模型下近似一致性的下界。有趣的是,这些下限与静态界限不同。最后,我们提出了匹配上界。本文首次将Mobile Byzantine Faults模型和Mixed-Mode Faults模型联系起来,并提出在Mobile Byzantine Faults模型下,可以采用类似的方法来证明其他经典分布式构造块(如协议、时钟同步、交互一致性等)的正确性。
2016-04-12 cs.DC cs.NI
Byzantine fault-tolerant distributed set intersection with redundancy
本文研究了拜占庭容错分布式集合交集问题,提出$2f$-冗余概念并推导出可解的充分必要条件,扩展至任意通信图,同时为拜占庭优化问题提供可解性结果。
2024-02-13 cs.DC
Byzantine Fault-Tolerance in Peer-to-Peer Distributed Gradient-Descent
我们考虑的问题,拜占庭容错的对等(P2P)分布式梯度下降法-一个突出的算法,在P2P系统中的分布式优化。在这个问题中,系统由多个代理人组成,每个代理人都有一个本地成本函数。在无故障的情况下,当所有的代理都是诚实的,P2P分布式梯度下降方法允许所有的代理达成共识的解决方案,最大限度地减少他们的总成本。然而,我们考虑的情况下,一定数量的代理可能是拜占庭故障。这样的错误代理可能不正确地遵循算法,并且可能共享任意的不正确信息以防止其他非错误代理解决优化问题。在拜占庭故障代理的存在下,一个更合理的目标是允许所有的非故障代理达成共识的解决方案,最大限度地减少所有的非故障代理的总成本。我们将此容错目标称为$f$ -弹性,其中$f$是$n$代理系统中拜占庭故障代理的最大数量,其中$f < n$。P2P分布式优化中的大多数现有容错工作仅考虑近似容错,其中,与$f$弹性不同,所有非故障代理计算其成本函数的非均匀加权聚合的最小点。我们提出了一个容错机制,赋予可证明的$f$ -弹性的P2P分布式梯度下降方法,提供了非故障代理满足必要条件的$2f$ -冗余,稍后在本文中定义。此外,与以前的工作相比,我们的算法是适用于更大的一类高维凸分布优化问题。
2021-01-28 cs.DC
Relaxed Byzantine Vector Consensus
精确拜占庭共识问题要求非故障进程在其输入的凸包中的决策(或输出)上达成一致。众所周知,在存在故障的异步系统中,精确的共识是不可能的,并且在同步系统中,在存在多达f个拜占庭故障进程的情况下,n>=3f+1对实现具有标量输入的精确拜占庭共识的进程的数量是严格的。最近的工作表明,当输入是实数的d维向量时,n>=max(3f+1,(d+1)f+1)在同步系统中是紧的以实现精确的拜占庭共识,并且n>=(d+2)f+1在异步系统中是近似的拜占庭共识。由于下界对向量维数d的依赖性,当向量维数大时,所需的处理的数量变大。为了降低n的下界,我们考虑了两种放松版本的拜占庭向量共识:k-放松拜占庭向量共识和(delta,p)-放松拜占庭向量共识。在k-松弛一致性中,有效性条件要求输出必须在输入到向量的k维的任何子集上的投影的凸包中。对于(delta,p)-一致性,有效性条件要求输出必须在非故障过程的输入的凸包的距离delta之内,其中L_p范数被用作距离度量。对于(delta,p)-共识,我们考虑两个版本:在一个版本中,delta是一个常数,在第二个版本中,delta是输入本身的函数。我们证明了对于k-松弛一致性和(delta,p)-一致性,其中常数delta>=0,n的界与上述原始向量一致性问题的界相同。另一方面,当delta依赖于输入时,我们证明了当d>=3时n的界较小。
2016-01-29 cs.DC cs.DS
Enhancing Byzantine fault tolerance using MD5 checksum and delay variation in Cloud services
云计算管理超出了典型的人类叙述。然而,如果虚拟系统没有有效地设计为容忍拜占庭故障,它可能会导致错误执行任务,而不是云崩溃。云计算可以从崩溃中恢复过来,但无法从信誉的损失中恢复过来。此外,除非虚拟系统被设计为检测、容忍和消除这样的故障,否则在面对拜占庭故障时,没有任何数量的复制或故障处理措施是有帮助的。然而,研究工作,以解决拜占庭故障并没有提供令人信服的解决方案,极大地由于他们的能力有限,在检测拜占庭故障。因此,本文将云系统建模为离散系统,以确定虚拟系统在不同时间间隔的行为。作为与虚拟节点相关联的预期处理延迟的偏差的度量的延迟变化变量从P {低、正常、高、极端}的集合中取值。类似地,甚至针对没有附接到TCP/IP栈的内部节点计算的校验和误差变量从P {no error,error}的集合中取值。然后,这些条件由故障事件的发生来表示,这些故障事件导致特定组件模式从故障安全转换到故障停止或拜占庭倾向。
2018-01-26 cs.DC
Iterative Approximate Byzantine Consensus under a Generalized Fault Model
在这项工作中,我们考虑了一个广义的故障模型,可以用来代表广泛的故障情况下,包括相关的故障和非均匀节点的可靠性。这种故障模型是一般意义上的故障模型研究在以前的相关工作,如f -总和f -局部模型,是广义故障模型的特殊情况。在广义故障模型下,我们探索了任意有向网络中的迭代近似拜占庭共识(IABC)算法。我们证明了IABC算法存在的一个充分必要条件。广义故障模型的使用有助于更好地理解IABC算法。
2012-05-22 cs.DC
Broadcast Using Certified Propagation Algorithm in Presence of Byzantine Faults
我们探讨了认证传播算法(CPA)[6,1,8,5]在解决具有局部有界拜占庭故障的广播中的正确性。CPA允许节点仅使用关于网络拓扑的本地信息。我们提供了一个严格的必要和充分条件的网络拓扑结构的正确性CPA。据我们所知,这项工作是第一个解决公开问题[8]。我们也给出了这个结果的一些简单的推广
2013-10-23 cs.DC
Byzantine Fault-Tolerance in Decentralized Optimization under Minimal Redundancy
研究了多智能体分散优化中的拜占庭容错问题。在这个问题中,每个代理都有一个局部成本函数。分散优化算法的目标是允许代理合作计算其总成本函数的公共最小点。我们考虑的情况下,一定数量的代理可能是拜占庭式的故障。这种错误的代理可能不遵循规定的算法,并且他们可能与其他非错误代理共享任意或不正确的信息。这种拜占庭代理的存在使得典型的分散式优化算法无效。我们提出了一个分散的优化算法与可证明的精确容错对有限数量的拜占庭代理,提供了非故障代理有一个最小的冗余。
2020-09-30 cs.DC cs.MA cs.SY
Byzantine Agreement with Faulty Majority using Bounded Broadcast
Byzantine Agreement是在[Pease,Shostak,Lamport,80]中提出的一种广泛使用的可靠分布式协议。它模拟广播,尽管网络中存在故障方,传统上只使用私有单播链路。在这种情况下,拜占庭协议要求超过2/3的缔约方遵守。[Fitzi,Maurer,00],为任何服从多数的人构建了一个拜占庭协议,该协议基于一个额外的原语,允许同时向任何两方传输。他们提出了将这些结果推广到更广泛的渠道和更少的合规方的问题。我们证明了2f < kh条件是实现广播与h兼容和f故障方使用k-cast信道的必要和充分条件。
2003-12-25 cs.DC
Scheduling and Checkpointing optimization algorithm for Byzantine fault tolerance in Cloud Clusters
在这些故障中,拜占庭故障对容错机制提出了严重的挑战,因为它通常在初始阶段未被检测到,并且它可以在进行检测之前容易地传播到其他VM。因此,一些关键任务应用程序,如空中交通管制,在线烘焙等,仍然远离云计算。但是,如果在初始阶段没有检测到拜占庭故障并容忍,那么尽管整个云计算执行了数小时的计算,但大数据分析等应用程序可能会完全出错。因此,在以前的工作已经提出了一个万无一失的拜占庭故障检测,作为延续,这项工作设计了一个调度算法(WSSS)和检查点优化算法(TCC)容忍和消除拜占庭故障之前,它造成的任何影响。WSSS算法跟踪服务器性能,这是虚拟群集的一部分,有助于将性能最佳的服务器分配给任务关键型应用程序。因此,WSSS根据一个计数器对服务器进行排名,该计数器监视每个虚拟节点(VN)的时间和性能故障。TCC算法通过监测延迟变化来概括可能的拜占庭错误倾向区域,以使用先前的检查点来启动新的VN。此外,它可以拉伸状态间隔执行和无错误的VN的效果,以最大限度地减少空间,时间和成本开销所造成的检查点。通过绘制状态转换和基于CloudSim的仿真进行分析。实验结果表明,TCC能成倍地减少容错开销,WSSS能有效地分配虚拟资源
2018-02-03 cs.DC
SplitBFT: Improving Byzantine Fault Tolerance Safety Using Trusted Compartments
部分同步系统中的拜占庭容错协议(Byzantine Fault Tolerant Agreement,BFT)通常要求3f + 1个节点容忍f个错误副本。由于其高吞吐量和终结性属性,BFT算法构建了最近许可区块链的核心。作为一个复杂且需要资源的基础设施,多家云提供商已经开始提供区块链即服务。这简化了许可区块链的部署,但将云提供商置于中央控制位置,从而质疑区块链的容错和去中心化特性及其底层BFT算法。本文介绍了SplitBFT,这是一种利用可信执行技术(TEE)(如英特尔SGX)来加强BFT系统的安全性和机密性保证的新方法,从而加强了对许可区块链基于云的部署的信任。与标准假设不同,SplitBFT承认受可信执行保护的代码可能会失败。我们通过将BFT协议的核心逻辑拆分和隔离到多个隔间中来解决这个问题,从而形成更具弹性的架构。我们将SplitBFT应用到传统的实用拜占庭容错算法(PBFT)中,并使用SGX对其进行评估。我们的研究结果表明,SplitBFT只增加了一个合理的开销相比,非划分的变体。
2022-05-24 cs.DC
A Byzantine Fault Tolerant Distributed Commit Protocol
在本文中,我们提出了一个拜占庭容错分布式提交协议的事务运行在不可信的网络。传统的两阶段提交协议通过复制协调器和在协调器副本之间运行拜占庭协议算法来增强。我们的协议可以容忍拜占庭故障的协调副本和一个子集的恶意故障的参与者。一个决策证书,其中包括一组注册记录和一组投票的参与者,是用来促进协调副本,以达到拜占庭协议的结果,每一个交易。该证书还限制了错误副本可以用于非原子终止事务或语义上不正确的事务结果的方式。
2007-08-01 cs.DB cs.DC
BigBFT: A Multileader Byzantine Fault Tolerance Protocol for High Throughput
本文描述了BigBFT,一种多领导者拜占庭容错协议,可在区块链系统中实现高吞吐量和可扩展的共识。BigBFT通过以下方式实现这一点:(1)使每个节点成为可以并行提议和排序块的领导者,(2)在轮内捎带投票,(3)跨轮流水线块,以及(4)在常见情况下仅使用两个通信步骤来排序块。BigBFT在$n$请求上的分摊通信成本为$O(n)$。我们评估BigBFT的性能分析,使用背面的信封负载公式来构建成本分析,并通过在我们的PaxiBFT框架中实现它的经验。我们的评估比较了BigBFT与PBFT,Tendermint,Streamlet和Hotstuff在各种工作负载下使用4到20个节点的部署。我们的研究结果表明,BigBFT优于PBFT,Tendermint,Streamlet和Hotstuff协议,无论是在延迟方面(高达$70\%$)还是在吞吐量方面(高达$190\%$)。
2021-10-12 cs.DC
Efficient Byzantine Fault Tolerance using Trusted Execution Environment: Preventing Equivocation is only the Beginning
随着区块链的快速发展,拜占庭容错协议最近引起了人们的兴趣。为了克服拜占庭容错的理论界限,许多协议试图使用可信执行环境(TEE)来防止歧义,提高性能和可扩展性。然而,由于副本数量的减少导致的仲裁相交假设被打破,这种改进主要是以增加通信复杂性为代价的,这阻止了现有的基于TEE的协议被应用于大规模区块链系统。在本文中,我们提出了TBFT,一个有效的拜占庭容错协议在部分同步设置,它具有O(n)的消息复杂度在正常情况下和视图改变。与以往的协议相比,TBFT使用TEE辅助原语来限制副本的更多类型的恶意行为,而不仅仅是防止歧义,从而降低了客户端和副本的延迟和通信复杂性。此外,我们还引入了轻量级的密码原语,包括一个新的领导选举机制和一个有效的投票消息聚合机制,以提高安全性和性能。通过系统的分析和实验对TBFT进行了评估,结果表明TBFT具有较好的性能和可扩展性。
2021-07-06 cs.DC
Revisiting EZBFT: A Decentralized Byzantine Fault Tolerant Protocol with Speculation
在本文中,我们重新审视了EZBFT[2],并在协议中提出了安全性,活性和执行一致性违规。为了演示这些违规行为,我们提出了简单的场景,只涉及四个副本,两个客户端,和一个或两个所有者的变化。我们还注意到所提出的TLA+规范用于模型检查所提出的协议的缺点。
2019-09-09 cs.DC
Byzantine Fault Tolerant Causal Ordering
本文研究异步系统中点对点通信的拜占庭容错因果排序问题,证明现有算法在拜占庭故障下失效且无上界时不可能实现因果排序,并提出两种依赖网络传输时间上界的算法及其组播扩展。
2021-12-21 cs.DC
ezBFT: Decentralizing Byzantine Fault-Tolerant State Machine Replication
我们提出ezBFT,一种新的无领导,分布式共识协议能够容忍拜占庭故障。ezBFT的主要目标是最大限度地减少WAN部署中的客户端延迟。它通过以下方式实现这一点:(i)没有指定的主副本,而是使每个副本能够对其从客户端接收的请求进行排序;(ii)在常见情况下仅使用三个通信步骤来排序请求;以及(iii)让客户端积极参与共识过程。此外,ezBFT最大限度地减少了拜占庭副本对整体系统性能的潜在负面影响。我们在TLA+中开发了ezBFT的形式化规范,表明它提供了BFT协议的经典属性,包括一致性,稳定性和活性,并开发了一个实现。我们的实验评估表明,ezBFT将客户端延迟提高了40%,超过了最先进的拜占庭容错协议,包括PBFT,Fab和Zyzzyva。
2019-04-12 cs.DC
Byzantine Fault Tolerance in Distributed Machine Learning : a Survey
拜占庭容错(Byzantine Fault Tolerance,BFT)是分布式机器学习(Distributed Machine Learning,DML)中最具挑战性的问题之一,其定义为容错系统在恶意组件存在的情况下的恢复能力。拜占庭故障仍然很难处理,因为它们的不受限制的性质,这导致生成任意数据的可能性。在DML中实现BFT的研究工作一直在进行。最近的一些研究考虑了DML中的各种BFT方法。然而,有些方面是有限的,如少数的方法分析,并没有分类的技术中使用的研究方法。在本文中,我们提出了一个调查的最新工作围绕BFT在DML,主要是在一阶优化方法,特别是随机梯度下降(SGD)。我们强调关键技术以及基本方法。我们提供了一个说明性的描述中使用的技术在DML的BFT,BFT方法的基本技术的背景下,提出了一个分类。这种分类是建立在特定的标准,如通信过程,优化方法和拓扑结构设置,这些标准表征了未来应对开放挑战的工作方法
2022-12-04 cs.DC
Self-Stabilization and Byzantine Tolerance for Maximal Independent Set
我们分析了一般网络中瞬时故障和拜占庭故障对最大独立集构造的影响。我们采用Turau \cite{turau2007linear}提出的自稳定算法来计算这样的顶点集。我们的算法是自稳定的,也适用于更困难的情况下,任意拜占庭故障。拜占庭节点可以阻止靠近它们的节点在任意长的时间内参与独立集。我们通过关注所有节点的集合来确定它们的影响范围,这些节点不包括距离为1或更小的拜占庭节点,也不包括距离为2的一些节点。据我们所知,我们提出了第一个算法容忍下公平分布式守护进程的瞬态和拜占庭故障。我们证明了该算法在$ \mathcal O(Δn)$轮内收敛,其中$n$和$Δ$分别是网络的大小和最大度。此外,我们提出了一个修改后的版本,该算法的匿名系统下的对抗分布式守护进程收敛在$ \mathcal O(n^{2})$预期的步骤数。
2021-11-16 cs.DC
Availability Evaluation of IoT Systems with Byzantine Fault-Tolerance for Mission-critical Applications
本研究针对关键任务物联网系统,提出基于连续时间马尔可夫链的拜占庭容错可用性分析模型,发现可用性与节点数成反比,且故障率与修复率之比增强此关系。
2023-06-27 cs.DC
Byzantine Fault-Tolerance in Federated Local SGD under 2f-Redundancy
EPFL(洛桑联邦理工学院);Virginia Tech(弗吉尼亚理工大学);Georgetown University(乔治城大学)
我们考虑联邦机器学习中的拜占庭容错问题。在这个问题中,该系统包括多个代理,每个代理具有本地数据,以及可信的集中式协调器。在无故障设置中,代理与协调员合作,以找到一个最小的聚合的本地成本函数定义在他们的本地数据。我们考虑的情况下,一些代理($f$出$N$)是拜占庭故障。这样的代理不需要正确地遵循规定的算法,并且可以将任意的不正确的信息传递给协调器。在拜占庭代理人的存在下,一个更合理的目标,为非故障代理人是找到一个最小的总成本函数只有非故障代理人。这个特定的目标通常被称为精确容错。最近的工作表明,精确的容错是可以实现的,如果只有当非故障代理满足属性的$2f$ -冗余。现在,在此属性下,已知的技术赋予精确的容错的经典随机梯度下降(SGD)算法的分布式实现。然而,我们不知道联邦本地SGD算法的任何此类技术-联邦机器学习更常用的方法。为了解决这个问题,我们提出了一种新的技术命名为比较消除(CE)。我们表明,在$2f$冗余下,联邦本地SGD算法与CE确实可以获得精确的容错在确定性设置时,非故障代理可以准确地计算其本地成本函数的梯度。在一般的随机情况下,当代理只能计算无偏噪声估计的局部梯度,我们的算法实现了近似容错近似误差成正比的方差的随机梯度和拜占庭代理的分数。
2021-08-26 cs.DC cs.LG
Proactive Service Migration for Long-Running Byzantine Fault Tolerant Systems
在本文中,我们描述了一种新的主动恢复计划的基础上,服务迁移的长期运行拜占庭容错系统。主动恢复是确保容错系统长期可靠性的重要方法,这些系统受到恶意对手的持续威胁。我们的主动恢复方案的主要好处是减少了漏洞窗口。这是通过从主动恢复的关键路线中删除耗时的重新启动步骤来实现的。我们的基于迁移的主动恢复在副本之间进行协调,因此,它可以自动调整以适应不同的系统负载,并避免在以前的工作中可能发生的过多并发主动恢复的问题。此外,快速主动恢复还显著提高了系统在出现故障时的可用性。
2008-03-11 cs.DC
Hamster: A Fast Synchronous Byzantine Fault Tolerance Protocol
Hamster协议利用编码技术降低通信复杂度并提升同步拜占庭容错性能,在吞吐量和延迟上优于Sync HotStuff,且对同步性依赖更弱。
2024-09-29 cs.DC
Maximum Metric Spanning Tree made Byzantine Tolerant
自稳定是一种通用的容错方法,因为它允许分布式系统从任意破坏系统中所有存储器内容的任何瞬时故障中恢复。拜占庭容忍是分布式系统的一个有吸引力的特性,它允许处理任意恶意行为。本文重点研究的系统是自稳定和拜占庭宽容。我们认为,在这种情况下,构建一个最大度量树的著名问题。已知将这两个性质结合会导致许多不可能的结果。在本文中,我们提供了关于在存在瞬时和(永久)拜占庭故障的情况下构建最大度量树的前两个不可能性结果。然后,我们提供了一个新的自稳定协议,提供了任意数量的拜占庭故障的最佳遏制。
2011-04-28 cs.DC
Reliable Communication in a Dynamic Network in the Presence of Byzantine Faults
我们考虑以下问题:两个节点希望在一个动态的多跳网络中可靠地通信,其中一些节点已经受到损害,并可能有一个完全任意的和不可预测的行为。这些节点被称为Byzantine。我们考虑两种情况下,密码学是可用的和不可用的。我们证明的必要和充分条件(即最弱的可能条件),以确保在这种情况下可靠的通信。我们的证明是建设性的,因为我们提供了拜占庭弹性算法的可靠通信是最佳的,我们的不可能性的结果。在第二部分中,我们在三个案例研究中调查了我们的条件的影响:参与者在会议中互动、在网格上移动的机器人和地铁中的代理。我们的模拟表明,在这些情况下使用我们的算法进行可靠的通信有明显的好处。
2015-02-16 cs.DC cs.DS cs.NI
Strengthened Fault Tolerance in Byzantine Fault Tolerant Replication
拜占庭容错(BFT)状态机复制(SMR)是构建许可区块链系统的重要构建块。与Nakamoto Consensus相比,任何区块都可以在区块链中获得更高的保证,在BFT SMR中,任何提交的区块都是安全的,具有固定的弹性阈值。在本文中,我们研究加强容错(SFT)在BFT SMR部分同步下,它提供了逐渐增加的弹性保证(如中本共识)在一个乐观的时期,当网络同步和拜占庭故障的数量是小的。此外,即使在乐观期之后,已提交的块也可以容忍超过三分之一(高达三分之二)的腐败。与需要二次消息复杂度的现有最佳解决方案灵活BFT相比,我们的解决方案保持了最先进的BFT SMR协议的线性消息复杂度,并且只需要边际簿记开销。我们实现了我们的解决方案在开源的Diem项目,并给出实验结果,证明其效率在现实世界的情况下。
2021-01-11 cs.CR cs.DC
Alea-BFT: Practical Asynchronous Byzantine Fault Tolerance
传统的拜占庭容错(Byzantine Fault Tolerance,BFT)状态机复制协议假定部分同步模型,从而导致领导者副本驱动协议并且在超时之后被替换的设计。最近,我们目睹了异步BFT协议的激增,这些协议使用随机化来消除对消息传递时间界限的假设,使它们对不利的网络条件更具弹性。然而,这些协议由于其立方通信成本、使用昂贵的原语和整体协议复杂性,在广泛的场景中仍然不实用。在本文中,我们提出了Alea-BFT,第一个异步BFT协议,以实现二次通信复杂性,使其能够扩展到大型网络。Alea-BFT带来了经典协议的关键设计见解,将部分工作集中在单个指定副本上,并将此原则纳入两阶段流水线设计中,由指定副本领导的高效广播,然后是廉价的二进制协议。我们在4大洲的10个站点上评估了我们的原型实现,我们的结果表明,所提出的设计具有显著的可扩展性。
2022-02-04 cs.DC
Self-Stabilization, Byzantine Containment, and Maximizable Metrics: Necessary Conditions
自稳定是一种通用的容错方法,因为它允许分布式系统从任意破坏系统中所有存储器内容的任何瞬时故障中恢复。拜占庭容忍是分布式系统的一个有吸引力的特性,它允许处理任意恶意行为。我们认为,在这种情况下,构建一个最大度量树的著名问题。将这两个属性结合起来会导致一些不可能的结果。在本文中,我们提供了两个必要条件,构建最大度量树存在瞬态和(永久)拜占庭故障。
2011-03-17 cs.DC
Formal Verification of Blockchain Byzantine Fault Tolerance
为了实现区块链,现在的趋势是集成一个非平凡的拜占庭容错共识算法,而不是等待接收块来决定最长分支的开创性想法。经过十年的存在,区块链现在交易大量有价值的资产,一个简单的分歧可能导致灾难性的损失。不幸的是,区块链中使用的拜占庭共识解决方案最多只能“手工”证明是正确的,因为我们不知道它们中的任何一个已经过正式验证。在本文中,我们提出了两个贡献:(i)我们通过列出区块链共识的六个漏洞来说明问题的严重性,包括两个新的反例;(ii)然后我们使用ByMC模型检查器正式验证了Red Belly Blockchain的两个拜占庭容错组件。首先,我们在116行代码中指定一个简单的广播原语,该原语在双核Intel机器上在40秒内得到验证。然后,我们在276行代码中指定了一个区块链共识算法,并使用MPI在64核AMD机器上在17分钟内进行了验证。最后,我们认为,现在正式验证区块链共识协议的正确性变得相对简单和重要。
2019-10-14 cs.DC
Self-stabilizing Byzantine Fault-tolerant Repeated Reliable Broadcast
我们研究了一个著名的通信抽象称为拜占庭可靠广播(BRB)。这种抽象是容错分布式系统的设计和实现的核心,因为许多容错分布式应用程序需要在消息传递上具有可证明保证的通信。我们的研究重点是容错实现的消息传递系统,容易出现进程故障,如崩溃和恶意行为。在PODC 1983年,Bracha和Toueg,简称BT,解决了BRB问题。BT具有最佳的弹性,因为它可以处理t <n/3的拜占庭进程,其中n是进程的数量。目前的工作旨在设计一个更强大的解决方案比BT扩展其故障模型与自稳定,一个有力的概念容错。除了容忍拜占庭和通信故障之外,自稳定系统还可以在任意瞬时故障发生后恢复。这些故障表示违反了系统设计运行所依据的假设(假设算法代码保持完整)。我们建议,据我们所知,第一个自我稳定拜占庭容错(BFT)的解决方案,重复BRB在无签名的消息传递系统(以下BT的问题规范)。我们的贡献包括BT的自稳定变化,解决了异步系统的单实例BRB。我们还考虑了单实例BRB实例的回收问题。我们的无时间系统的自稳定BFT回收促进了预定义数量的BRB调用的并发处理,通过这种方式,可以作为自稳定BFT共识的基础。
2022-10-03 cs.DC
Byzantine Fault-Tolerant Min-Max Optimization
本文研究对抗性操纵下的Byzantine容错min-max优化问题,提出简单算法、近似算法及分布式算法,并给出输出界限,是首个解决该问题的研究。
2024-02-16 cs.DC
DuoBFT: Resilience vs. Performance Trade-off in Byzantine Fault Tolerance
本文提出了DuoBFT,拜占庭容错协议,使用可信组件提供提交决策的混合故障模型,除了提交决策的BFT模型。通过这样做,它使客户端能够为其命令选择响应故障模型。在内部,DuoBFT在混合模型和拜占庭模型下提交每个客户端命令,但由于混合提交比BFT提交需要更少的通信步骤,并且使用更小的法定人数,因此客户端可以从混合模型中的低延迟提交中受益。DuoBFT使用通用的视图更改协议来处理两种故障模型。为了实现这一目标,我们启用了一个概念,称为灵活的法定人数在混合故障模型中,通过重新审视混合协议中的法定人数交集要求。灵活的法定人数技术使得能够具有与BFT视图改变法定人数相同大小的混合视图改变法定人数。这为在单个统一协议中有效地组合两种故障模型铺平了道路。我们对广域部署的评估表明,DuoBFT可以在不牺牲吞吐量的情况下提供比现有协议低30%延迟的混合提交。就绝对值而言,DuoBFT在地理上复制的部署中提供低于200毫秒的延迟。
2022-02-08 cs.DC
Rendezvous on a Line by Location-Aware Robots Despite the Presence of Byzantine Faults
一组移动机器人被放置在一条无限长的直线上。这些机器人配备有GPS设备,它们可以在线路上将自己的位置传达给中央机构。该集合包含一个未知的“间谍”子集,即,拜占庭式机器人,它们和正常的机器人没有区别。非故障机器人集合需要在尽可能短的时间内会合以执行某项任务,而拜占庭机器人可能会尽可能长地延迟它们的会合。中央权威机构面临的问题是确定所有机器人的轨迹,以便最小化非故障机器人重新确认的时间。必须在不知道哪些机器人有故障的情况下确定轨迹。我们的目标是尽量减少之间的竞争比所需的时间,以实现第一次会合的非故障机器人和这样的会合发生的假设下,故障机器人在开始时是已知的所需的时间。我们提供了一个有界的竞争比算法,中央权威机构只被告知的初始机器人的位置,而不知道哪些或有多少是错误的。当中央权威机构知道拜占庭机器人数量的上限时,我们提供了具有更好竞争比的算法。在某些情况下,我们能够证明这些算法是最优的。
2017-07-21 cs.DC
No Need for Recovery: A Simple Two-Step Byzantine Consensus
在本文中,我们给出了一个确定性的两步拜占庭共识协议,实现安全性和活性。两步拜占庭共识协议只需要两个通信步骤,在没有故障的情况下提交。大多数两步拜占庭共识协议利用乐观主义,并在出现故障时需要恢复协议。在本文中,我们给出了一个简单的两步拜占庭共识协议,不需要一个恢复协议。
2019-11-23 cs.DC
Two-Fold Byzantine Fault Tolerance Algorithm: Byzantine Consensus in Blockchain
针对区块链中拜占庭故障检测受故障节点数量限制的问题,提出一种受社会范式启发的双重拜占庭容错算法,通过受信任且完全受监控的通信子过程检测拜占庭节点,检测概率超过95%。
2025-04-22 cs.DC cs.NI
Self-Stabilizing Replicated State Machine Coping with Byzantine and Recurring Transient Faults
本文提出首个同时具备拜占庭容错、反复瞬时容错、准确性和自稳定能力的重复拜占庭协议,可从任意配置恢复一致性,并明确给出多类故障下的容忍界。
2025-06-15 cs.CR cs.DC
Integrity-Enhancing Replica Coordination for Byzantine Fault Tolerant Systems
强副本一致性通常通过编写确定性应用程序或使用各种机制来呈现副本确定性来实现。有大量的工作是关于如何在良性故障模型下使副本具有确定性。然而,当副本可能会受到恶意故障,以前的大部分工作不再有效。此外,副本的确定性通常被认为是有害的,从安全的角度来看,对于许多应用程序,它们的完整性很大程度上取决于它们的一些内部操作的随机性。这就需要新的方法来实现副本的一致性,同时保持副本的随机性。在本文中,我们提出了两个这样的方法。一种是基于拜占庭协议,另一种是基于阈值抛硬币。每种方法都有其优点和缺点。我们比较了这两种方法的性能,并概述了各自的最佳使用场景。
2008-03-11 cs.DC
A Sufficient Condition for Gaining Belief in Byzantine Fault-Tolerant Distributed Systems
本文针对拜占庭容错分布式系统,提出智能体从自身历史推断正确信念的充分条件及有限时间检查过程,为高效协议开发与正确性证明奠定基础。
2023-07-11 cs.DC cs.MA
Byzantine Geoconsensus
我们定义和调查的共识问题的一组$N$过程嵌入在$d$维平面,$d\geq 2$,我们称之为{\em geoconsensus}问题。这些进程具有独特的坐标,可以通过口头信息相互沟通。在文献中的过程被单独认为是拜占庭,它被认为是由一个有限大小的凸故障区域$F$所覆盖的所有过程是拜占庭的,可能有一个或多个过程中的故障区域。类似地,在文献中,正确的过程不知道哪些过程是拜占庭的,假设故障区域位置对于正确的过程是未知的。我们证明了地理共识是不可能的,如果所有的过程可能被最多三个领域,其中一个是一个故障区。考虑到2维嵌入,在建设性的一面,为$M \geq 1$故障区域$F$的任意形状的直径$D$,我们提出了一个共识算法,容忍$f\leq N-(2M+1)$拜占庭进程提供了$9M+3$进程之间的成对距离大于$D$。对于具有侧$\ell$的正方形$F$,我们提供了一种共识算法,该算法提升了这种成对距离要求,并容忍$f\leq N-15M$拜占庭进程,因为所有进程都被至少与$F$大小相同的$22M$轴对齐的正方形覆盖。对于直径为$\ell$的圆形$F$,如果所有进程至少被$85M$圆覆盖,则该算法容忍$f\leq N-57M$拜占庭进程。然后,我们将这些结果扩展到各种大小组合的故障和非故障领域以及$d$维过程嵌入,$d\geq 3$。
2020-10-06 cs.DC
Discovering Network Topology in the Presence of Byzantine Faults
研究了任意异步网络中的拜占庭鲁棒拓扑发现问题。我们正式地陈述问题的弱版本和强版本。弱版本要求每个节点发现网络的拓扑结构,或者至少有一个节点检测到故障节点的存在。强版本要求每个节点发现拓扑而不管故障。我们专注于这些问题的非加密解决方案。我们探索他们的边界。我们证明了弱拓扑发现问题是可解的,只有当网络的连通性超过系统中的故障数。同样,我们表明,强版本的问题是可解的,只有当网络的连通性是故障数的两倍以上。我们提出的解决方案,这两个版本的问题。所提出的算法匹配已建立的图的连通性界限。该算法不需要单个节点知道网络的直径或大小。这两个程序的消息复杂度是低多项式相对于网络的大小。我们描述了我们的解决方案可以扩展到添加属性的终止,处理拓扑结构的变化,并执行邻域发现。
2006-11-22 cs.DC cs.DS cs.OS
Aleph: A Leaderless, Asynchronous, Byzantine Fault Tolerant Consensus Protocol
在本文中,我们提出了Aleph,一个领导者,完全异步,拜占庭容错共识协议,顺序进程之间交换的消息。它基于偏序集的分布式构造和在其扩展到全序上达成共识的算法。为了达成共识,进程仅基于数据结构的本地副本执行计算,然而,它们必然以相同的结果结束。我们的算法使用双阈值抛硬币计划作为随机化策略,并建立了预期的常数轮数的协议。此外,我们还介绍了一种快速验证消息的方法,这种方法可以在确定总排序之前发生。此版本的协议已弃用。当前版本见arXiv:1908.05156。
2019-08-29 cs.DC
The fault-tolerant cluster-sending problem
传统上,能够容忍拜占庭行为的容错分布式系统的开发一直专注于支持完全复制设计的共识协议。然而,对于更复杂的高性能拜占庭分布式系统的发展,更专门的容错通信原语是必要的。在本文中,我们确定了一个基本的通信原语,并深入研究。具体来说,我们正式集群发送问题,发送消息从一个拜占庭集群到另一个拜占庭集群在一个可靠的方式的问题。我们不仅形式化这个基本问题,但也建立下界的崩溃故障和拜占庭故障下的复杂性这个问题。此外,我们开发实用的集群发送协议,满足这些下限,因此,具有最佳的复杂性。因此,我们的工作提供了一个坚实的基础,为进一步探索新的设计,解决在容错分布式系统中遇到的挑战。
2019-08-05 cs.DC
Flexible Byzantine Fault Tolerance
本文介绍了灵活的BFT,围绕两个支柱,更强的弹性和多样性的BFT共识解决方案设计的新方法。第一个支柱,更强的弹性,涉及一个新的断层模型,称为活的,但腐败的断层。存活但损坏的副本可以任意地偏离协议以试图破坏协议的安全性。但是,如果它们不能破坏安全性,它们就不会试图阻止协议的活动性。将活跃但损坏的故障组合到模型中,Flexible BFT比纯拜占庭故障模型更能适应更高的损坏级别。第二个支柱,多样性,设计共识解决方案,其协议记录用于在不同的信念下绘制不同的提交决策。通过这种分离,相同的灵活BFT解决方案支持同步和异步信念,以及拜占庭和存活但损坏的故障的不同弹性阈值组合。在技术层面上,Flexible BFT使用两个新想法实现了上述结果。首先,它介绍了一个同步BFT协议,其中只有提交步骤需要知道网络延迟的界限,因此副本执行协议没有任何同步的假设。其次,它引入了一个概念,称为灵活的拜占庭法定人数解剖不同的法定人数在现有的共识协议中的作用。
2019-05-30 cs.CR cs.DC
Self-stabilization and byzantine tolerance for maximal independent
本文提出首个在公平分布式守护进程下同时容忍瞬态故障和拜占庭故障的最大独立集自稳定算法,并给出其收敛上界及匿名系统下的改进版本。
2024-06-10 cs.DC
Basilic: Resilient Optimal Consensus Protocols With Benign and Deceitful Faults
拜占庭共识问题一直是设计安全分布式系统的关键。然而,这是特别困难的,主要是由于任意行为的拜占庭进程的存在和一般网络中的未知消息延迟。虽然众所周知,一旦$n/3$拜占庭进程失败,安全性和活性都有风险,但很少有工程试图精确地描述产生终止违规的故障中产生安全违规的故障。在本文中,我们提出了一个新的下限的共识问题的可解性区分欺骗性故障违反安全和良性故障违反终止更一般的拜占庭故障,我们称之为拜占庭欺骗良性故障模型。我们发现,如果$n\leq 3t+d+2q$与$t$拜占庭进程,$d$欺骗进程,和$q$良性进程不能解决共识。此外,我们表明,这个界限是紧的,通过提出的Basilic类的共识协议,解决共识时,$n > 3t+d+2q$。这些协议的不同之处在于它们在继续之前等待接收消息的进程的数量。因此,这些协议中的每一个都更适合于某些应用,这取决于良性或欺骗性故障的优势。最后,我们在需要解决最终共识的较弱问题的区块链背景下研究了Basilic类共识协议的容错。我们证明了Basilic仅用$n > 2t+d+q$解决了这个问题,从而展示了它如何加强区块链安全性。
2022-04-19 cs.DC
Self-stabilizing Byzantine- and Intrusion-tolerant Consensus
容错分布式计算中最著名的问题之一是一致性问题。它被证明抽象了无数的问题,在这些问题中,过程必须就单一值达成一致。共识应用程序包括云或区块链环境的基本服务。在这种具有挑战性的环境中,恶意行为通常被建模为对抗性拜占庭故障。在OPODIS 2010上,Mostefaoui和Raynal(简称MR)提出了一种拜占庭和入侵容忍的共识解决方案,其中决定的值不能是仅由拜占庭进程提出的值。除了这个有效性属性之外,MR还具有最佳的弹性,因为它可以处理多达t < n/3的拜占庭进程,其中n是进程的数量。我们注意到,MR提供了这个多值共识对象(它接受从具有有限数量值的集合中获取的建议),假设单个二元共识对象(它接受从集合{0,1}中获取的建议)可用。这项工作,重点是多值共识,旨在设计一个更强大的解决方案比MR。我们的建议扩展MR的故障模型与自稳定,一个有力的概念容错。除了容忍拜占庭和通信故障外,自稳定系统还可以在任意瞬时故障发生后自动恢复。这些故障表示违反了系统设计运行所依据的假设(假设算法代码保持完整)。据我们所知,我们提出了第一个自我稳定的解决方案,入侵容忍多值共识的异步消息传递系统容易拜占庭故障。
2022-09-10 cs.DC
On Byzantine Containment Properties of the $min+1$ Protocol
自稳定是一种通用的容错方法,因为它允许分布式系统从任意破坏系统中所有存储器内容的任何瞬时故障中恢复。拜占庭容忍是分布式系统的一个有吸引力的特性,它允许处理任意恶意行为。我们认为,在这种情况下,众所周知的问题,构建一个广度优先的生成树。结合这两个属性证明是困难的:我们证明,这是不可能包含拜占庭节点的影响,在严格或强烈稳定的方式。然后,我们采用较弱的方案的拓扑意识严格稳定,我们提出了一个类似的削弱强稳定。我们证明了经典的$min+1$协议具有最佳的拜占庭包容性的这些标准。
2010-05-28 cs.DC
Revisiting Optimal Resilience of Fast Byzantine Consensus (Extended Version)
人们普遍认为,拜占庭容错解决方案的共识是显着慢于他们的崩溃容错同行。事实上,在最广为人知的拜占庭容错共识协议PBFT中,需要三个消息延迟来决定一个值,而Paxos中只有两个。这激发了对快速拜占庭共识算法的搜索,该算法可以在仅仅两个消息延迟\emph{in the common case}之后产生决策,例如,假设当前的领导者是正确的,并且没有被正确的过程所怀疑。(最佳)两步延迟带来了较低的弹性成本:快速拜占庭共识需要更多的进程来容忍相同数量的故障。特别是,$5f+1$进程被认为是容忍$f$拜占庭失败所必需的。在本文中,我们提出了一个快速的拜占庭共识算法,依赖于$5f-1$进程。此外,我们证明了$5f-1$是紧下界,纠正了早期工作中的一个错误。虽然对于大的$f$值,$2$过程的差异可能看起来微不足道,但对于较小规模的系统,它可能是至关重要的。特别是,对于$f=1$,我们的算法只需要$4$进程,这是最佳的任何(不一定是快速的)部分同步拜占庭共识算法。
2021-07-27 cs.DC