官术网_书友最值得收藏!

1.3 DAG區(qū)塊鏈

1.3.1 起源

DAG最初出現(xiàn)是為了解決區(qū)塊鏈的效率問題。比特幣的效率一直比較低,基于工作量證明共識下的出塊機制是一個原因,由于鏈式的存儲結構,整個網(wǎng)絡中同時只能有一條鏈,導致出塊無法并發(fā)執(zhí)行。針對此問題,Nxt社區(qū)提出改變區(qū)塊的鏈式存儲結構,變成區(qū)塊DAG。在區(qū)塊打包時間不變的情況下,網(wǎng)絡中可以并行打包N個區(qū)塊,網(wǎng)絡中的交易就可以容納N倍。但此種方式仍停留在類似側鏈的解決思路,不同的鏈存儲不同類型的交易,這樣降低出現(xiàn)雙花的可能,在之后某個節(jié)點需要合并的時候,幾個分支再歸并到一個區(qū)塊。

換一種思路,上述方案都屬于有區(qū)塊的情況,無論是在比特幣還是以太坊中,我們都會提到出塊速度這樣的概念,比特幣每十分鐘出一個塊,6個出塊確認需要一個小時,以太坊好很多,但是出塊速度也要十幾秒。能否舍棄區(qū)塊的概念呢?2015年社區(qū)提出DAGCoin的概念,把區(qū)塊和交易融合到了一起。回想下比特幣網(wǎng)絡中區(qū)塊和交易的概念,很多筆交易先打包到區(qū)塊中,區(qū)塊和區(qū)塊之間通過PreHash來維護全網(wǎng)的交易順序。而DAGCoin的思路是讓每一筆交易直接參與維護全網(wǎng)的交易順序。這樣交易被發(fā)起后直接跳過打包區(qū)塊的階段,直接融入全網(wǎng),如此達到無區(qū)塊效果,且連打包交易出塊的時間都省去了。如前所述,DAG最初跟區(qū)塊鏈的結合就是為了解決效率問題,現(xiàn)在不用打包確認,交易發(fā)起后直接進入確認網(wǎng)絡,理論上效率自然會提高很多。

1.3.2 DAG區(qū)塊鏈與單鏈技術的對比

1.單鏈技術的幾個問題

效率問題:傳統(tǒng)區(qū)塊鏈技術基于區(qū)塊,比特幣的效率一直比較低,由于BlockChain鏈式的存儲結構,整個網(wǎng)絡同時只能有一條單鏈,基于PoW共識機制出塊無法并發(fā)執(zhí)行。

確定性問題:比特幣和以太坊存在51%算力攻擊問題,基于PoW共識的最大問題隱患,就是沒有一個確定的不可更改的最終狀態(tài);如果某群體控制51%算力,并發(fā)起攻擊,比特幣體系一定會崩潰;考慮到現(xiàn)實世界中的礦工集團,以及正在快速發(fā)展量子計算機的逆天算力,這種危險現(xiàn)實中會存在。

中心化問題:基于區(qū)塊的PoW共識中,礦工一方面可以形成集中化的礦場集團,另一方面,獲得打包交易權的礦工擁有巨大權力,可以選擇哪些交易進入?yún)^(qū)塊,哪些交易不被處理,甚至可以只打包符合自己利益的交易,這樣的風險目前已經(jīng)是事實存在。

能耗問題:由于傳統(tǒng)區(qū)塊鏈基于PoW算力工作量證明,達成共識機制,比特幣的挖礦能耗已經(jīng)與阿根廷整個國家的耗電量持平,IMF和多國政府對虛擬貨幣挖礦能源消耗持批評態(tài)度。Digiconomist數(shù)據(jù)表明:全球挖礦業(yè)務總計,每年產(chǎn)生約2.9億噸碳排放。

2.DAG區(qū)塊鏈的與單鏈的區(qū)別

單元:區(qū)塊鏈組成單元是Block(區(qū)塊), DAG組成單元是TX(交易)。

拓撲:區(qū)塊鏈是由Block區(qū)塊組成的單鏈,只能按出塊時間同步依次寫入,類似于單核單線程CPU; DAG是由交易單元組成的網(wǎng)絡,可以異步并發(fā)寫入交易,類似于多核多線程CPU。

粒度:區(qū)塊鏈每個區(qū)塊單元記錄多個用戶的多筆交易,DAG每個單元記錄單個用戶交易。

1.3.3 DAG區(qū)塊鏈的優(yōu)勢與價值

DAG區(qū)塊鏈與傳統(tǒng)區(qū)塊鏈工作機制的不同之處在于,后者需要礦工完成工作量證明(PoW)來執(zhí)行每一筆交易,而DAG區(qū)塊鏈能擺脫區(qū)塊鏈的限制來完成這樣的操作。不同的是,在DAG區(qū)塊鏈中一筆交易接著另外一筆,這意味著一筆交易能夠?qū)ο乱还P交易提供證明,由此一直排序下去。這些交易之間的連接就是DAG,就像區(qū)塊通過哈希值來向整條區(qū)塊鏈提供它們的名字一樣。

在傳統(tǒng)塊鏈式區(qū)塊鏈中,每筆交易都要花費不少時間,而對于DAG區(qū)塊鏈來說,交易時間將變得微不足道。由于每筆交易都與下一筆交易相連,且礦工被排除在外,交易時長會隨著越來越多用戶加入系統(tǒng)而縮短。

在DAG系統(tǒng)中,剔除礦工的設置能夠避免像區(qū)塊鏈系統(tǒng)中某一個礦池集合全網(wǎng)50%算力的威脅,與雙重攻擊的隱憂。沒有了區(qū)塊鏈中的工作量證明共識機制,DAG的交易指令能夠極快地擴散通知至全網(wǎng),大部分雙重支付的攻擊嘗試將會被系統(tǒng)捕捉到并立即拒絕執(zhí)行。

和以太坊相比,DAG網(wǎng)絡雖然不具備智能合約強制執(zhí)行的特性,但它能為用戶提供一個相對簡單、清晰易辨的架構,以太坊的系統(tǒng)則要復雜許多。這不僅使得用戶能更容易去理解DAG區(qū)塊鏈上的虛擬貨幣什么時候以及怎樣進行支付,而非依靠著一個滿是程序員和合約的世界。從這個角度來看,可以把DAG網(wǎng)絡看成是一個智能合約缺席執(zhí)行者和旁觀者的版本。

如果DAG區(qū)塊鏈能得到更為廣泛的應用,它在幾乎每個級別都能顯露出比傳統(tǒng)區(qū)塊鏈更優(yōu)的特性。在目前區(qū)塊鏈系統(tǒng)中,隨著交易時長這樣的問題顯現(xiàn)出來,DAG區(qū)塊鏈勢必將受到越來越廣泛的關注。

主站蜘蛛池模板: 蒙阴县| 扎鲁特旗| 乌拉特后旗| 万荣县| 原阳县| 宁南县| 浑源县| 铅山县| 庆城县| 中西区| 桑日县| 宿迁市| 托克逊县| 博湖县| 南投县| 麦盖提县| 鄂托克旗| 丹阳市| 景洪市| 曲麻莱县| 兴海县| 清苑县| 罗定市| 石景山区| 丹棱县| 平塘县| 汾阳市| 平和县| 浏阳市| 阳谷县| 苏尼特右旗| 金门县| 武宁县| 历史| 宕昌县| 彭州市| 绩溪县| 绍兴市| 仁化县| 子长县| 公安县|