當前位置:首頁 » 操作系統 » 拜占庭共識演算法

拜占庭共識演算法

發布時間: 2022-08-03 10:17:56

『壹』 區塊鏈幾大共識機制及優缺點

首先,沒有一種共識機制是完美無缺的,各共識機制都有其優缺點,有些共識機制是為解決一些特定的問題而生。
1.pow( Proof of Work)工作量證明
一句話介紹:乾的越多,收的越多。
依賴機器進行數學運算來獲取記賬權,資源消耗相比其他共識機制高、可監管性弱,同時每次達成共識需要全網共同參與運算,性能效率比較低,容錯性方面允許全網50%節點出錯。
優點:
1)演算法簡單,容易實現;
2)節點間無需交換額外的信息即可達成共識;
3)破壞系統需要投入極大的成本;
缺點:
1)浪費能源;
2)區塊的確認時間難以縮短;
3)新的區塊鏈必須找到一種不同的散列演算法,否則就會面臨比特幣的算力攻擊;
4)容易產生分叉,需要等待多個確認;
5)永遠沒有最終性,需要檢查點機制來彌補最終性;
2.POS Proof of Stake,權益證明
一句話介紹:持有越多,獲得越多。
主要思想是節點記賬權的獲得難度與節點持有的權益成反比,相對於PoW,一定程度減少了數學運算帶來的資源消耗,性能也得到了相應的提升,但依然是基於哈希運算競爭獲取記賬權的方式,可監管性弱。該共識機制容錯性和PoW相同。它是Pow的一種升級共識機制,根據每個節點所佔代幣的比例和時間,等比例的降低挖礦難度,從而加快找隨機數的速度
優點:在一定程度上縮短了共識達成的時間;不再需要大量消耗能源挖礦。
缺點:還是需要挖礦,本質上沒有解決商業應用的痛點;所有的確認都只是一個概率上的表達,而不是一個確定性的事情,理論上有可能存在其他攻擊影響。例如,以太坊的DAO攻擊事件造成以太坊硬分叉,而ETC由此事件出現,事實上證明了此次硬分叉的失敗。
DPOS與POS原理相同,只是選了一些「人大代表」。
BitShares社區首先提出了DPoS機制。
與PoS的主要區別在於節點選舉若干代理人,由代理人驗證和記賬。其合規監管、性能、資源消耗和容錯性與PoS相似。類似於董事會投票,持幣者投出一定數量的節點,代理他們進行驗證和記賬。
DPoS的工作原理為:
去中心化表示每個股東按其持股比例擁有影響力,51%股東投票的結果將是不可逆且有約束力的。其挑戰是通過及時而高效的方法達到51%批准。為達到這個目標,每個股東可以將其投票權授予一名代表。獲票數最多的前100位代表按既定時間表輪流產生區塊。每名代表分配到一個時間段來生產區塊。所有的代表將收到等同於一個平均水平的區塊所含交易費的10%作為報酬。如果一個平均水平的區塊含有100股作為交易費,一名代表將獲得1股作為報酬。
網路延遲有可能使某些代表沒能及時廣播他們的區塊,而這將導致區塊鏈分叉。然而,這不太可能發生,因為製造區塊的代表可以與製造前後區塊的代表建立直接連接。建立這種與你之後的代表(也許也包括其後的那名代表)的直接連接是為了確保你能得到報酬。
該模式可以每30秒產生一個新區塊,並且在正常的網路條件下區塊鏈分叉的可能性極其小,即使發生也可以在幾分鍾內得到解決。
成為代表:
成為一名代表,你必須在網路上注冊你的公鑰,然後分配到一個32位的特有標識符。然後該標識符會被每筆交易數據的「頭部」引用。
授權選票:
每個錢包有一個參數設置窗口,在該窗口裡用戶可以選擇一個或更多的代表,並將其分級。一經設定,用戶所做的每筆交易將把選票從「輸入代表」轉移至「輸出代表」。一般情況下,用戶不會創建特別以投票為目的的交易,因為那將耗費他們一筆交易費。但在緊急情況下,某些用戶可能覺得通過支付費用這一更積極的方式來改變他們的投票是值得的。
保持代表誠實:
每個錢包將顯示一個狀態指示器,讓用戶知道他們的代表表現如何。如果他們錯過了太多的區塊,那麼系統將會推薦用戶去換一個新的代表。如果任何代表被發現簽發了一個無效的區塊,那麼所有標准錢包將在每個錢包進行更多交易前要求選出一個新代表。
抵抗攻擊:
在抵抗攻擊上,因為前100名代表所獲得的權力權是相同的,每名代表都有一份相等的投票權。因此,無法通過獲得超過1%的選票而將權力集中到一個單一代表上。因為只有100名代表,可以想像一個攻擊者對每名輪到生產區塊的代表依次進行拒絕服務攻擊。幸運的是,由於事實上每名代表的標識是其公鑰而非IP地址,這種特定攻擊的威脅很容易被減輕。這將使確定DDOS攻擊目標更為困難。而代表之間的潛在直接連接,將使妨礙他們生產區塊變得更為困難。
優點:大幅縮小參與驗證和記賬節點的數量,可以達到秒級的共識驗證。
缺點:整個共識機制還是依賴於代幣,很多商業應用是不需要代幣存在的。
3.PBFT :Practical Byzantine Fault Tolerance,實用拜占庭容錯
介紹:在保證活性和安全性(liveness & safety)的前提下提供了(n-1)/3的容錯性。
在分布式計算上,不同的計算機透過訊息交換,嘗試達成共識;但有時候,系統上協調計算機(Coordinator / Commander)或成員計算機 (Member /Lieutanent)可能因系統錯誤並交換錯的訊息,導致影響最終的系統一致性。
拜占庭將軍問題就根據錯誤計算機的數量,尋找可能的解決辦法,這無法找到一個絕對的答案,但只可以用來驗證一個機制的有效程度。
而拜占庭問題的可能解決方法為:
在 N ≥ 3F + 1 的情況下一致性是可能解決。其中,N為計算機總數,F為有問題計算機總數。信息在計算機間互相交換後,各計算機列出所有得到的信息,以大多數的結果作為解決辦法。
1)系統運轉可以脫離幣的存在,pbft演算法共識各節點由業務的參與方或者監管方組成,安全性與穩定性由業務相關方保證。
2)共識的時延大約在2~5秒鍾,基本達到商用實時處理的要求。
3)共識效率高,可滿足高頻交易量的需求。
缺點:
1)當有1/3或以上記賬人停止工作後,系統將無法提供服務;
2)當有1/3或以上記賬人聯合作惡,且其它所有的記賬人被恰好分割為兩個網路孤島時,惡意記賬人可以使系統出現分叉,但是會留下密碼學證據
下面說兩個國產的吧~
4.dBFT: delegated BFT 授權拜占庭容錯演算法
介紹:小蟻採用的dBFT機制,是由權益來選出記賬人,然後記賬人之間通過拜占庭容錯演算法來達成共識。
此演算法在PBFT基礎上進行了以下改進:
將C/S架構的請求響應模式,改進為適合P2P網路的對等節點模式;
將靜態的共識參與節點改進為可動態進入、退出的動態共識參與節點;
為共識參與節點的產生設計了一套基於持有權益比例的投票機制,通過投票決定共識參與節點(記賬節點);
在區塊鏈中引入數字證書,解決了投票中對記賬節點真實身份的認證問題。
優點:
1)專業化的記賬人;
2)可以容忍任何類型的錯誤;
3)記賬由多人協同完成,每一個區塊都有最終性,不會分叉;
4)演算法的可靠性有嚴格的數學證明;
缺點:
1)當有1/3或以上記賬人停止工作後,系統將無法提供服務;
2)當有1/3或以上記賬人聯合作惡,且其它所有的記賬人被恰好分割為兩個網路孤島時,惡意記賬人可以使系統出現分叉,但是會留下密碼學證據;
以上總結來說,dBFT機制最核心的一點,就是最大限度地確保系統的最終性,使區塊鏈能夠適用於真正的金融應用場景。
5.POOL驗證池
基於傳統的分布式一致性技術,加上數據驗證機制。
優點:不需要代幣也可以工作,在成熟的分布式一致性演算法(Pasox、Raft)基礎上,實現秒級共識驗證。
缺點:去中心化程度不如bictoin;更適合多方參與的多中心商業模式。

