每天我们都在中间看到区块链技术中的新事物。无论我们尝试掌握最新技术有多少,他们总是可以提供一些新的东西。有没有想过所有这些区块链技术的根源是什么?好吧,共识算法是这项革命性技术的主要根源.
区块链中的共识算法使所有区块链共识序列彼此不同。区块链网络在同一个空间中为成千上万的人提供便利。所以,他们怎么永远不会互相干扰或相互存在?
答案在于区块链网络的架构。该架构经过精心设计,共识算法是该架构的核心.
如果您真的想知道区块链共识序列是如何工作的,那么您必须比您想像的要深入得多。在本指南中,您将找到有关共识算法所需的所有知识。所以,让我们继续吧!
目录
第一章:什么是共识算法?
第二章:拜占庭容错问题
第三章:为什么需要共识算法?
第4章:区块链:去中心化网络的组织数据的骨架
第五章:共识算法:网络的灵魂
第6章:不同类型的共识算法
第7章:其他类型的共识算法
第八章:结论
第一章:什么是共识算法?
技术定义为:
共识算法是一个团队的决策过程,该团队中的每个人构建并支持最适合其他人的决策。这是一种决议形式,个人需要支持多数决定,无论他们是否喜欢.
简而言之,这只是在小组内进行决策的一种方法。让我用一个例子来澄清它。想象一个十个人组成的小组,他们想要就一个使所有人受益的项目做出决定。他们每个人都可以提出一个想法,但是大多数人会赞成最能帮助他们的一个想法。其他人无论是否喜欢都必须处理这个决定.
现在,想像成千上万的人遇到同样的事情。那不会大大增加它的难度?
共识算法不仅同意多数票,还同意一种使所有人受益的票。因此,网络永远是赢家.
区块链共识模型是在在线世界中创造平等和公平的方法。用于该协议的共识系统称为共识定理.
这些区块链共识模型包含一些特定目标,例如:
- 达成协议: 该机制会尽可能收集小组的所有协议.
- 合作: 每个小组都旨在达成更好的协议,从而导致整个小组的利益.
- 合作: 每个人都将作为一个团队工作,并将自己的利益放在一边.
- 平等权利: 每个参与者都具有相同的投票价值。这意味着每个人的投票都很重要.
- 参与人数: 网络内部的每个人都需要参加投票。没有人会被甩在外面或者不投票就可以待在外面.
- 活动: 小组中的每个成员都同样活跃。小组中没有人负有更多的责任.
不同类型的共识算法信息图
第二章:拜占庭容错问题
拜占庭容错系统是具有特定故障事件的系统。这就是拜占庭将军的问题。您可以使用分布式计算机系统来最好地体验这种情况。很多时候共识系统可能会出现故障.
这些组件负责产生进一步的冲突信息。只有所有要素协调一致,共识系统才能成功运作。但是,即使该系统中的某个组件发生故障,整个系统也可能会崩溃.
组件故障始终会导致拜占庭容错系统不一致,这就是为什么将这些共识系统用于分散式网络并不理想的原因.
专家称其为“拜占庭将军的问题”。还是很困惑?
让我用一个共识示例来阐明这一点.
想象有一群将军,他们每个人都拥有拜占庭军队。他们将进攻一个城市并控制住,但是为此,他们需要决定如何进攻.
您可能会认为这不费吹灰之力。但是,有一点困难。将军只能通过信使进行交流,一些叛徒将军会试图破坏整个袭击.
他们可以通过Messenger发送不可靠的信息,甚至Messenger可能成为这里的敌人.
信使还可能通过传递错误信息来蓄意破坏.
这就是为什么需要谨慎处理问题的原因。首先,我们必须以某种方式使每个将军做出共同决定,其次,确保即使是最小的叛徒也不会导致整个任务失败.
对您来说,这似乎很简单;但是,事实并非如此。根据研究,将需要3n + 1名将军来处理n个叛徒。一个单一的叛徒将需要四名将军来应对,这使其有些棘手.
第三章:为什么需要共识算法?
拜占庭的主要问题是达成协议。即使发生单个故障,节点也无法达成协议或具有更高的难度值.
另一方面,共识算法并没有真正面对这种类型的问题。他们的主要目标是通过任何方式实现特定目标。区块链共识模型比拜占庭更可靠,更容错.
这就是为什么在分布式系统中可能会有矛盾的结果时的原因。最好使用共识算法以获得更好的输出.
第4章:区块链:去中心化网络的组织数据的骨架
现在让我们看一下区块链技术,以更好地了解整个网络.
- 这是组织数据库的新方法.
- 可以存储根据网络变化的所有内容.
- 所有数据都像一个问题一样排列在一个块中.
但是,您不会在区块链本身中看到任何分散的情况。这是因为区块链无法提供去中心化的环境。这就是为什么我们需要共识算法来确保系统完全去中心化的原因.
因此,区块链技术只能允许您创建不同的结构化数据库,但不会执行去中心化过程。这就是为什么区块链被视为整个去中心化网络的骨架的原因.
第五章:共识算法:网络的灵魂
该方法确实非常简单。这些区块链共识模型只是达成协议的方式。但是,没有通用的共识算法就不可能有任何分散的系统.
节点是否相互信任甚至无关紧要。他们将必须遵循某些原则并达成集体协议。为此,您必须检查所有共识算法.
到目前为止,我们还没有找到适用于每种区块链技术的特定区块链算法。让我们看一下不同的共识算法,以更好地了解整个图片.
第6章:不同类型的共识算法
所有共识算法列表
- 工作量证明
- 股权证明
- 委托权益证明
- 租赁权益证明
- 经过时间证明
- 实用的拜占庭容错
- 简化的拜占庭容错
- 委派拜占庭式容错
- 有向无环图
- 活动证明
- 重要证明
- 容量证明
- 燃烧证明
- 重量证明
工作证明
工作量证明是区块链网络中引入的第一个区块链算法。许多区块链技术都使用此区块链共识模型来确认其所有交易并为网络链产生相关区块.
分散分类帐系统收集与块有关的所有信息。但是,需要特别注意所有交易块.
这种责任落在所有称为矿工的个体节点上,他们用来维护矿工的过程称为挖矿。这项技术的核心原理是解决复杂的数学问题并轻松给出解决方案.
您可能在想什么是数学问题?
首先,这些数学问题需要大量的计算能力。例如,哈希函数或知道如何在没有输入的情况下找出输出。另一个是整数分解,它也涵盖了解谜游戏.
当服务器感觉受到DDoS攻击并且要找出共识系统需要进行大量计算时,就会发生这种情况。这是矿工派上用场的地方。用数学方程式解决整个问题的答案称为哈希.
但是,工作证明有一定的局限性。网络似乎增长很多,因此,它需要大量的计算能力。此过程提高了系统的整体灵敏度.
为什么系统变得如此敏感?
区块链共识序列主要依赖于准确的数据和信息。但是,系统的速度非常缺乏。如果问题变得太复杂,则生成块将花费大量时间.
事务被延迟,整个工作流程暂停。如果在特定时间内无法解决区块生成问题,那么生成区块将成为奇迹.
但是,如果问题对于系统而言太容易了,那么将很容易受到DDoS攻击。另外,由于并非所有节点都可以检查可能的错误,因此还需要精确检查解决方案.
如果他们能够做到,那么网络将缺乏最重要的功能-透明度.
如何在区块链网络上实施工作量证明?
首先,矿工将解决所有难题,然后创建新区块并确认交易。无法说出难题有多复杂.
这在很大程度上取决于最大的用户数量,最小的当前功率和网络的整体负载.
新块带有哈希函数,每个块都包含前一个块的哈希函数。这样,网络可以增加一层保护,并防止任何类型的违规行为。一旦矿工解决了难题,便会创建一个新的区块,并确认交易.
哪里使用了工作证明共识算法区块链?
最受欢迎的是比特币。比特币先于其他任何加密货币引入了这种共识算法区块链。区块链共识模型允许基于网络的整体力量对难题的复杂性进行任何形式的改变.
创建新块大约需要10分钟。 Litecoin等其他加密货币共识示例也提供了相同的系统.
另一个区块链算法用户以太坊(Ethereum)在平台上的近3-4个大型项目中使用了工作证明。但是,以太坊已经转向股权证明.
为什么区块链技术首先使用工作量证明?
您一定想知道为什么不同的区块链技术从一开始就使用工作证明.
这是因为PoW提供了DDoS保护,并降低了所有权益的挖掘。这种区块链算法为黑客提供了很多困难。该系统需要大量的计算能力和精力.
这就是黑客可以入侵区块链共识模型的原因,但是这将花费大量时间和复杂性,这将使成本过高.
另一方面,任何矿工都无法决定整个网络,因为决策并不取决于资金量。这取决于形成新块所需的计算能力.
工作量证明共识算法的主要问题是什么?
并非所有的共识算法都是完美的。工作证明也没有什么不同。它有很多好处,但是也有很多缺陷。让我们看看系统的主要缺陷是什么.
-
更大的能源消耗
区块链网络包含数以百万计的不断散布的设计微芯片。这个过程需要很多汁.
比特币目前每秒提供200亿个哈希。网络上的矿工使用一些专门设计的微芯片进行哈希处理。此过程使网络可以添加一层保护,使其免受僵尸网络攻击.
基于工作量证明的区块链网络的安全级别需要大量精力,而且非常密集。在我们的能源用尽的世界中,更大的消耗正成为一个问题-系统上的矿工由于电力消耗而不得不面对大量成本.
解决此问题的最佳方法是廉价的能源.
-
矿工集中化
对于能源问题,工作量证明将朝着更便宜的电解决方案发展。但是,主要问题是比特币矿工制造商是否崛起。在一定时间内,制造商可能会更加耗电,并尝试在采矿系统中创建新规则.
这种情况将导致分散网络内部的集中化。这就是为什么这些区块链算法面临的另一个大问题.
那51%的攻击率呢?
让我澄清一下51%攻击的真正含义。这种攻击将意味着可能控制多数用户并接管大部分采矿能力。在这种情况下,攻击者将获得足够的力量来控制网络中的所有内容.
他们可以阻止其他人生成新的区块。攻击者还可以根据自己的战术获得奖励.
让我用一个共识的例子来澄清它.
想象一个场景,爱丽丝通过区块链网络向鲍勃发送某种加密货币。但是,爱丽丝(Alice)参与了攻击,鲍勃(Bob)没有参与。交易已经发生,但是攻击者不会通过在链中启动分叉来转移任何金额的资金.
在其他情况下,矿工将加入分支机构之一。它们将在这些模块上具有最大的计算能力。这就是为什么其他使用寿命较短的块会被拒绝的原因。结果,鲍勃不会收到这笔钱.
但是,这不是一个有利可图的解决方案。这将占用大量的挖掘能力,并且在事件暴露之后,用户将开始离开网络,最终,交易成本将下降.
权益证明
什么是权益证明?
权益证明是一种共识算法区块链,可解决工作量证明算法的主要缺点。在此过程中,在网络将另一个区块添加到区块链分类账之前,每个区块都要经过验证。这其中有一点扭曲。矿工可以使用他们的硬币来参与采矿过程.
权益证明是一种新型的概念,每个人都可以仅根据其拥有的硬币来开采甚至验证新的区块。因此,在这种情况下,您拥有的硬币越多,机会就越大.
它是如何工作的?
在这种共识算法中,未成年人得到了先前的选择.
尽管此过程是完全随机的,但仍不是每个未成年人都可以参加赌注。网络中的所有矿工都是随机选择的。如果您之前在钱包中存储了特定数量的硬币,那么您将有资格成为网络上的节点.
成为节点后,如果您想有资格成为矿工,则需要存入一定数量的硬币,之后,将有一个投票系统来选择验证者。完成后,矿工将押出特殊钱包赌注所需的最低金额.
这个过程确实非常简单。将根据钱包创建与硬币数量成比例的新块。例如,如果您拥有所有硬币的10%,那么您将获得10%的新区块.
有许多使用各种股权证明共识算法的区块链技术。但是,所有挖掘新区块的算法都相同,每个矿工将获得区块奖励以及一部分交易费用.
股权合并证明会发生什么?
还有其他参与堆叠的方法。如果下注额太高,那么您可以加入一个池中并从中获利。您可以通过两种方式做到这一点.
首先,您可以将硬币借给另一位将参与该池的用户,然后与您分享利润。但是,您将需要找到一个可靠的人来进行抵押.
另一种方法是加入池。这样,参与该特定池的每个人都将根据本金金额来分配利润.
股权证明:有什么好处?
首先,这种共识算法不需要大量的硬件备份。您只需要功能正常的计算机系统和稳定的Internet连接。网络上拥有足够硬币的任何人也将能够验证交易.
如果某人投资了该网络,它不会像其他投资一样随着时间的流逝而贬值。唯一会影响利润的是价格波动。权益证明共识算法区块链比工作证明更具能源效率。它甚至不需要太多的功耗.
它还减少了51%攻击的威胁.
尽管权益证明比工作证明有利可图,但仍然存在一个重大缺点。该系统的主要缺点是永远不可能完全分散.
这仅仅是因为只有少数节点可以参与网络上的抵押。拥有最多硬币的个人最终将控制大部分系统.
使用权益证明作为区块链技术基础的流行加密货币
PIVX
这是另一种隐私硬币,交易费用几乎为零。 PIVX以前是从Dash分叉的。但是,它已从工作量证明转变为权益证明。它们还通过使用主节点分配块来确保更好的放样.
如果要开始使用PIVX,则必须下载官方钱包,然后将其与区块链同步。之后,您必须将一些货币转移到钱包中,然后像这样保持连接状态.
导航币
许多加密货币派生了比特币的原始区块链共识序列; NavCoin是其中之一。该项目是一个完全开源的。他们还比大多数加密货币更早地迁移到权益证明.
为了获得最大利益,您的计算机将需要更长的时间连接到网络。由于股权证明非常轻巧,因此您可以将其运行更长的时间而无后顾之忧.
Stratis
这是另一个基于权益证明的区块链共识序列。服务主要是为企业提供的。公司可以使用它来构建自己的dApp,而无需自己的区块链网络.
该平台在侧链中提供应用程序开发,可防止任何形式的网络延迟。他们开始时是工作项目的证明。但是,他们最终转向了股权证明.
区块链算法:委托权益证明共识
委托权益证明是典型权益证明的一种变体。该系统非常强大,并为整个方程式增加了另一种形式的灵活性.
如果您需要快速,高效,分散的共识算法,则委托权益证明将是最好的方法。利益相关者的问题在这里以民主的方式得到了充分解决。网络上的每个组件都可以成为代表.
在这里,代替矿工或验证者,这些节点称为委托。通过确定批量生产,该系统可以在短短一秒钟内完成交易!此外,该系统旨在确保针对法规问题的所有级别的保护。.
证人验证所有签名
通常,证人没有任何法规和其他中立的言论。传统合同中的标准见证人有一个特殊的地方可供见证人验证。他们只是确保应该在指定的时间联系个人.
在DPOS中,证人可以生成信息块。还有一种投票选举最高证人的概念。仅当系统认为其完全去中心化时才进行投票.
证人出示证件后立即向所有证人付款。该费率是通过投票系统预先选择的.
特殊参数变化选出的代表
就像见证人一样,代表也被选出。代表用于更改整体网络参数。与代表一起,您将获得交易费用,交易间隔,交易规模和证人薪酬.
要更改网络中的参数,大多数代表需要对同一件事进行投票。但是,代表不会像证人那样得到报酬.
更改典型规则
为了使系统平稳运行,有必要不时添加其他功能。但是,没有潜在的利益相关者,就无法完成添加此功能的过程。证人可以聚集在一起并更改政策,但没有编程的方法.
他们需要保持中立,而只有利益相关者的员工。因此,起初,一切都取决于利益相关者.
双重支出攻击的风险
在DPOS中,双重支出的风险已大大降低。当区块链网络无法在数据库中包含先前花费的交易时,可能会发生这种情况.
该网络可以在没有任何人帮助的情况下检查其健康状况,并可以检测到任何类型的损失。这样,可以确保数据库100%透明.
交易已做为股权证明
尽管该系统是权益证明的变体,但核心交易系统仍完全基于权益证明算法运行。权益证明的交易过程可确保增加一层保护,以防止错误的共识系统.
谁使用委托权益证明?
Lisk是现在市场上流行的名称之一。区块链平台为开发人员提供了一个平台,使他们可以轻松地开始制作基于JavaScript的分散式应用程序.
它有很多以太坊共有的元素。但是,系统使用委托权益证明而不是权益证明.
放样在这一点上的工作方式有所不同.
租赁权益证明(LPoS)
经典权益证明的另一个变体是租赁的股权证明。 Waves平台向我们介绍了新的共识算法区块链。就像任何其他区块链技术平台一样,Waves还确保以有限的功耗提供更好的捕获.
原始的股份证明在放样方面有一些限制。硬币数量有限的个人可能永远都不会真正参加过此赌注。为了成功地维护网络,只剩下少数人可以提供更多硬币.
这一过程使系统可以在一个分散的平台内创建一个集中的社区,这显然不是所希望的.
在租借的股权证明中,小农户最终可以获得抵押的机会。他们可以将其代币租借到网络并从中受益.
在引入新的租赁权益证明之后,情况完全改变了。现在可以轻松解决以前系统的局限性。 Waves平台的主要目的是帮助小型投资者.
钱包里只有少量硬币的人永远不会有机会获得像大鱼一样的利益。这样,它完全确立了共识算法的主题-透明度.
经过时间证明(PoET)
PoET是最好的共识算法之一。此特定算法主要用于许可的区块链网络,在该网络中,您必须获得访问网络的许可。这些权限网络需要决定采矿权或投票原则.
为了确保一切顺利进行,PoET算法使用一种特殊的策略来覆盖整个网络的透明性。共识算法还确保安全登录系统,因为在加入矿工之前网络需要进行身份验证.
不用说,这种共识算法仅提供了一种使用公平手段挑选获胜者的机会。.
让我们看看这个令人敬畏的共识序列的主要策略是.
- 网络上的每个人都必须等待一段时间。但是,时间限制是完全随机的.
- 完成了公平的等待时间的参与者将进入分类账,创建一个新的区块.
为了证明这些情况的合理性,算法必须考虑两个事实.
- 获胜者是否真的首先选择了随机数?他或她可以选择随机的短时间并获得第一名.
- 个人是否真的在等待他/她被分配的特定时间?
PoET取决于特殊的CPU要求。它称为“英特尔软件保护扩展”。该Software Guard Extension有助于在网络中运行唯一的代码。 PoET使用此系统,并确保获胜是完全公平的.
英特尔SGX系统
作为共识算法使用 SGX系统 为了验证选秀权的公平性,让我们更深入地研究一下系统.
首先,一个特殊的硬件系统会创建一个使用特定可信代码的证明。该代码是在安全的环境中设置的。任何外部方都可以使用此证明来验证其是否不受篡改.
第二,代码在网络上的隔离区域中运行,没有人可以与之交互.
第一步必须证明您确实在使用网络上的可信代码,而不是其他一些随机技巧。主网络永远无法找出第一步是否无法正常运行.
第二步防止任何用户操纵系统以为他/她正在运行代码。第二步,确保算法的安全性.
受信任的代码
让我简化代码的轮廓.
加入区块链网络
- 新用户将首先在区块链中下载受信任的代码.
- 在他/她开始该过程之后,他们将获得一个特殊的密钥对.
- 使用该密钥对,用户可以将SGX证明发送到网络并请求访问.
参加彩票系统
个人将从受信任的代码源获得签名的计时器.
此后,该个人将需要等到给他的时间完全用完为止.
最后,个人将获得完成所需任务的证书.
该协议还确保基于SGX的不同级别的保护。该系统计算用户赢得彩票的次数。通过这样做,他们将知道单个用户的SGX是否受到威胁.
区块链算法:实用的拜占庭容错(PBFT)
PBFT主要关注状态机。它复制了系统,但摆脱了主要的拜占庭一般问题。现在,它是如何做到的?
好吧,该算法从一开始就假设网络中可能存在故障,并且某些独立的节点可能会在某些时候发生故障.
该算法专为异步共识系统而设计,并以有效方式进一步优化以处理所有问题.
而且,系统内的所有节点都按特定顺序排列。选择一个节点作为主要节点,其他节点作为备份计划。但是,系统内部的所有节点都可以协调工作并相互通信.
通讯级别很高,因为他们想验证网络上找到的所有信息。摆脱了不可靠的信息问题.
但是,通过这一新过程,他们甚至可以找出一个节点是否受到威胁。所有节点都通过多数表决达成协议.
PBFT共识算法的好处
实用的拜占庭容错算法与我们分享了一些有趣的事实。该模型主要是为实际用例设计的,它们非常容易实现。因此,与所有其他共识算法相比,PBFT具有一定的优势.
-
无需确认:
该网络上的事务工作方式略有不同。就像我们在PoW系统中看到的那样,它可以完成交易而无需任何类型的确认.
如果节点在特定块上达成共识,则将其定稿。这是由于以下事实:所有真实节点同时相互通信并了解特定的块.
-
减少能源:
与PoW相比,新模型在功耗方面有很大的降低。在PoW中,每个区块都需要进行单独的PoW回合。但是,在此模型中,并非每个矿工都在解决典型的哈希算法.
这就是为什么系统不需要那么多计算能力的原因.
系统的缺点
尽管PBFT提供了很多优点和有希望的事实,但它碰巧也有很多缺点。让我们看看它们是什么.
-
沟通差距:
该算法最重要的因素是节点之间的通信。网络上的每个节点必须确保它们收集的信息是可靠的。但是,共识算法仅能在较小的节点组中有效地工作.
如果节点组的数量大大增加,则系统可能会发现很难跟踪所有节点,并且无法与每个节点进行通信.
本文正在支持该模型状态,以使用MAC和其他数字签名来证明信息的真实性。话虽如此,MAC无法处理区块链类型的网络系统,因此使用它最终将造成重大损失.
数字签名可能是一个不错的选择,但是随着节点数量的增加,维护所有这些通信节点的安全性将变得越来越困难.
-
西比尔攻击:
PBFT非常容易受到Sybil攻击。在这些攻击中,他们可以一起操纵一组节点,这样做会危害整个网络。对于较大的网络,这也变得更糟,并且系统的可伸缩性降低.
如果可以将此模型与另一种共识算法一起使用,那么他们可能会获得可靠的安全组合.
简化的拜占庭容错(SBFT)
在SBFT中,系统的工作方式略有不同.
首先,区块生成器将一次收集所有交易,并在将它们合并为一种新型区块后对其进行验证.
简单来说,一个区块将收集所有交易,将其相应地批处理到另一个区块中,然后最终将所有交易一起验证.
生成器将应用某些规则,所有节点都将遵循这些规则来验证所有事务。之后,块签名者将验证它们并添加他们自己的签名。这就是为什么如果任何一个区块甚至连一个钥匙都错过了,那么它将被拒绝的原因.
简化拜占庭容错的不同阶段
- 该阶段从创建阶段开始,在此阶段,资产用户将产生大量唯一资产ID.
- 之后,在提交阶段,用户将所有ID提交到平台上.
- 然后开始验证阶段,在此阶段ID获得指定的用例条款.
- 全部注册后,它们将被存储并转移到其他帐户。借助智能合约可以进行交易.
- 最后,交易开始生效.
该功能强大的系统的另一个很酷的功能是客户管理器,它在很多阶段都可以提供帮助。主要目标是安全地存储所有资产。客户经理还存储所有交易数据。管理者可以包含针对不同类型用户的各种组合资产.
您可以将它们视为数字钱包。使用这些数字钱包,您将能够从钱包中转移资产,甚至还可以从中获得一些资产。您还可以使用客户经理形成智能联系人,当满足特定要求时,它会释放资金.
但是资产所有权如何流动?
好吧,他们实际上使用的是包含地址和资产ID的推送模型,将其赚取的资产发送给他们.
安全与隐私
SBFT用于专用网络,其中机密性是网络的优先级。该平台的设计方式是公开敏感信息,但有一定的局限性。这就是系统使用三种技术的原因,例如零知识证明,一次性使用的地址和加密的元数据.
-
一次性使用地址:
每次用户想要在他/她的钱包中接收一些资产时,将为他们分配一次性使用地址。每个地址互不相同,因此可以防止其他用户拦截交易.
-
零知识证明:
零知识证明用于隐藏事务的所有组件。但是,整个网络仍将能够验证完整性。这是借助零知识证明完成的,其中一方将向另一方证明其真实性.
这样,只有接收者和发送者才能看到交易的组成部分.
-
元数据加密:
过渡的元数据也被加密以确保进一步的安全性。网络将允许使用密钥来验证真实性。但是,为了获得更好的保护,密钥将每2-3天更改一次.
同样,它们都保持分离并且位于数据网络的不同部分。因此,如果其中之一被黑客入侵,则可以使用其他密钥来生成更多唯一密钥。管理这些密钥并每隔几天轮换一次对于确保这些共识算法的完整性是必要的.
Chain,一个基于区块链的平台,使用SBFT来验证其在网络上的所有交易。除此之外,他们还使用HSM(硬件安全模块)来实现行业级的安全性。通过使用HSM,它们可以确保额外的安全性,而无需任何单点故障.
委派的拜占庭式容错(dBFT)
关于工作量证明和权益证明是最广为人知的共识算法,这一点没有争议。尽管许多区块链生态系统都遵循这两种通用算法,但有些正在试图强加更新和更高级的共识系统。在这些先锋的区块链品牌中,NEO的名字一定会出现.
随着过去12个月的蓬勃发展,NEO现在已成为行业中的热门蛋糕。中国品牌已经显示出很大的潜力。他们为什么不呢?他们是高级共识定理的发明者-委托拜占庭容错(dBFT).
流行的区块链技术:NEO
这是目前市场上流行的加密货币之一。有时也称为中国的以太坊。网络的主要重点是创建智慧经济,您可以在其中以低廉的价格共享数字资产.
NEO使用委派的拜占庭容错来验证所有事务。如果您押注NEO,就可以生成GAS。 GAS是平台的主要流通货币。您必须为每笔交易支付一定数量的GAS费用。这就是为什么您投入的NEO越多,获得的GAS越多的原因.
但是,这种情况与PoS有点不同.
许多交易所都提供池化系统。但是,最好使用NEO官方钱包,而不要使用其他存储钱包.
在开始对dBFT进行分析之前,我们必须让您知道该算法之父的缺点– 拜占庭容错 共识算法.
拜占庭将军的缺点!
当我们目睹任何形式的投票及其结果时,都会出现该系统的主要缺陷。但是如何?为了更好地理解故障,您需要掌握以下以下共识示例.
您已经知道遵循dBFT共识算法的节点称为军队。一队节点有一个将军,并且总是遵循其将军的命令.
现在想象一下,拜占庭军队正计划进攻罗马并接管它。让我们考虑一下,拜占庭军队有9名将军,而将军们已经包围了这座城市并准备进攻!只有将军计划按照统一的单一战略进攻或撤退,他们才能接管罗马.
抓住了!将军们具有独特的天性-他们将遵循在投票中拥有51%多数票的决定。这里还有另外一个转折。将军们并没有坐在桌子旁做决定。取而代之的是,它们被放置在不同的位置,并使用快递公司来传递消息.
四大威胁!
四种可能的方法可以帮助罗马人保留王位–
首先,罗马人可以尝试贿赂将军并获得他们的青睐。受贿的将军将被视为“叛国将领”。
其次,任何将军都可能做出违反集体意愿的错误决定。这些将军被称为“运作不当的将军”。
第三,信使或信使可能会从罗马人手中受贿,并向其他将军做出误导性的决定.
最后,第四,罗马人可以杀死信使或信使,以破坏将军们的通讯网络。.
因此,拜占庭式容错有四个重大错误,这使得共识算法不完善.
委派的容错(dBFT)如何改变场景?
不要流汗。 NEO向我们展示了一种解决拜占庭将军过失的更好方法。现在,让我们来看看NEO引以为傲的Delegated Byzantine Fault Tolerance! dBFT主要致力于通过两种方式解决现有模型-更好的可扩展性和增强的性能.
演讲者和代表们!
我们将再次使用另一个示例来阐明dBFT的模型。让我们考虑一下拜占庭军队有民选领导人,而不是官僚将领。被选出的领导人将担任军团的代表.
你能想到的武将这些选出的代表所取代民主。甚至军队也可以不同意这些代表,并选择另一位代表代替先前的代表.
这限制了将军的官僚权力,任何将军都不能背叛总军。因此,罗马人现在不能只是贿赂和购买将军为他们工作.
在dBFT,当选代表必须跟踪各个节点的决定。去中心化的分类账记下了节点的所有决策.
节点军团还选举一位议长与代表分享他们的共同思想。为了通过一项新法律,议长们向代表们分享了由节点组成的军队的想法,并且至少有66%的代表必须同意该动议。否则,拟议的法律将无法通过.
如果一项动议未能获得66%的代表的批准,则该提案将被拒绝,并提出新的动议,直到他们达成共识。这个过程可以保护全军免受叛国或背叛将军的侵害.
不诚实的演讲者
仍然有两种情况可能会妨碍dBFT区块链共识协议的完整性-不诚实的发言者和不诚实的代表.
dBFT区块链共识协议也为我们提供了这些方案的解决方案。如前所述,分类帐将节点的决策放在一个地方。代表们可以核实演讲者是否确实在为军队讲话。如果演讲者的提案和分类帐不统一,则66%的代表将拒绝演讲者的提案并完全禁止演讲者.
不诚实的代表
第二种情况是诚实的演讲者和可能出卖的代表。在这里,诚实的代表和诚实的演讲者将设法获得66%的多数,并减少不诚实代表的努力。.
因此,您可以看到委派拜占庭式容错(dBFT)如何完全克服了拜占庭将军和BFT共识的缺陷。当然,NEO为创建更好的共识算法而付出的努力值得世界各地的赞扬。.
有向无环图(DAG)
许多加密专家承认比特币是区块链1.0,以太坊是区块链2.0。但是如今,我们看到了市场上具有更现代技术的新参与者.
有人还说这是区块链3.0。尽管许多竞争者都在争夺区块链3.0的头衔,但NXT凭借有向无环图(也称为DAG)的应用将领先于游戏。除了NXT之外,IOTA和IoT Chain还采用DAG作为其系统.
有向无环图(DAG)的工作方式?
您可以将DAG视为共识算法。但是DAG基本上是数据结构的一种形式。尽管大多数区块链是包含数据的“块”的“链”,但DAG是无缝的图,其中数据以拓扑方式存储。 DAG可以方便地处理特定问题,例如–数据处理,路由,压缩.
使用工作量证明共识算法创建一个块大约需要10分钟。是的,工作清单是一个很慢的动作! DAG而不是在单个链上工作,而是实现了“侧链”。侧链允许不同的交易在多个链上独立执行.
这将减少创建和验证块的时间。好吧,实际上,它完全消除了块的必要性。此外,采矿似乎也浪费时间和精力!
在此,所有交易都被定向并维持特定的顺序。此外,系统是非循环的,这意味着找到父节点的机会为零,因为它是一棵节点树,而不是节点循环。 DAG向世界展示了没有区块链的区块链的可能性!
有向无环图DAG的基本概念
-
没有更多的双重支出
传统的区块链允许一次在单个区块上进行挖掘。有可能有多个矿工试图验证一个区块。这产生了双花的可能性.
而且,这种情况可能会导致软甚至硬的分叉。 DAG根据先前的交易数量来验证特定交易。这使区块链系统更安全,更强大.
-
更少的宽度
在其他共识算法中,交易节点被添加到整个网络中。这使系统的宽度更大。而DAG将新交易链接到旧交易图。这使整个网络更加精简,可以更直接地验证特定交易.
-
更快更聪明
由于DAG具有无阻塞性质,因此可以更快地处理事务。实际上,它使PoW和PoS在比赛中看起来像爷爷一样.
-
有利于较小的交易
并非每个人都通过一笔交易进行数百万笔交易。实际上,更常见的是较小的付款。但是,比特币和以太坊的巨额支付费用似乎对较小的金额并没有那么友好。另一方面,DAG非常适合较小的交易,因为交易费用可忽略不计.
第7章:其他类型的共识算法
活动证明
当人们在争论这个话题–工作量证明与权益证明时,Litecoin的创建者和其他三位作者想到了一些很棒的东西。他们向世界提出了一个简单的问题-为什么不能将PoW和PoS结合起来,而不是让它们彼此抗衡?
因此,一种引人入胜的混合动力车的想法诞生了-活动证明。它结合了最好的两个功能–更安全地抵御任何攻击,而不是不耗电的系统.
活动证明如何工作?
在活动证明区块链共识协议中,挖掘过程就像PoW算法一样开始。矿工们解决了一个难题,得到了回报。那么,与PoW的关键区别在哪里?在PoW中,矿工开采具有完整交易的区块.
在活动证明中,矿工仅开采区块的模板。这样的模板中包含两件事–标头信息和矿工的奖励地址.
曾经,矿工们会挖掘这些区块模板。系统将转换为权益证明。块内的标题信息指向随机利益相关者。这些利益相关者然后验证预先开采的区块.
验证者拥有的堆栈越多,他们批准区块的机会就会增加。只有在验证之后,该特定块才进入区块链.
这就是活动证明使用两种共识算法中最好的一种来验证并向区块链添加区块的方式。此外,该网络向矿工和验证者支付交易费用的公平份额。因此,该系统抵制了“公地悲剧”,并为区块验证创造了更好的解决方案.
活动证明的影响
区块链面临的最大威胁之一是51%的攻击。共识定理将51%攻击的可能性降低为零。之所以会发生这种情况,是因为矿工和验证者都不能占多数,因为在向网络添加一个块的过程中,过程需要同等的贡献.
虽然,一些批评家说,活动证明区块链共识协议存在一些严重的缺陷。第一个将是由于采矿功能而导致的大量能源消耗。其次,活动证明没有任何方法可以阻止验证者的双重签名。这两个明显的缺陷使共识定理有些落伍.
两个流行的区块链采用了活动证明– Decred和Espers。尽管如此,它们还是有一些变化。实际上,Decred被认为是比Espers共识定理更受欢迎的定理.
重要证明
我们清单上的下一个是重要证明区块链共识协议。这个共识的例子是由于NEM的著名名称。概念是权益证明的发展。虽然,NEM提出了一个新想法–收获或归属.
收集机制确定节点是否有资格被添加到区块链中。您在节点上收获的次数越多,将其添加到链上的机会就越多。作为收获的回报,节点接收验证者收集的交易费用作为奖励。要获得收割的资格,您的帐户至少需要10,000 XEM.
它解决了股权证明的主要问题。在PoS中,与验证者的钱较少相比,富人的钱更多。例如,如果您拥有20%的加密货币,则可以挖掘区块链网络上所有区块的20%。这使得共识算法有利于富人.
重要证明的明显特征
-
背心
共识定理最吸引人的特征是归属或收获。正如我们已经说过的,首先需要至少有10,000个硬币才有资格进行收获。您的重要性证明分数取决于您的收获量。虽然,共识算法会考虑您口袋里有硬币的时间段.
-
交易伙伴关系
如果您与其他NEM帐户持有人进行交易,则重要性证明算法将为您提供奖励。网络会将你们两个视为合作伙伴。虽然,如果您打算建立假合作伙伴关系,系统会抓住您.
-
计分系统
交易对您的重要性证明分数有影响。得分基于您在30天之内进行的交易。更频繁,更充实的金额将帮助您提高NEM网络上的分数.
容量证明
能力证明共识示例是著名的工作量证明区块链共识协议的升级。此功能的基本特征是“绘图”功能。甚至在开始挖掘之前,您就必须投入计算能力和硬盘驱动器存储空间.
这种特性使系统的PoW速度更快。能力证明可以在短短四分钟内创建一个区块,而工作量证明需要十分钟才能完成。此外,它试图解决PoW系统的哈希问题。您在计算机上拥有的解决方案或地块越多,赢得采矿战的机会就越大.
容量证明如何工作?
要了解共识定理的本质,您必须掌握两个概念-绘图和挖掘.
通过绘制计算机的硬盘驱动器,基本上就是在创建“ nonce”。容量证明算法中的随机数与比特币的略有不同。在这里,您将必须对ID和数据进行哈希处理,直到解决现时问题为止。.
每个随机数共有8,192个哈希值捆绑在一起。分发包编号再次称为“独家广告”。每个ID最多可以接收4,095个独家新闻.
下一个概念是硬盘驱动器上的“采矿”。正如我们已经说过的,您一次可以收到0到4,095个瓢,并将它们存储在硬盘上。您将被分配一个最短的期限来解决现时问题。该截止日期还表示创建区块的时间.
如果您能够比其他矿工更早地解决现时问题,那么您将获得奖励。一个著名的例子可能是Burst,他采用了容量证明算法.
的优点和缺点 容量证明
与常规的工作量证明相比,硬盘驱动器上的挖掘更加节能。您将不必花费大量时间来获得我们在比特币协议中看到的昂贵的采矿设备。家用PC的硬盘足以开始使用此共识算法进行挖掘.
说实话,这个共识算法区块链也有一些严重的缺点。首先,该过程会创建大量的冗余磁盘空间。该系统将有利于拥有更大存储单元的矿工,对分散的概念构成威胁。甚至黑客也可以利用该系统并将恶意软件注入系统.
燃烧证明
这个共识序列令人印象深刻。为了保护PoW加密货币,部分硬币将被烧毁!这个过程发生在矿工向“食堂地址”发送几枚硬币的过程中。食人者地址不能将这些硬币用于任何目的。分类帐跟踪烧毁的硬币,使它们真正无法使用。烧过硬币的用户也将获得奖励.
是的,燃烧是一种损失。但是损害是暂时的,因为从长远来看,该过程将保护硬币免受黑客及其网络攻击。而且,燃烧过程增加了替代硬币的赌注.
这样的场景增加了用户挖掘下一个区块的机会,并在将来增加了他们的奖励。因此,刻录可以用作挖掘特权。交易对手是使用此区块链共识协议的加密货币的出色共识示例.
食客地址
为了燃烧硬币,用户将它们发送到“食者地址”。食人者地址没有任何私钥。因此,没有用户可以访问这些地址来花费其中的硬币。而且,这些地址是以随机方式生成的.
尽管这些硬币无法获得或“永远消失了!”,但它们被视为计算的供应量,并被标记为已烧毁。.
燃烧证明算法的优缺点
燃烧硬币的主要原因是要提高稳定性。我们知道长期玩家倾向于长时间持有硬币以获取利润.
该系统通过提供更稳定的货币和长期承诺来偏爱那些长期投资者。此外,这增强了权力下放并创建了分布更完善的网络.
但是,无论从哪种角度来看,燃烧硬币都意味着浪费钱!甚至有些食客地址中也有价值超过100,000美元的比特币。无法取回钱–他们被烧死了!
重量证明
好的,权重证明区块链共识协议在我们共识算法列表的最后位置。这是股权证明算法的重大升级。在权益证明中,您拥有的令牌越多,发现更多的机会就越大!这个想法使系统有点偏颇.
好吧,重量证明试图解决PoS的这种偏向性质。像Algorand,Filecoin和Chia这样的加密货币都实现了PoWeight。重量证明考虑了其他一些因素,而不是像PoS那样拥有更多的代币.
这些因素被标识为“加权因素”。例如,Filecoin会考虑您拥有的IPFS数据量并对其进行加权。其他一些因素包括但不限于时空证明和声誉证明.
该系统的基本优点包括自定义和可伸缩性。尽管激励对于这种共识算法可能是一个巨大的挑战.
Consensns算法之间的比较
共识算法 | 区块链平台 | 推出以来 | 编程语言 | 智能合约 | 优点 | 缺点 |
战俘 | 比特币 | 2009年 | C++ | 不 | 更少的机会遭受51%攻击 更好的安全性 | 更大的能源消耗 矿工集中化 |
PoS | NXT | 2013年 | 爪哇 | 是的 | 高效节能 更加分散 | 根本没有问题 |
邮局 | 利斯克 | 2016年 | 的JavaScript | 不 | 高效节能 可扩展 增强安全性 | 部分集中 双花攻击 |
脂蛋白 | 波浪 | 2016年 | 斯卡拉 | 是的 | 合理使用 租赁硬币 | 分权问题 |
诗人 | 超级账本锯齿 | 2018年 | Python,JavaScript,Go,C ++,Java和Rust | 是的 | 便宜参与 | 需要专门的硬件 不利于公共区块链 |
PBFT | 超级账本面料 | 2015年 | JavaScript,Python,Java REST和Go | 是的 | 无需确认 减少能源 | 沟通差距 西比尔攻击 |
SBFT | 链 | 2014年 | Java,Node和Ruby | 不 | 良好的安全性 签名验证 | 不适用于公共区块链 |
数据库 | NEO | 2016年 | Python,.NET,Java,C ++,C,Go,Kotlin,JavaScript | 是的 | 可扩展 快速地 | 链条中的冲突 |
达格 | IOTA | 2015年 | Javascript,Rust,Java Go和C++ | 进行中 | 低成本网络 可扩展性 | 实施方面的差距 不适合智能合约 |
POA | 下降 | 2016年 | 去 | 是的 | 降低51%攻击的可能性 平等贡献 | 更大的能源消耗 双重签名 |
兴趣点 | 新兴市场 | 2015年 | Java,C ++ XEM | 是的 | 背心 交易伙伴关系 | 分权问题 |
PoC | Burstcoin | 2014年 | 爪哇 | 是的 | 廉价 高效的 分散式 | 喜欢大鱼 分权问题 |
PoB | Slimcoin | 2014年 | Python,C ++,Shell,JavaScript | 不 | 网络保存 | 不适合短期投资者 浪费硬币 |
重量 | 文件币 | 2017年 | 蛇行/史塔克 | 是的 | 可扩展 可客制化 | 激励问题 |
第八章:结论
正是共识算法使区块链网络的性质变得如此通用。是的,没有一个共识算法区块链可以声称它是完美的。但这就是我们猜测的技术之美–不断改进以求改进.
如果没有这些共识算法,我们仍然必须依靠工作量证明。无论您是否喜欢,PoW都威胁着区块链的去中心化和分布式性质.
区块链技术的整体思想是去中心化和与君主制的斗争。现在是普通百姓制止腐败和有缺陷的系统的时候了.
我们热切地等待着越来越好的共识算法,这些算法将改变我们的生活,从而拥有更美好的明天!
渴望在区块链领域建立事业并了解区块链技术的基础知识吗?我们建议您参加免费区块链基础知识课程,并为光明的区块链事业打下基础.