前言
??DAG概念,當(dāng)做繼比特幣拗引,以太坊后新的一代區(qū)塊鏈技術(shù)(區(qū)塊鏈3.0)借宵,那么DAG區(qū)塊鏈?zhǔn)鞘裁矗緿AG的由來是什么矾削?它的技術(shù)理念是怎么樣的壤玫?運(yùn)行在DAG區(qū)塊鏈上的協(xié)議有哪些?
??要想解釋DAG垦细,離不開Yonatan Sompolinsky 和 Aviv Zohar兩位以色列人,他們是DAG區(qū)塊鏈這一概念的提出者挡逼。在DAG之前括改,Aviv Zohar提出了一個GHOST協(xié)議(以太坊初期就采用了GHOST協(xié)議),該協(xié)議解決的是鏈分叉帶來的安全性問題家坎,而分叉的區(qū)塊鏈 在GHOST協(xié)議下數(shù)據(jù)結(jié)構(gòu)就從一條鏈變成了一個樹(Tree)嘱能,而之后Aviv Zohar進(jìn)一步提出了一個inclusive協(xié)議,在inclusive協(xié)議規(guī)則下虱疏,區(qū)塊的結(jié)構(gòu)就變成了有向無環(huán)圖(DAG)惹骂。
接下來本文將:
??1.介紹GHOST協(xié)議,DAG由來背后的設(shè)計原理
??2.介紹三種針對DAG型區(qū)塊鏈設(shè)計的協(xié)議做瞪,SPECTRE对粪、PHANTOM和CONFLUX右冻。
GHOST協(xié)議
??GHOST協(xié)議是為了解決分叉導(dǎo)致鏈安全性降低的一個協(xié)議。
??下邊將通過解釋什么是分叉著拭,為什么分叉會降低鏈的安全性纱扭,鏈上擴(kuò)容為什么會導(dǎo)致更多分叉來詳細(xì)介紹GHOST協(xié)議。
區(qū)塊鏈一定會產(chǎn)生分叉
一筆比特幣交易為什么要等6個區(qū)塊的交易時長呢儡遮?
??等待不是為了防范51%攻擊的乳蛾。落后6個區(qū)塊,如果擁有超過51%的算力鄙币,只要足夠長的時間肃叶,一定能夠產(chǎn)生更長的鏈完成攻擊。它是為了防止分叉帶來的風(fēng)險十嘿。
??比特幣在理想情況下因惭,不同節(jié)點(diǎn)之間有相同的一條區(qū)塊鏈,全部節(jié)點(diǎn)都是基于同一個區(qū)塊進(jìn)行挖礦详幽,但當(dāng)兩個挖礦節(jié)點(diǎn)幾乎同時挖到一個新的區(qū)塊筛欢,當(dāng)它們接收到對方產(chǎn)生的區(qū)塊時浸锨,不同的節(jié)點(diǎn)將選擇基于其中一個區(qū)塊挖礦唇聘,分叉產(chǎn)生了。之后節(jié)點(diǎn)會根據(jù)哪條分叉更長柱搜,選擇哪條是主鏈進(jìn)行挖礦迟郎,而不是主鏈的分叉區(qū)塊全部被拋棄。
??比特幣每天都會發(fā)生二分叉聪蘸,但出現(xiàn)連續(xù)的六次分叉幾乎不可能宪肖,于是要等待6個區(qū)塊的確認(rèn)時間。(這種分叉不是來自惡意攻擊健爬,是偶然性以及網(wǎng)絡(luò)延遲導(dǎo)致的控乾。
比特幣安全性低于51%
分叉將‘攻擊不超過51%算力蜕衡,比特幣就是安全的’這一理論推翻。
??在比特幣中设拟,當(dāng)鏈有分叉時慨仿,將選擇分叉最長的鏈作為主鏈,惡意攻擊就是產(chǎn)生一條比主鏈更長的鏈代替主鏈纳胧。
??下圖中藍(lán)色區(qū)塊代表誠實(shí)區(qū)塊镰吆,紅色代表攻擊區(qū)塊。2號跑慕、3號藍(lán)色區(qū)塊產(chǎn)生分叉万皿,此時攻擊節(jié)點(diǎn)產(chǎn)生5個攻擊區(qū)塊(紅色)就能產(chǎn)生一條更長的鏈完成攻擊。雖然藍(lán)色區(qū)塊總數(shù)更多(有6個),但分叉的區(qū)塊沒有增加鏈的長度牢硅,這種情況下慰于,紅色攻擊方在算力(假設(shè)每個區(qū)塊代表算力相同)沒有超過51%的情況下攻擊成功。
??比特幣當(dāng)前安全的原因在于10分鐘的區(qū)塊時間降低了分叉可能性唤衫,但其實(shí)際安全算力仍低于51%婆赠,也就是說,不需要51%的算力也能攻擊成功佳励。
鏈上擴(kuò)容會帶來更多分叉
??采用大區(qū)塊以及小的產(chǎn)出時間將導(dǎo)致鏈有很多分叉休里。 ??
??比特幣當(dāng)前處理交易量很低,改進(jìn)這個缺陷一個可行方法就是增大區(qū)塊的大小和減小區(qū)塊的產(chǎn)出時間赃承。大區(qū)塊需要更多的網(wǎng)絡(luò)傳輸時間妙黍、單位時間更多的區(qū)塊數(shù)都會導(dǎo)致更多的分叉。 ??
??鏈上擴(kuò)容的方案對比特幣處理交易能力提升是巨大的瞧剖,假如每個區(qū)塊大小變?yōu)樵瓉淼陌吮?8M)拭嫁,出塊時間縮短為原來的五分之一(2分鐘),理想情況下抓于,比特幣的處理交易量將變?yōu)樵瓉淼?strong>40倍做粤,實(shí)際情況會產(chǎn)生分叉,交易量不會有這么高捉撮。
GHOST核心規(guī)則
??主鏈選擇中怕品,采用計算最大子樹來代替比特幣中的最長鏈規(guī)則。 ??
??比特幣的最長鏈規(guī)則在有分叉情況下巾遭,將降低鏈的安全性肉康,分叉越多,安全性越低灼舍。鏈上擴(kuò)容將導(dǎo)致更多分叉吼和,導(dǎo)致鏈不安全。
??Yonatan Sompolinsky提出GHOST規(guī)則骑素,當(dāng)有分叉時炫乓,通過計算最大子樹,也就是每條分叉擁有的所有區(qū)塊數(shù)來決定哪條鏈?zhǔn)侵麈?/strong>砂豌。圖0中厢岂,鏈在區(qū)塊0后分叉了,上邊分叉總計有6個藍(lán)色區(qū)塊阳距,下邊分叉有5個紅色區(qū)塊塔粒,藍(lán)色區(qū)塊1是主鏈,所以紅色攻擊失敗筐摘。 ??
??在有大量分叉的情況下卒茬,GHOST規(guī)則將鏈安全性直接提到了51%船老,分叉對采用GHOST協(xié)議的鏈安全性沒有影響。
??根據(jù)GHOST規(guī)則,上圖中雖然誠實(shí)節(jié)點(diǎn)產(chǎn)生了12個區(qū)塊郭赐,但加入主鏈的只有4個區(qū)塊薪韩,大量區(qū)塊被丟棄,假定比特幣每個區(qū)塊大小變?yōu)樵瓉淼陌吮?8M)捌锭,出塊時間縮短為原來的十分之一(1分鐘)俘陷,分叉率為0.33(產(chǎn)生的區(qū)塊加入主鏈的概率),比特幣的處理交易能力將變?yōu)樵瓉淼?strong>26.6倍观谦。
GHOST協(xié)議解決了鏈上擴(kuò)容導(dǎo)致分叉帶來的安全性問題拉盾。
區(qū)塊的結(jié)構(gòu)類型就從一條鏈變?yōu)闃?/strong>
??在GHOST的提出后,Yonatan Sompolinsky提出一種新的設(shè)想豁状,新產(chǎn)生的區(qū)塊指向所有已知的分叉末端區(qū)塊捉偏,即一個區(qū)塊有多個父親,此時區(qū)塊鏈就從一條鏈變?yōu)槎鄺l分叉鏈共同組成的的結(jié)構(gòu)泻红,這樣的鏈結(jié)構(gòu)就被叫做DAG(有向無環(huán)圖)夭禽。
Yonatan Sompolinsky進(jìn)而提出了在DAG上運(yùn)行的inclusive協(xié)議,原理如下:
- 用比特幣的最長鏈原則或GHOST原則找到一個DAG的主鏈
- 根據(jù)后序遍歷算法對DAG排序承桥,結(jié)合主鏈的排序驻粟,最終形成一個所有區(qū)塊的線性排序
- 根據(jù)排序結(jié)果,依次提取區(qū)塊交易信息凶异,產(chǎn)生無沖突交易集
遺憾的是,Yonatan Sompolinsky之后并沒有詳細(xì)介紹補(bǔ)充該協(xié)議挤巡,而是提出了一種新思路的DAG協(xié)議——SPECTRE剩彬。
??看完上邊內(nèi)容之后,你會發(fā)現(xiàn)矿卑,最長鏈規(guī)則下喉恋,分叉的區(qū)塊對比特幣安全性和交易量沒有任何貢獻(xiàn),白白的浪費(fèi)了算力母廷,而GHOST通過計算分叉區(qū)塊個數(shù)來提升鏈的安全性轻黑,但分叉區(qū)塊除了納入?yún)^(qū)塊計數(shù)外,區(qū)塊內(nèi)包含的交易信息卻全部被丟棄琴昆。
??這種新的區(qū)塊結(jié)構(gòu)帶來了新的特性氓鄙,當(dāng)然,比特幣的最長鏈規(guī)則也可以在DAG上實(shí)施业舍,只不過安全性和處理交易能力不佳抖拦,而GHOST協(xié)議可以提高安全性和處理交易能力升酣,為了最大化利用DAG區(qū)塊鏈特性,社區(qū)提出了不同的協(xié)議态罪,接下來介紹Yonatan Sompolinsky 提出的SPECTRE協(xié)議噩茄,以及PHANTOM協(xié)議,以及國內(nèi)某社區(qū)提出的CONFLUX協(xié)議复颈。
SPECTRE協(xié)議
丟棄主鏈概念绩聘,所有產(chǎn)生的區(qū)塊共同構(gòu)成賬本,不丟棄任何一個區(qū)塊
??只要是產(chǎn)生的區(qū)塊就不會被丟棄耗啦,所有的區(qū)塊都是有效的君纫,所有區(qū)塊共同組成賬本,這樣進(jìn)一步提高了區(qū)塊鏈的處理交易能力芹彬,該設(shè)計的關(guān)鍵在于設(shè)計算法來保證區(qū)塊鏈不會被惡意攻擊成功蓄髓。 ??
??SPECTRE協(xié)議較為復(fù)雜,下邊將從其如何產(chǎn)生區(qū)塊舒帮、如何處理沖突交易以及產(chǎn)生可信交易集三個方面進(jìn)行描述会喝。
SPECTRE——挖礦
SPECTRE協(xié)議中,當(dāng)產(chǎn)生區(qū)塊時玩郊,要指向之前所有分叉的末端區(qū)塊肢执。
??下圖中,左邊為比特幣產(chǎn)生區(qū)塊時译红,當(dāng)有分叉出現(xiàn)预茄,新區(qū)塊將選擇基于其中一個產(chǎn)生新的區(qū)塊,而SPECTRE中侦厚,將基于所有分叉末端區(qū)塊產(chǎn)生新的區(qū)塊耻陕。同時,當(dāng)有新區(qū)塊產(chǎn)生時刨沦,節(jié)點(diǎn)要立刻將新區(qū)塊(包含基于哪些區(qū)塊產(chǎn)生這一信息)發(fā)送給與自己相連接的節(jié)點(diǎn)诗宣。
??仔細(xì)觀察想诅,GHOST協(xié)議中雖然有分叉召庞,但每個區(qū)塊都只基于前邊某一個區(qū)塊產(chǎn)生,而SPECTRE協(xié)議中要基于當(dāng)前節(jié)點(diǎn)知道的所有末端區(qū)塊產(chǎn)生下一個區(qū)塊来破。
SPECTRE協(xié)議將礦工維持交易不沖突的要求剝除 ??
??比特幣就像一本權(quán)威的賬本篮灼,只要是里邊記錄的,就一定是真的(不考慮分叉和惡意攻擊)徘禁,而SPECTRE產(chǎn)生的DAG就像一本不權(quán)威賬本诅诱,里邊的交易信息可能沖突(上邊圖1中兩個1區(qū)塊中可能包含沖突交易信息)。 ??
??該協(xié)議下晌坤,挖礦節(jié)點(diǎn)只負(fù)責(zé)迅速挖區(qū)塊(能夠達(dá)到1秒一個區(qū)塊)逢艘,而對分叉中可能包含的沖突交易在挖礦階段并不做任何處理旦袋,將記錄交易速度最大化,讓DAG這種區(qū)塊鏈有著恐怖的處理交易能力它改。
SPECTRE——沖突解決
??是時候解決挖礦不解決的沖突交易問題了疤孕,SPECTRE的思路是設(shè)計一個計算投票的算法,讓誠實(shí)區(qū)塊會投票給誠實(shí)的區(qū)塊央拖,后邊的誠實(shí)區(qū)塊會給前邊的堆疊算力祭阀,從而讓惡意攻擊失敗吸奴,其安全算力也是51%堡妒。 ??
??拿雙花舉例粒梦,下圖中苇侵,X和Y區(qū)塊中包含著兩條沖突交易會導(dǎo)致雙花,此時DAG中的區(qū)塊會對X和Y進(jìn)行投票慨削,決定哪一個交易有效灾搏。
投票規(guī)則如下失都,投X的標(biāo)藍(lán)柏蘑,投Y的標(biāo)紅,X<Y代表X先于Y:
- X后邊的粹庞,只能到X的投X咳焚,圖中6、7庞溜、8投X革半,同理9、10流码、11投Y又官。
- X后邊的,能到X也能到Y(jié)旅掂,根據(jù)上一次(圖中虛線圈內(nèi))的投票結(jié)果投赏胚,12投X。
- 不在X商虐、Y后邊的,根據(jù)自己后邊所有的區(qū)塊投哪個票多的投崖疤,1-5區(qū)塊投X
- X秘车、Y投自己
??根據(jù)投票結(jié)果,X中的那條交易信息有效劫哼,Y中對應(yīng)的那條交易信息無效叮趴。 ??Yonatan Sompolinsky也對不指向前邊區(qū)塊以及產(chǎn)生區(qū)塊不發(fā)給鄰居節(jié)點(diǎn)的惡意攻擊有進(jìn)行分析,在投票規(guī)則中权烧,低于50%算力的攻擊者會失敗眯亦。 ??
??投票聽起來像是一個主動地中心化行為伤溉,實(shí)際上不是,程序根據(jù)當(dāng)前DAG區(qū)塊所處的狀態(tài)自發(fā)完成這一區(qū)塊投票計算過程妻率,就相當(dāng)于乱顾,給定一個DAG數(shù)據(jù),輸入為兩條沖突信息宫静,運(yùn)行該規(guī)則算法走净,將得出一對沖突交易的哪一個為有效。
SPECTRE——產(chǎn)生可信交易集
SPECTRE可信交易集就相當(dāng)于超過當(dāng)前6個區(qū)塊的比特幣鏈里組成的交易集合孤里。 ??區(qū)塊鏈從數(shù)字加密貨幣的角度來說伏伯,就是一個賬本,從賬本上的交易信息中得出每個賬戶所擁有的貨幣捌袜,所以说搅,得出確定的、不可能更改的交易信息就至關(guān)重要虏等,SPECTRE可信交易集產(chǎn)生過程如下:
- 遍歷區(qū)塊弄唧,依次提取交易信息,無沖突交易加入無沖突交易集博其。
- 將導(dǎo)致賬戶余額不足的沖突交易加入沖突交易集套才。
- 根據(jù)上邊的投票算法,依次對沖突交易進(jìn)行投票慕淡,產(chǎn)生沖突區(qū)塊順序集背伴,決定哪一條交易有效。
- 將投票有效的交易加入無沖突交易集峰髓。
- 將無沖突交易集中超過一定時間的交易組建可信交易集傻寂,即該交易池交易信息基本不可能被篡改。
SPECTRE并不會對所有區(qū)塊進(jìn)行排序携兵,所有區(qū)塊沒有一個完整的線形順序疾掰,有的只是決定沖突信息先后的區(qū)塊順序?qū)Α?/strong> ??
??比特幣中的高度代表的就是線形順序,高度低的區(qū)塊中交易信息先于高度高的區(qū)塊里的信息徐紧,高度高的區(qū)塊就不能包含和高度低的區(qū)塊沖突的交易静檬,而SPECTRE有大量的分叉,區(qū)塊高度不能代表線形順序并级,前邊的區(qū)塊交易信息不一定先于后邊的分叉區(qū)塊交易信息拂檩,交易信息的有效性要由投票算法來決定,區(qū)塊投票算法很快嘲碧,再加上它將所有分叉區(qū)塊都包含進(jìn)來稻励,也就沒有了比特幣所面臨的分叉風(fēng)險(等待6個區(qū)塊),交易確認(rèn)時間可以達(dá)到10秒愈涩。
至此望抽,和比特幣相比加矛,SPECTRE對應(yīng)的DAG區(qū)塊鏈有三個特點(diǎn):
- 恐怖的交易處理能力
- 極短的交易確認(rèn)時間
- 實(shí)際的51%安全算力
??SPECTRE協(xié)議非常適合DAG型數(shù)字加密貨幣,但當(dāng)它用于智能合約時煤篙,它的缺陷就出來了斟览,智能合約需要一個嚴(yán)格的線性順序,對此Yonatan Sompolinsky新設(shè)計了PHANTOM協(xié)議來對DAG區(qū)塊形成一個線性順序舰蟆,下邊將詳細(xì)介紹PHANTOM協(xié)議趣惠。
SPECTRE和PHANTOM是兩個完整的獨(dú)立的協(xié)議,不是一個對另一個的補(bǔ)充身害。
PHANTOM協(xié)議
??PHANTOM的挖礦機(jī)制和SPECTRE一樣味悄,會產(chǎn)生同樣類型的DAG,不同的是PHANTOM通過對區(qū)塊連通度分析塌鸯,判定區(qū)塊誠實(shí)還是惡意侍瑟,按照分類對區(qū)塊排序,對DAG區(qū)塊產(chǎn)生一個嚴(yán)格的線性順序丙猬,通過線性順序來判斷沖突交易有效性涨颜。
區(qū)塊連通度
DAG中,攻擊者有兩種攻擊手段茧球,一產(chǎn)生的區(qū)塊不基于已知的末端區(qū)塊庭瑰,二不立即發(fā)布自己產(chǎn)生的區(qū)塊,前者會讓自己區(qū)塊指向的區(qū)塊變少抢埋,后者讓其他節(jié)點(diǎn)產(chǎn)生的區(qū)塊不會指向自己的區(qū)塊弹灭,這兩種情況都會導(dǎo)致這些惡意區(qū)塊的與其它區(qū)塊的連接度低。
??誠實(shí)區(qū)塊在考慮網(wǎng)絡(luò)最大延遲下揪垄,經(jīng)過一定時間一定會傳遍整個網(wǎng)絡(luò)穷吮,一定會被后邊的區(qū)塊所指向,誠實(shí)節(jié)點(diǎn)在產(chǎn)生新區(qū)塊時也一定會指向自己所知道的末端區(qū)塊饥努。
??通過對區(qū)塊指出去的邊和指向該區(qū)塊的邊進(jìn)行分析捡鱼,也就是區(qū)塊的連通度,當(dāng)考慮最大的網(wǎng)絡(luò)延遲酷愧,連通度會有一個極限值K驾诈,低于該值的區(qū)塊可以被認(rèn)定為惡意區(qū)塊,在排序中要處于劣勢溶浴。
區(qū)塊判定
接下來翘鸭,進(jìn)行區(qū)塊誠實(shí)和惡意判定,判定分兩步戳葵,第一步最重要,實(shí)現(xiàn)復(fù)雜也耗費(fèi)時間汉匙,主要為通過對區(qū)塊連通度的判定拱烁,將強(qiáng)連通度的區(qū)塊標(biāo)為藍(lán)色視為誠實(shí)區(qū)塊生蚁,弱的標(biāo)為紅色視為惡意區(qū)塊。
??第二步先對藍(lán)色區(qū)塊集排序戏自,拓?fù)渑判虬钔叮缓髮?strong>紅色區(qū)塊集排序。紅色區(qū)塊的順序要處于弱勢擅笔,例如上圖中C志衣,它處于A和I之間,那么它的順序會排在I的前一個區(qū)塊猛们,而D念脯、H都會排在C前。注意通過考慮最大延遲時間設(shè)定連通度的值弯淘,幾乎所有正常誠實(shí)節(jié)點(diǎn)產(chǎn)生的區(qū)塊都會被標(biāo)記為藍(lán)色
??至此绿店,PHANTOM協(xié)議實(shí)現(xiàn)了對DAG的線性排序,通過線性順序就可以提取無沖突交易集庐橙,進(jìn)而提取可信交易集假勿,雖然耗時較長,滿足智能合約的要求态鳖。
PHANTOM + SPECTRE彩蛋
??Yonatan Sompolinsky在PHANTOM協(xié)議論文結(jié)尾转培,提出一種將PHANTOM + SPECTRE結(jié)合起來的可能協(xié)議,沒有詳細(xì)展開介紹浆竭。下圖是幾種協(xié)議的對比:
??至此,介紹了Yonatan Sompolinsky一開始從分叉導(dǎo)致不安全提出的GHOST兆蕉,到后來將DAG引入?yún)^(qū)塊鏈羽戒,設(shè)計了SPECTRE協(xié)議,以及為智能合約考慮的PHANTOM協(xié)議虎韵。接下來易稠,介紹國內(nèi)某社區(qū)提出的CONFLUX協(xié)議。
CONFLUX
??GHOST有主鏈但丟棄分叉區(qū)塊包蓝;SPECTRE沒有主鏈驶社,包含所有分叉,但沒有線性順序测萎;PHANTOM沒有主鏈亡电,包含分叉且有線性順序,而CONFLUX即有主鏈硅瞧,又是DAG份乒,利用主鏈讓DAG產(chǎn)生線性排序,下面將從挖礦機(jī)制和區(qū)塊排序兩方面來說明CONFLUX協(xié)議。
CONFLUX——挖礦
??CONFLUX協(xié)議定義了根源邊和參考邊或辖。新區(qū)塊是基于前一個主鏈區(qū)塊產(chǎn)生的瘾英,新區(qū)塊用根源邊(實(shí)線)指向前一區(qū)塊,用參考邊(虛線)指向分叉的其他區(qū)塊末端颂暇,如下圖最后一個新區(qū)塊實(shí)線指向H缺谴,虛線指向分叉末端區(qū)塊K。 根源邊用于代表區(qū)塊基于哪個區(qū)塊產(chǎn)生耳鸯,給哪個區(qū)塊堆疊算力湿蛔,參考邊用于表示分叉的其它區(qū)塊產(chǎn)生在該區(qū)塊之前。
挖礦過程如下:
- 給定一個DAG苫纤,抽出由根源邊組成的DAG,使用GHOST規(guī)則找到主鏈纲缓。
- 將新區(qū)塊的根源邊指向主鏈末尾卷拘。
- 將參考邊指向其余非主鏈分叉末端區(qū)塊。
根源邊只能有一條祝高,參考邊可多條(視情況而定)
CONFLUX——區(qū)塊排序
以主鏈區(qū)塊為分割點(diǎn)栗弟,將DAG分段,段間段內(nèi)設(shè)計簡單排序算法
??CONFLUX協(xié)議下產(chǎn)生的區(qū)塊鏈如上(圖2)工闺,接下來對其進(jìn)行線性排序乍赫,排序算法如下:
- 將DAG中的所有根源邊抽出來組成根源DAG,就是去除DAG里所有虛線陆蟆,保留實(shí)線雷厂。
- 對根源DAG使用GHOST規(guī)則找到主鏈。
- 主鏈上的每一個區(qū)塊就是一個時間段節(jié)點(diǎn)叠殷,從上個主鏈區(qū)塊到該區(qū)塊產(chǎn)生之前的時間內(nèi)產(chǎn)生的所有區(qū)塊都屬于該時間段改鲫,然后將整個DAG切割成一段一段的。
- 段內(nèi)的區(qū)塊順序根據(jù)段內(nèi)是否有順序(H段中林束,J先于I)或者比較區(qū)塊的哈希id大小(如D像棘,F(xiàn))
??通過上述排序,DAG有了一個線性順序壶冒,上圖DAG區(qū)塊順序?yàn)?strong>Genesis, A, B, C, D, F, E, G, J, I, H, and K缕题。接下來對該線性順序的區(qū)塊里的交易信息進(jìn)行交易排序,單一區(qū)塊里可能包含的沖突交易將直接按照該區(qū)塊內(nèi)交易信息排列先后順序決定胖腾。
??至此烟零,CONFLUX對DAG所有區(qū)塊產(chǎn)生一個線性順序瘪松,進(jìn)而可以對區(qū)塊內(nèi)交易信息排序,產(chǎn)生無沖突交易集瓶摆,超過一定時間的無沖突交易組成可信交易集凉逛。 主鏈只是排序的標(biāo)尺,作為分割時段的標(biāo)準(zhǔn)群井,CONFLUX包含所有分叉區(qū)塊。
說明
上述提的Yonatan Sompolinsky毫胜,實(shí)際是由 Yonatan Sompolinsky和 Aviv Zohar 等人共同完成书斜,為了方便,只寫了Yonatan Sompolinsky酵使,Aviv Zohar是前者的老師荐吉,他對DAG相關(guān)的介紹更加通俗易懂。
-
GHOST口渔,SPECTRE样屠,PHANTOM都有幽靈,鬼怪的意思缺脉。
參考資料
GHOST論文
Inclusive論文
SPECTRE論文
PHANTOM論文
CONFLUX論文
DAGlabs 相關(guān)講解視頻合集