『貳』 什麼是共識演算法ByzantinePaxos(2010)

原始Paxos的BFT版本,在相同網路假設下存在1/3拜占庭故障節點時是安全的。這是由(你可能已經猜到了)LeslieLamport發明的,是他最初的Paxos論文的延伸。

『叄』 什麼是共識機制

共識機制,簡單說就是在一個時間段內對事物的前後順序達成共識的一種演算法。

在區塊鏈上,共識機制就像一個國家的法律,維系著區塊鏈世界的正常運轉。在區塊鏈上,每個人都會有一份記錄鏈上所有交易的賬本,鏈上產生一筆新的交易時,每個人接收到這個信息的時間是不一樣的,有些想要干壞事的人就有可能在這時發布一些錯誤的信息,這時就需要一個人把所有人接收到的信息進行驗證,最後公布最正確的信息。

目前,常用的共識機制有三種:

1、工作量證明機制(Proof of Work - PoW)是我們最熟知的一種共識機制。就如字面的解釋,PoW就是工作越多,收益越大。這里的工作就是猜數字,誰能最快的猜出這個唯一的數字,誰就能做信息公示人。

2、權益證明機制(Proof of Stake-PoS)也屬於一種共識證明,它類似股權憑證和投票系統,因此也叫「股權證明演算法」。由持有最多(token)的人來公示最終信息。

