版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
共识机制区块链体系结构什么是共识机制共识机制在区块链技术中发挥着基石般的作用,类似于一个国家的法律,它确保区块链世界的有序运转。每个参与者都持有一份记录所有交易的账本,保证信息的透明和可追溯。然而,由于新交易的信息传播存在时间差,一些不良行为者可能会利用这个机会散布虚假信息。因此,需要通过共识机制来验证所有收到的信息,并确定哪些信息是正确的。在去中心化的加密货币世界中,P2P网络的健康运作依赖于广泛分布的节点。吸引用户成为网络节点并积极参与维护,需要一套有效的激励机制。如何选择特定节点来写入新的交易数据、确定写入的时机,以及确保一旦数据被写入就无法被篡改(确保数据的不可逆性),这些关键问题的答案都在共识机制中找到。共识机制不仅是去中心化网络达成一致的桥梁,也是动态平衡参与者利益、确保网络安全和数据不可逆性的关键。通过这套机制,区块链能够在没有中央权威的情况下,实现数据的一致性和网络的稳定运行。在区块链技术中,共识机制是一种依赖于参与者集体见证的过程,通过遵循预定的规则对集体见证的数据进行综合分析,最终达成一个由所有参与者共同认可的共识结果。这种机制确保了区块链网络中的数据一致性和可信性。在公链环境下,“群体”即能够参与共识过程的节点范围,是动态变化的。节点的加入与退出、硬件状态变化(如开关机)、软件运行异常、以及私钥的意外问题等因素,均可影响节点参与共识过程的能力。因此,公链的参与者群体具有高度的流动性和变动性。什么是共识机制相比之下,在私链和联盟链中,“群体”通常指固定的参与节点集合。虽然总体上参与者范围相对稳定,但仍可能受到一些不可预测因素的影响,导致轻微的变动。例如,节点的故障或网络连接问题可能暂时影响某些节点的参与。分布式系统中的共识VS区块链系统中的共识在分布式系统中,共识机制确保即便面对节点故障、网络延迟、网络分区,或是遭受恶意节点攻击的情况下,所有健康的节点也能对客户端的请求作出一致的响应,进而维护系统的整体一致性。这一机制对于确保分布式系统的可靠性和稳定性至关重要。区块链系统,作为一种特殊形式的分布式账本技术,其核心任务在于通过节点间的协作验证、更新和维护一个对外展现一致性的分布式账本。区块链中的共识机制通过一套协议或规则来实现,包括区块的构造、出块节点的选择、区块的验证,以及区块的最终确认并加入链中。共识算法作为区块链技术的核心,不仅影响系统的整体性能,还决定了区块链可以被应用于哪些领域。工作量证明:PoW是区块链中最初并广泛使用的共识算法,特别是由比特币采纳。它要求节点通过解决复杂的数学难题来证明其工作量,成功的节点获得新区块的创建和记账权。这一过程通常称为“挖矿”,需消耗大量的计算资源,保证了网络的安全性和去中心化特性。权益证明:PoS算法基于节点所持有的代币数量来分配记账权,即持币越多的节点获得生成新区块的机会越大。这种机制相比于PoW,大幅降低了能源消耗,同时也促进了持币者的网络参与度。3委托权益证明:DPoS是PoS的一种变体,它允许持币者投票选举出少数代表节点(通常称为见证人),由这些见证人负责产生新的区块和验证交易。这种机制旨在提高网络的交易处理速度和效率,同时保持一定程度的去中心化。实用拜占庭容错算法:PBFT算法能够确保系统即使在有节点作恶或失效的情况下也能正常运行,通过在节点间进行多轮通信达成一致。这种算法特别适合对实时性和系统稳定性要求较高的场景,如金融和电子商务。构造新区块新区块上链广播并验证新区块选择出块节点交易请求区块链系统共识过程模型区块链系统共识算法的分类---区块链网络部署方式公有链、联盟链、私有链各自对网络节点的要求和信任不同,因此节点之间进行共识的系统基础也不同,按照区块链的部署方式,可以将区块链共识算法分为公有链共识算法、联盟链共识算法、私有链共识算法。公有链共识算法通常需要激励机制来保证节点积极参与共识过程从而保证安全性,也称作“激励共识算法”私有链中只允许授权节点参与出块过程,节点之间互信程度高,因此通过不需要依赖激励机制,也称作“非激励共识算法”基于工作量证明的共识算法中本聪在比特币系统中首次采用了基于工作量证明(PoW)的共识算法,要求比特币网络中的所有节点通过计算能力竟争出块权来保证分布式账本的一致性,同时由于付出了巨大的计算能力,因此大大提升了节点作恶的代价,再辅以对节点竞争到出块权力的激励机制,进而保障了共识过程的安全性。基于工作量证明的共识算法是最早也是到目前为止公认的最安全可靠的公有链共识算法,也是一个局部的最优的共识解决方案,解决了区块链最本质的去中心化不依赖第三方的问题。PoW算法的核心思想是利用计算机算力来完成对区块链的验证。在一个区块被创建并广播出去之前,需要先进行验证,而这个验证过程需要计算机完成一定量的工作,以证明其具有足够的“贡献”来获得区块链网络的控制权。具体而言,PoW算法通过难解的数学难题来限制区块的产生速度,每个新的区块都需要包含一个满足一定条件的难题的答案,而这个答案是通过尝试不同的随机值来得出的。一旦一个节点找到了答案,就可以广播出去,得到其他节点的认可,这样新的区块就被加入到区块链上了。PoW算法的特点是安全性高,因为它需要计算机完成一定量的工作才能得到控制权,攻击者需要具有足够的算力才能破解算法,这使得攻击成本极高。但是PoW算法也有一些缺点,包括资源浪费、效率低下等。POW的原理和特点POW---挖矿目的验证交易挖矿过程的一个主要目的是验证网络上进行的交易。通过挖矿,矿工将未经处理的交易打包进新的区块中。在一个区块被添加到区块链之前,它必须通过网络中其他节点的验证。这个验证过程包括检查交易的有效性,如签名是否有效,以及交易者是否拥有足够的资金进行交易。保护网络挖矿通过一个称为“工作量证明”(ProofofWork,PoW)的机制,确保网络的安全性。通过要求矿工解决一个复杂的数学难题,PoW机制使得对网络的恶意攻击变得极为困难和成本高昂。这是因为攻击者需要掌握超过网络总计算力50%以上的计算力,才能够操控或篡改区块链上的信息。POW---挖矿原理比特币PoW算法中的工作最计算的主要工作是寻找一个神奇的随机数(Nonce),使得以Nonce为参数的一部分进行的双SHA256哈希运算的结果小于一个事先设定好的目标值:SHA256[SHA256(版本号+前一区块哈希值+当前区块所包含交易的梅克尔树根+时间截+当前挖矿难度+Nonce随机值)]<目标值POW---挖矿过程收集交易:矿工从网络中收集未被记录的交易,形成一个交易池。构造区块:矿工将这些交易打包进新的区块。新区块还包含前一个区块的哈希值(这样形成了链的结构)和一个特殊的数字(nonce)。计算哈希值:矿工对包含nonce的区块信息进行哈希运算。如果计算出来的哈希值满足网络当前的难度要求(例如,以足够数量的零开始),这个区块就被认为是有效的。POW---挖矿过程难题求解:因为哈希函数的单向特性,矿工不能直接计算出满足条件的nonce。他们必须通过不断试错,逐一尝试不同的nonce值,直到找到一个有效的哈希值。区块广播和验证:一旦矿工找到了有效的哈希值,他们就会将这个新区块广播给网络中的其他节点。其他节点会验证新区块的有效性,包括交易的有效性和哈希值是否满足难度要求。链上确认:一旦被网络验证为有效,这个区块就会被添加到区块链上,矿工会获得相应的区块奖励(新发行的加密货币和交易费)。节点根据交易信息构造新区块的区块体计算并填写区块头的各项元数据,其中随机数Nonce置为1成功搜索到合适的随机数节点获得该区块的出块权节点向网络广播新区块随机数Nonce加1当前区块头的双SHA256哈希值小于目标值?否是比特币出块流程比特币系统的PoW算法的高超之处在于可以通过激励措施和难度调整来提高节点参与共过程的积极性,抵御各种攻击,从而保证区块链系统的持续正常运行。激励与难度调整矿工的收入:产生交易时,由交易发起方付给“矿工”一笔手续费,当“矿工”成功加入一个交易区块后获得。每当系统加入新区块时,会生成一定数目的比特币作为奖励。这个奖励最初是50个比特币,每隔210000个区块后减半,预计2140年比特币系统的上限2100万个比特币差不多可以全部产出。新难度=实际生成2016个区块的时间x旧难度/14天的秒数(预期2016个区块出块的时间)Pow的优缺点优点:安全性高:由于PoW算法需要参与者通过计算的方式解决难题,这个过程需要消耗大量的计算资源,一旦有人想要攻击该区块链系统,就需要花费大量的计算资源来攻击,因此攻击的成本非常高,保证了系统的安全性。公平性:PoW算法对于参与者是公平的,每个参与者都需要通过计算来解决问题,没有特权用户或组织,每个人都有平等的机会获得区块奖励。去中心化:PoW算法是一种去中心化的算法,没有中心化的机构或个人来控制整个系统,因此该算法可以保证区块链系统的去中心化特性。Pow的优缺点缺点:1.能源消耗大PoW的最大缺点是它需要大量的电力和计算资源来维持网络安全。随着区块链网络的增长,为了维护相同的安全性水平,所需的能源消耗会呈指数级增长。2.缩放性问题PoW机制使得区块链网络的交易处理速度受到限制。出于安全考虑,每个区块的大小和生成时间都有上限,这限制了网络的吞吐量,导致在高负载情况下出现交易拥堵和手续费上涨。3.不平等的奖励分配随着专业化挖矿硬件(如ASIC矿机)的出现,小规模矿工难以与大型矿池竞争。这导致挖矿奖励趋向于集中在少数参与者手中,与去中心化的初衷背道而驰。4.51%攻击的风险尽管实施成本高昂,但理论上如果攻击者能够控制超过网络50%的计算力,就能够实施51%攻击,篡改交易记录。虽然这种攻击对于大型网络来说几乎不可能发生,但对于小型或新成立的区块链网络来说风险较大。Pow的适用场景适用场景:对于需要高安全性的场景,如加密货币,PoW算法是一种比较合适的共识算法,可以保证系统的安全性。对于需要去中心化的场景,如去中心化交易所,PoW算法也是一种比较合适的共识算法。对于对能源消耗不敏感的场景,如存储文件、数据共享等,PoW算法也是一种可行的共识算法。PoS共识算法验证者的选择:
在PoS系统中,一个节点被选为验证者来创建新区块,这通常基于其持有的货币量和持有时间。在许多PoS系统中,选择过程是通过一种随机化算法来实现的,该算法考虑到了节点的财富(即其权益)和其他因素,如持币时间。权益的证明:
在被选中后,验证者会在创建新区块时展示其持有一定数量的货币。这意味着验证者必须有一定量的货币作为“抵押”来参与验证过程。如果验证者行为不端(比如尝试篡改区块链),他们可能会失去部分或全部抵押的货币。点点币中的PoS算法实现逻辑每个节点的币龄可以累积,其钱包中的每一个代币每天都可以产生1币龄。如某个用户拥有36枚代币,当持有50天后,其所有拥有的币龄为36*50=1800.当节点竞争出块权时,其用于竞争到出块权的币龄会被消耗掉。为了防止有用户临时购置大量代币抢夺出块权,PoS算法规定代币龄必须至少累积30天才可以使用。为了防止一个代币的币龄可以无限增长,还规定了一个代币的币龄累积90天就不可以再增加。以币龄作为权益依据,则每个矿工节点挖矿时进行的运算公式为“PROOFHASH”<币龄*目标值,其中PROOFHASH是使用区块头部数据和其他一些参数进行的双SHA256运算,和PoW类似。PoS的优点/缺点优点缺点能源效率高:与PoW相比,不需要大量计算工作,因此能源消耗显著降低。低股权资本的安全风险:总股权资本较低的网络可能更容易受到攻击。降低中心化风险:与PoW相比,不太可能导致权力集中,因为不需要昂贵的挖矿设备。财富集中:财富和控制倾向于在最富有的质押者中集中,可能导致网络寡头统治。对51%攻击的免疫力更强:通常需要恶意行为者拥有大量货币才能发动攻击,经济上不切实际。鼓励长期持有:鼓励持有加密货币以获得参与共识过程的能力,与网络的长期利益一致。DPoS共识算法DPoS(Delegated
Proof
of
Stake)授权权益证明,通过去中心的民主选举方式来先择出块节点。由见证人(Witness)节点来生成新的区块。每个节点根据自己拥有的代币数量相当于拥有股份权益,可以看作股东节点(Stakeholders)。持有权益的股东节点可以根据自己的意愿按照每股一张选票的方式给见证人投票,得到选票最多的前n个节点被选出来作为见证人负责生成新的区块。在EOS系统中采用DPoS。DPOS机制是POS机制的一个局部改进。考虑到数字资产份额高的主体和记账本身的技术能力(效率和精准)高的主体不一定重合,可以考虑份额拥有者将锁定的份额汇聚到若干个“超级节点”上,由这些“超级节点”代替份额拥有者行使记账权。超级节点的实际控制人是份额拥有者的受托代理。超级节点的数目大幅减少,但所代表的价值份额可能非常巨大,有可能做到提升效率和诚实记账两不误。DPoS共识算法DPOS架构示意图超級节点超級节点超級节点超級节点份额拥有者份额拥有者份额拥有者份额拥有者份额拥有者份额拥有者份额拥有者份额拥有者份额拥有者份额拥有者份额拥有者份额拥有者份额拥有者份额拥有者份额拥有者份额拥有者普通节点DPoS共识算法共识过程见证人选举阶段:拥有权益的股东节点,投票选出n个见证人节点为,每个见证人所获得的票数必须超过50%,因为50%被认为可以提供足够的去中心化程度。活跃的见证人按照固定的规则进行更新。2.见证人出块:每一次见证人会有2秒的固定时间来生成新的区块,如果不能在给定时间内完成,就换一个见证人造块。见证人每生成一个区块,都会付出的服务获得一定的代币作为报酬,而报酬的比例由股东节点选的代表(Delegate)节点设置。如果见证人无法产生新的区块,则不能获得报酬,造块失败会被记录下来,并可能导致见证人在后面的选举中失去造块资格。见证人按时出块成功后,会将新区块发给其他见证人进行验证。进一步提高效率可以期待依托超级节点可以产生更有趣的商业模式随着记账权和算力的集中,风险也在集中,少数超级节点在抵御大规模拒绝服务攻击和网络封锁方面表现出脆弱性,同质化的超級节点更是在同一个严重漏洞面前面临全军覆没的境地(参照360揭示EOS风险事件)
选举机制:在PoS中,验证者通常是通过算法随机选择的,依据其持币量和持币时间等因素。DPoS采用选举系统,其中持币者投票选举一定数量的代表(或见证人)来处理交易和创建新区块。角色与责任:PoS中的验证者个体对于验证和创建区块承担责任。D
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 加油站油气回收系统安装安全交底
- 2026施工升降机安装拆卸工(建筑特殊工种)考试题模拟题库及答案
- 2026年企业主要负责人安全培训考试题及参考答案
- 承台基坑开挖后预留钢筋保护方案
- 实验室气瓶存储使用管理指南
- 安全生产履职制度管理与协调保证措施
- 2026年艾梅乙职业暴露培训试题(附答案)
- 湖北省黄石市2026届高三上册9月起点考试数学试卷【附解析】
- 2026 湖南省新宁县起重机械指挥(Q1)证理论考试参考题库-含答案
- 2026年江苏省普通高中学业水平合格性考试生物真题(含标准答案及解析)
- 社区居民健康档案的建立与管理
- 2026秋小学湘美版美术四年级上册(新教材)教学计划附进度表
- 2026年吉安市行政服务中心招考易考易错模拟试题(共500题)试卷后附参考答案
- 2025年浙江省员额法官遴选面试考题及答案
- (2026年秋)人教版三年级上册数学教案
- 加气站应急预案
- 26秋六上语文1-8单元知识点总结(新版)
- 2026年轧钢厂精整安全事故案例分析
- 2026人教版五年级数学上册《有趣的密铺》课件
- 2026苏教版五年级数学上册第六单元第3课《3的倍数的特征》课件
- 2026秋教科版(新教材)小学科学六年级上册(全册)分层作业及答案附目录p149
评论
0/150
提交评论