首页   >  关于我们   >  新闻中心   >  CSA发布 | 国内首份区块链共识算法与共识安全系统性指导文件
返回
CSA发布 | 国内首份区块链共识算法与共识安全系统性指导文件
  • 2023.04.06
  • 4010

从早期的分布式一致性算法的缓慢发展到现如今区块链共识的百花齐放,共识算法的发展已经走过了四十年左右的时光。随着区块链技术的快速发展,共识算法也在不断演进和提高,不同的共识算法的侧重点不同,因此它们所面临的问题、环境也不一样。

 

为促进区块链技术和安全领域的交流与合作,云安全联盟大中华区发布《共识算法与共识安全白皮书》,该白皮书是国内首份系统性地探讨区块链共识算法与共识安全问题的重要文献。白皮书从理论分析、实现分析和应用部署三个方面对各类共识算法进行了详细地测试和评价,并以超级账本(Hyperledger)和以太坊(Ethereum)项目为例,探索这些项目在共识算法安全领域的实践经验。

 

(文末附白皮书原文下载链接)

 

 

NO.1 共识算法的原理和分类
 

共识算法是为了实现分布式一致性协议而产生的一系列流程与规则。当分布在不同地域的节点都按照这套规则进行协商交互之后,最终总能就某个问题得到一致的决策,从而实现分布式系统中不同节点的一致性。共识算法可以根据不同的特点和应用场景进行分类,常见的分类方法包括CFT 类共识算法、经典拜占庭共识和开放BFT类共识等三大类。

 

白皮书涵盖了40+的共识算法,目前主流的共识算法,如工作量证明(Proof of Work, PoW)、权益证明(Proof of Stake, PoS)等等,各有其优、缺点与适用对象。在区块链技术领域,不可小觑共识算法的重要地位。

 

 

NO.2 共识算法安全性分析
 

共识算法安全性分析是指对分布式系统中的共识算法进行安全性分析,以保证其能够在分布式系统中正确运行。白皮书包括以下三部分内容:

 

1、安全建模:共识算法的安全建模是指对共识算法进行形式化描述,以便于进行安全性分析。一个安全的共识算法应满足:

  • 一致性(Agreement/Consistency/ Integrity),所有的诚实节点要么都接受某个值,要么都拒绝某个值;
  • 终止性(Termination),所有的诚实节点最终都会对某个值达成共识;
  • 合法性(Validity),所有诚实节点达成共识的值都是由诚实节点提议的。

 

2、分析方法:共识算法的分析方法是指对共识算法进行安全性评估的具体方法,常见的分析方法包括经典分布式理论、协议分析方法和区块链建模三种。

  • 经典分布式理论:FLP定理、CAP理论、BASE理论;
  • 协议分析方法:Simulation-Based Approach与Game-Based Approach;
  • 区块链建模:对异步网络环境下的区块链协议给提供形式化的模型和定理。

 

3、攻击方法:白皮书通过对共识算法安全威胁进行全面的调研,给出了19种攻击方法的分类和分析,共识算法的攻击方法是指攻击者可能采用的方式来破坏共识算法的正常运行。常见攻击方法:

  • 女巫攻击:在对等网络中节点通过创建多个虚假身份标识进而提高系统中所控制节点的比例,从而对系统进行破坏。解决办法:需要引入基于PoW/PoS/PoSpace等的准入机制,提高节点复制身份的成本,从而避免女巫攻击的发送;
  • 双花攻击:攻击者通过某些方法将之前确认的交易推翻,一般有三种方法:Race Attack、Finney Attack、51% Attack;解决办法:引入了时间戳和UTXO(未花费的交易输出)等技术,使得区块链上的交易记录不可篡改;
  • 51%攻击:网络中恶意节点的算力或权益占到了50%以上,解决办法:增加算力(使得攻击者需要更多的算力才能进行攻击)、提高确认数(交易确认数越多,交易被篡改的可能性就越小)等。

 

 

NO.3 共识安全的测试方法和标准

白皮书从共识算法理论和实现两方面展开安全测试和分析,理论分析主要从算法本身展开分析,不涉及算法的代码实现和具体应用部署环境。实现分析从算法的具体参数、代码实现、应用部署等都方面进行安全分析和测试。具体内容如下:

 