3、拜占庭共識演算法(Practical Byzantine Fault Tolerance- PBFT)也是一種常見的共識證明。它與之前兩種都不相同,PBFT以計算為基礎,也沒有代幣獎勵。由鏈上所有人參與投票,少於(N-1)/3個節點反對時就獲得公示信息的權利。

『肆』 分布式共識包含哪三種方法

PoW 、PoS 、DPOW都是什麼意思?
說到區塊鏈,我們必然會談及它的共識機制。不了解區塊鏈的共識機制,就無法理解區塊鏈的真正意義。那麼,今日份的區塊鏈的共識機制了解一下?
共識機制是什麼?
什麼是共識?直取它的字面意思,就是"共同的認識".
人與人是不同的,這種不同不僅體現在身材、長相、能力,更體現在文化、觀點、想法、利益訴求等等方面。
共識,簡而言之,就是一個群體的成員在某一方面達成的一致意見。
我們了解到,信任是社會運轉中的一大痛點,銀行有自己的信用體系,過去的金融體系服務於只服務於極少的企業家,因為建立信用體系耗資巨大。後來支付寶有了芝麻信用,信用已經關繫到生活的很多方面,信用卡額度、花唄額度,芝麻信用高出國還可以免簽。我們正享受著信用給我們帶來的便捷。
區塊鏈本質是去中心化,去中心化的核心是共識機制,區塊鏈上的共識機制主要解決由誰來構造區塊,以及如何維護區塊鏈統一的問題。
區塊鏈共識機制的目標是使所有的誠實節點保存一致的區塊鏈視圖,同時滿足兩個性質:
1)一致性:所有誠實節點保存的區塊鏈的前綴部分完全相同。
2)有效性:由某誠實節點發布的信息終將被其他所有誠實節點記錄在自己的區塊鏈中。
區塊鏈的自信任主要體現於分布於區塊鏈中的用戶無須信任交易的另一方,也無須信任一個中心化的機構,只需要信任區塊鏈協議下的軟體系統即可實現交易。
共識機制是什麼?PoW 、PoS 、DPOW都是什麼意思?
共識機制的必要性?
分布式系統中,多個主機通過非同步通信方式組成網路集群。在這樣的一個非同步系統中,需要主機之間進行狀態復制,以保證每個主機達成一致的狀態共識。錯誤信息可能出現在非同步系統內並不斷傳播,因此需要在默認不可靠的非同步網路中定義容錯協議,以確保各主機達成安全可靠的狀態共識,這就是共識機制誕生的必要性。
這種自信任的前提是區塊鏈的共識機制(consensus),即在一個互不信任的市場中,要想使各節點達成一致的充分必要條件是每個節點出於對自身利益最大化的考慮,都會自發、誠實地遵守協議中預先設定的規則,判斷每一筆記錄的真實性,最終將判斷為真的記錄記入區塊鏈之中。attachments-2018-08-9yY7VRHa5b738e3d96021.jpg
換句話說,如果各節點具有各自獨立的利益並互相競爭,則這些節點幾乎不可能合謀欺騙你,而當節點們在網路中擁有公共信譽時,這一點體現得尤為明顯。區塊鏈技術正是運用一套基於共識的數學演算法,在機器之間建立"信任"網路,從而通過技術背書而非中心化信用機構來進行全新的信用創造。
當今區塊鏈的幾種共識機制介紹
區塊鏈上的共識機制有多種,但任何一種都不是完美無缺,或者說適用於所有應用場景的。
PoW 工作量證明
整個系統中每個節點為整個系統提供計算能力(簡稱算力),通過一個競爭機制,讓計算工作完成最出色的節點獲得系統的獎勵,即完成新生成貨幣的分配,簡單理解就是多勞多得,bitcoin、LTC等貨幣型區塊鏈就應用POW機制。
優點
完全去中心化節點自由進出,演算法簡單,容易實現破壞系統花費的成本巨大,只要網路破壞者的算力不超過網路總算力的50%,網路的交易狀態就能達成一致
缺點
浪費能源,這是最大的缺點區塊的確認時間難以縮短,如bitcoin每秒只能做7筆交易,不適合商業應用新的區塊鏈必須找到一種不同的散列演算法,否則就會面臨bitcoin的算力攻擊對節點的性能網路環境要求高容易產生分叉,需要等待多個確認無法達成最終一致性
PoS 權益證明
也稱股權證明,類似於你把財產存在銀行,這種模式會根據你持有加密貨幣的數量和時間,分配給你相應的利息。
優點
對節點性能要求低,達成共識時間短
缺點
沒有最終一致性,需要檢查點機制來彌補最終性
DPOW 委託股權證明
DPOW是 PoS 的進化方案,在常規 PoW和 PoS 中,任何一個新加入的區塊,都需要被整個網路所有節點做確認,非常影響效率。
DPoS則類似於現代董事會的投票機制,通過選舉代表來進行投票和決策。被選舉出的n個記賬節點來做新區塊的創建、驗證、簽名和相互監督,這樣就極大地減少了區塊創建和確認所需要消耗的時間和算力成本。
優點
大幅縮小參與驗證和記賬節點的數量,可以達到秒級的共識驗證
缺點
犧牲了去中心化的概念,不適合公有鏈
PBFT 實用拜占庭容錯
實用拜占庭容錯機制是一種採用"許可投票、少數服從多數"來選舉領導者並進行記賬的共識機制,該共識機制允許拜占庭容錯,允許強監督節點參與,具備許可權分級能力,性能更高,耗能更低,而且每輪記賬都會由全網節點共同選舉領導者,允許33%的節點作惡,容錯率為33%.實用拜占庭容錯特別適合聯盟鏈的應用場景。
優點
會背離中心化,加密貨幣的存在及獎勵機制會產生馬太效應,讓社區中的窮者更窮,富者更富共識效率高,可實現高頻交易
缺點
當系統只剩下33%的節點運行時,系統會停止運行
dBFT 授權拜占庭容錯
這種機制是用權益來選出記賬人,然後記賬人之間通過拜占庭容錯演算法達成共識。授權拜占庭容錯機制最核心的一點,就是最大限度地確保系統的最終性,使區塊鏈能夠適用於真正的金融應用場景。
優點
專業化的記賬人可以容忍任何類型的錯誤記賬由多人協同完成,每一個區塊都有最終性,不會分叉演算法的可靠性有嚴格的數學證明
缺點
當三分之一或以上記賬人停止工作後,系統將無法提供服務當三分之一或以上記賬人聯合作惡,可能會使系統出現分叉
Pool 驗證池
基於傳統的分布式一致性技術,加上數據驗證機制。
優點
不需要加密貨幣也可以工作,在成熟的分布式一致性演算法(Pasox、Raft)基礎上,實現秒級共識驗證。
缺點
去中心化程度不如bitcoin,更適合多方參與的多中心商業模式。
Paxos
這是一種傳統的分布式一致性演算法,是一種基於選舉領導者的共識機制。領導者節點擁有絕對許可權,並允許強監督節點參與,其性能高,資源消耗低。所有節點一般有線下准入機制,但選舉過程中不允許有作惡節點,不具備容錯性。
Paxos演算法中將節點分為三種類型:
proposer:提出一個提案,等待大家批准為結案。往往是客戶端擔任該角色
acceptor:負責對提案進行投票。往往是服務端擔任該角色
learner:被告知結案結果,並與之統一,不參與投票過程。可能為客戶端或服務端
Paxos 能保證在超過50%的正常節點存在時,系統能達成共識。
瑞波共識機制
瑞波共識演算法使一組節點能夠基於特殊節點列表形成共識,初始特殊節點列表就像一個俱樂部,要接納一個新成員,必須由該俱樂部51%的會員投票通過。共識遵循這些核心成員的"51%權利",外部人員則沒有影響力。由於該俱樂部由中心化開始,它將一直是中心化的,而如果它開始腐化,股東們什麼也做不了。與bitcoin及Peercoin一樣,瑞波系統將股東們與其投票權隔開,因此,它比其他系統更中心化。
Peercoin
Peercoin(點點幣,PPC),混合了POW工作量證明及POS權益證明方式,其中POW主要用於發行貨幣,未來預計隨著挖礦難度上升,產量降低,系統安全主要由POS維護。
在區塊鏈網路中,由於應用場景的不同,所設計的目標各異,不同的區塊鏈系統採用了不同的共識演算法。每種共識演算法都不是完美的,都有其優點和局限性。
區塊鏈解決了在不可信信道上傳輸可信信息、價值轉移的問題,而共識機制解決了區塊鏈如何分布式場景下達成一致性的問題。
雖然區塊鏈目前還處於發展的早期,行業發展還面臨著一些阻礙,但社會已經足夠多地認識到區塊鏈的價值,區塊鏈發展的腳步絕不會停滯不前,行業發展也定會找到突破阻礙的方法。

