Conflux的樹圖結構究竟有什麼優點和特別之處?

時間 2021-06-19 02:30:41

1樓:

與中本聰共識在打包區塊時對交易順序進行嚴格規範不同,Conflux樂觀地假設,在並存的區塊中,交易(Tx,Transactions)是不衝突的,只要所有節點對一致的交易順序達成共識即可。基於這一假設,Conflux首先設立規則將區塊們集成為有向無環圖(DAG):每個區塊都需要引用乙個它的父區塊的邊(Parent Edges),每個區塊也可以引用發生在它之前的,還沒有被引用過的區塊的邊作為他們的引用邊(Reference Edges),父邊和引用邊確定了各個區塊之間的先後關係,實現了DAG的整體框架,增加了同一時段一起被處理的區塊的數量。

相較於位元幣一次只能處理乙個區塊的低效模式而言,DAG結構大大提公升了公鏈的速度。

然而DAG不能顯示同一時段產生的不同區塊之間的順序(即區塊全序),為進一步完善區塊排序機制,Conflux團隊創造性地引入了GHOST演算法、拓撲排序,並提出了Epoch概念,將細化排列區塊全序的步驟拆分成了四步:

圖中實線箭頭指向父區塊邊,虛線箭頭指向引用區塊邊)

確認樞軸鏈(Pivot Chain):Conflux改採用GHOST演算法,即選擇擁有最多子區塊的區塊作為樞軸鏈(Pivot Chain)上的區塊,然後再採用同樣的演算法將它之後的區塊納入樞軸鏈。如上圖所示,區塊A和區塊B都是創世區塊的子區塊, 雖然區塊B之後的的鏈是最長鏈,但區塊A擁有更多的子區塊(5個),所以GHOST演算法會選擇區塊A作為樞軸鏈上的區塊。

樞軸鏈即確定整個公鏈方向的主鏈,Conflux團隊表示GHOST演算法讓樞軸鏈和樞軸鏈以外其他分叉鏈上的區塊,都對確認樞軸鏈做出了貢獻,這樣就可以進一步保障由誠實節點確定的樞軸鏈的安全性,除非攻擊者的算力超過了50%。

排列分叉鏈的區塊:在確認了主鏈之後,為了讓所有節點對區塊全序產生共識,Conflux又提出了「時段」(Epoch)概念,每個樞軸鏈上的區塊,都對應某一時段,分叉鏈上區塊的時段,由產生在它之後的第乙個引用它的樞軸鏈區塊決定。如下圖所示,區塊D的時段屬於Epoch E,因為區塊E是最先引用D的樞軸鏈區塊。

時段(Epoch)內排序:Epoch內的區塊,都產生於同一時段,這些區塊之間的順序,由拓撲排序(Topologically Sorting)來決定,如果兩個區塊的排序一樣,那就根據他們的雜湊ID來排序。

交易(Tx)排序:此時,每個區塊之間的順序已經確定了,Conflux按照區塊順序給交易排序。區塊內部的交易順序由交易自己在區塊出現的順序來確定。

Conflux提供了一種快速的、可擴充套件的、去中心化並且安全的共識方案,給予區塊鏈技術公升級和場景應用以極大的幻想空間。尋弊索瑕的一點,我們認為Conflux在證明區塊鏈效能的過程中,過分樂觀地假設了交易之間不衝突(即假設節點打包的都是獨一無二的交易),忽略了被重複打包的交易對真實交易處理量的影響

19 20 賽季的塔圖姆究竟有多強?

凍魚 已經有人把塔圖姆的各項資料都列出來了,我就不重複寫了。只能說這個賽季的塔圖姆很強,很強!今年入選全明星,就是對他這個賽季優異表現的褒獎,當然這是他應得的!凱爾特人在連續兩年的選秀中得到杰倫布朗和塔圖姆之後,他們終於迎來了兩個能打的年輕人。前兩個賽季我看了不少場次綠衫軍的比賽,我把塔圖姆和杰倫布...

請問 Redis究竟有幾種資料結構?分別有什麼特點?

華為雲開發者社群 Redis是一款基於鍵值對的NoSQL資料庫,它的值支援多種資料結構 字串 strings 雜湊 hashes 列表 lists 集合 sets 有序集合 sorted sets 等。下面詳細來看一下 資料結構 struct sdshdr 常見操作 127.0.0.1 6379 s...

盛唐的長安,究竟有多美?

Jin 我先反駁一下知乎推薦的賬號 第一 漢魏洛陽城的面積近一百平方公里,是中國歷史上最大的都城面積。附中國考古網,文章出處 中國社會科學網 中國社會科學報 上承兩漢下啟隋唐 曹魏都城形制影響深遠 都城史上 承上啟下 的漢魏洛陽城 訪中國社會科學院考古研究所研究員錢國祥 第二,建中立極始於東漢,隋唐...