(1) 共识算法安全理论分析:考虑算法本身和参数方面是否存在安全缺陷,通过模拟方式测试、验证共识算法在网络部署时的安全性。

(2) 共识算法安全渗透测试和代码安全审查:测试算法实现中能否保证正确性和安全性。若无法同时满足链质量,激励兼容性、作恶收益、审查敏感性这四个指标,则该共识算法在实现过程较容易受到攻击。

(3) 共识算法安全CheckList:包括对算法参数进行检查、对算法进行模拟检查、对算法实现过程进行检查等步骤。

 

 

NO.4最佳实践:以太坊共识算法安全
 

以太坊共有4个阶段,即前沿、家园、大都会和宁静,前三个阶段采用的都是PoW共识机制,而在第四阶段采用的是PoS共识机制,名为Casper。PoS旨在解决PoW的缺点:能源消耗过大;鼓励矿工投资专门的硬件,违背了去中心化的理念;存在自私挖矿等攻击。PoS可以被描述为“虚拟挖矿”,矿工购买的是ETH而不再是硬件和电力,共识机制根据矿工持有的代币数量成比例地分配投票权,而不是算力。因为不再用算力进行挖矿,因此可以说挖矿几乎“不用付出任何代价”,那么矿工很可能会朝着多个方向同时挖矿以增加其收益,这样会不利于达成共识。因此Casper是要求矿工必须锁定他们的一些币作为保证金。当他们发现一个可以被加到链上的区块时,就会下赌注验证。如果区块成功上链,验证者可以得到相应比例的奖励。但是当验证者试图做一些恶意行为时,他们也会受到相应的惩罚,这样可以解决账本分叉的问题。

 

 

2022年9月15日,以太坊从工作量证明(POW)过渡到权益证明(POS),2023年4月13日将启用上海主网升级,实现质押提款功能,这是权益证明(POS)的又一大标志性事件,这样以太坊转成权益证明(POS)才算完成最后也是最重要的一环。

 

NO.5 未来展望
 

2023年,云安全联盟大中华区共识算法工作组将聚焦以下4个方向:

(1)针对新兴的共识算法如结合分片技术的公式算法等进行深入研究,并将其纳入到白皮书中进行介绍。

(2)加强对现实中各种可能出现情况的案例分析,以便更好地指导区块链开发者、投资者、组织机构在实践中应对各种风险。

(3)探索更加先进、高效的安全测试方法和标准,以适应区块链技术快速发展带来的挑战。

(4)研究能够实现去中心化程度、安全性和运行效率更高的技术,如:DVT分布式验证技术,提高验证器的安全性。

 

NO.6 区块链课程推荐
 

云安全联盟大中华区推出了区块链专业人员认证(Certified Blockchain Professional,简称“CBP”),(点击跳转详情)涵盖最新的区块链原理与实践知识。作为CSA区块链首个个人安全认证,CBP旨在为IT从业人员在数字化时代下提供全面的区块链原理、安全思维及应用区块链技术解决网络信息安全的问题。

 

在国内Web3.0和元宇宙增速发展的今天,离不开区块链人才,对于想投身Web3.0的从业人员来说,不论你是选择金融类还是选择技术型岗位,建议多学习区块链专业课程,Keep building!

 

认证培训可咨询

CSA Training

 

 

NO.8 结论
 

本文对《共识算法与共识安全白皮书》进行了详细解读,白皮书为我们提供了一个系统而深入地认识并评估各种类型共识算法及其安全性能的桥梁,也为我们展示了区块链技术在不断进步中所面临的挑战与机遇。希望能为您提供有关共识算法和共识安全的有益信息,帮助您更好地理解和应用这项技术。

 

致谢

本白皮书主要由CSA GCR 区块链安全工作组下的共识算法安全小组的专家撰写,并由CSA专家委员会审核,感谢以下专家的贡献(排名不分先后):

原创作者:陈 钟、关 志、王 珂

审核专家:黄连金、江洪、郭鹏程、 姚 凯

本网站使用Cookies以使您获得最佳的体验。为了继续浏览本网站,您需同意我们对Cookies的使用。想要了解更多有关于Cookies的信息,或不希望当您使用网站时出现cookies,请阅读我们的Cookies声明隐私声明
全 部 接 受
拒 绝