『伍』 區塊鏈共識機制,拜占庭將軍問題是什麼

POW完全依靠用經濟激勵的方式來大量增加記賬參與者, 從而稀釋作惡節點的比例, 或者說大幅增加作惡的成本, 做假賬者需要控制或者賄賂更多的節點。這是一種簡單粗暴的共識機制, 在演算法上沒有優化過,但是又非常可行, 現在體量最大的兩條區塊鏈, 比特幣和以太坊都是用POW挖礦的方式。
POW雖然不是最優,但是現在最最切實可行的共識演算法。例如比特幣、萊特幣、DECENT都是採用的POW證明機制。

『陸』 什麼是poc容量證明共識演算法

PoC是Proof of Capacity的縮寫,翻譯成漢語就是容量證明。顧名思義,就是通過存儲容量的多少來決定區塊生成權的演算法。PoC共識機制用更加通俗的語言表達就是用CPU,GPU預算出一堆彩票號碼,然後填滿硬碟,挖礦就是尋找中獎的彩票號碼。
目前大部分數字貨幣挖礦採用的是PoW(工作量證明)。僅有Burst、BHD、Newbi使用PoC共識機制。

『柒』 共識演算法都包括了什麼演算法

下面列出30種共識演算法。
1. 工作量證明(PoW,Proof of Work)
2. 權益證明(PoS,Proof of Stake)
3. 延遲工作量證明(dPoW,Delayed Proof-of-Work)
4. 授權 PoS(DPoS,Delegated Proof-of-Stake)
5. 權威證明(PoA,Proof-of-Authority)
6. 權重證明(PoWeight,Proof-of-Weight)
7. 聲譽證明(PoR,Proof of Reputation)
8. 所用時間證明(PoET,Proof of Elapsed Time)
9. 容量證明(PoC,Proof of Capacity),也稱為空間證明(PoSpace,Proof of Space)
10. 歷史證明(PoHistory,Proof of History)
11. 權益流通證明(PoSV,Proof of Stake Velocity)
12. 重要性證明(PoImportance,Proof of Importance)
13. 燒毀證明(PoBurn,Proof of Burn)
14. 身份證明(PoI,Proof of Identity)
15. 活動證明(PoActivity,Proof Of Activity)
16. 時間證明(PoTime,Proof of Time)
17. 存在證明(PoExistence,Proof of Existence)
18. Ouroboros
19. 可收回證明(PoR,Proof of Retrievability)
20. 拜占庭容錯(Byzantine Fault Tolerance)
21. 授權拜占庭容錯演算法(dBFT,Delegated Byzantine Fault Tolerance)
22. RAFT
23. 恆星共識(Stellar Consensus)
24. 置信度證明(PoB,Proof of Believability)
25. 有向無環圖(DAG,Directed Acyclic Graphs)
26. Tangle(IOTA)
27. Hashgraph
28.Holochain
29. Block-Lattice(Nano)
30.SPECTRE

『捌』 Klaytn是採用哪種演算法來運行網路的

基於伊斯坦布爾拜占庭容錯共識演算法,Klaytn採用了「共識私有」與「網路公開」相結合的信任模型,該模型包含共識節點與終端節點。前者共同組成一個私有網路,通過運行拜占庭一致性演算法以確認交易;後者則負責雙重查驗交易結果。任何人均可作為終端節點加入Klaytn網路。

熱點內容
如何用方向鍵控制安卓機 發布:2024-05-17 16:38:11 瀏覽:197
雨田系統源碼 發布:2024-05-17 16:28:06 瀏覽:585
新手直播腳本 發布:2024-05-17 16:27:25 瀏覽:846
python雙引號單引號 發布:2024-05-17 16:19:31 瀏覽:947
0xxc語言 發布:2024-05-17 16:17:40 瀏覽:699
php與java的區別 發布:2024-05-17 16:12:48 瀏覽:339
registrar伺服器地址是什麼 發布:2024-05-17 16:11:46 瀏覽:112
訂閱號助手如何找到密碼 發布:2024-05-17 15:57:47 瀏覽:711
搜解壓縮 發布:2024-05-17 15:38:32 瀏覽:764
水泵揚程演算法 發布:2024-05-17 15:37:29 瀏覽:977