導航:首頁 > 以太坊區 > dag以太坊

dag以太坊

發布時間:2025-03-22 03:43:35

『壹』 浠ュお鍧婄殑鎸栫熆鏂瑰紡鏄浠涔


浠ュお鍧婄殑鎸栫熆鏂瑰紡鏄浠涔堬紵
浠ュお鍧婄殑鎸栫熆鏂瑰紡鏄浠涔堬紵
浠ュお鍧婃槸涓縐嶅熀浜庡尯鍧楅摼鎶鏈鐨勫姞瀵嗚揣甯侊紝鏃ㄥ湪涓哄幓涓蹇冨寲搴旂敤鎻愪緵騫沖彴銆備笌姣旂壒甯佷竴鏍鳳紝浠ュお鍧婄殑浜ゆ槗闇瑕侀氳繃鎸栫熆鎵嶈兘寰楀埌楠岃瘉鍜岀『璁ゃ傞偅涔堜互澶鍧婄殑鎸栫熆鏂瑰紡鏄浠涔堝憿錛
浠ュお鍧婄殑鎸栫熆鏂瑰紡涓庢瘮鐗瑰竵鏈夊緢澶氱浉浼間箣澶勶紝閮芥槸閫氳繃瑙e喅鏁板﹂棶棰樻潵鑾峰緱姣旂壒甯佹垨浠ュお甯併傝繖浜涢棶棰橀渶瑕佺殑璁$畻璧勬簮闈炲父楂橈紝鍥犳ら渶瑕佸ぇ閲忕殑鐢靛姏鍜岃$畻鑳藉姏銆
浠ュお鍧婇噰鐢ㄧ殑鏄宸ヤ綔閲忚瘉鏄庯紙ProofofWork錛夌殑綆楁硶錛屽嵆ETHash銆備笌姣旂壒甯佹寲鐭跨殑SHA-256綆楁硶涓嶅悓錛孍THash綆楁硶鏄鍩轟簬DAG鍥懼艦鐨勮$畻銆侱AG鍥炬槸涓縐嶆湁鍚戞棤鐜鍥撅紝鐢變互澶鍧婂垵濮嬪潡鐢熸垚錛屾瘡涓鏂扮殑鍖哄潡閮藉熀浜庡墠涓涓鍖哄潡鐨凞AG榪涜岃$畻銆傚洜姝わ紝綆鍗曞湴璇達紝浠ュお鍧婃寲鐭塊渶瑕佽В鍐矰AG鍥懼艦鐨勮$畻闂棰樸
鍏蜂綋鏉ヨ達紝浠ュお鍧婄殑鎸栫熆榪囩▼鏄榪欐牱鐨勶細
1.鎸栫熆鑺傜偣鍦ㄧ綉緇滀笂鑾峰緱鏂扮殑浜ゆ槗淇℃伅銆
2.鎸栫熆鑺傜偣灝嗚繖浜涗氦鏄撲俊鎮鎵撳寘鎴愪竴涓鍖哄潡銆
3.鎸栫熆鑺傜偣浠庝互澶鍧婄綉緇滆幏鍙栧埌鍓嶄竴鍖哄潡鐨凞AG鍥俱
4.鎸栫熆鑺傜偣浣跨敤DAG鍥句笂鐨勮妭鐐硅繘琛岃$畻錛屼互鐢熸垚鏂扮殑鍖哄潡銆
5.鎸栫熆鑺傜偣閫氳繃緗戠粶灝嗘柊鐨勫尯鍧楀彂閫佸埌鍏朵粬鑺傜偣榪涜岀『璁ゃ
6.鍏朵粬鑺傜偣涔熼渶瑕佽В鍐矰AG鍥懼艦鐨勮$畻闂棰橈紝浠ョ『璁よ繖涓鏂扮殑鍖哄潡鏄鍚﹀悎娉曘
7.濡傛灉鍏朵粬鑺傜偣楠岃瘉閫氳繃錛屽垯榪欎釜鏂扮殑鍖哄潡灝變細琚娣誨姞鍒頒互澶鍧婄殑鍖哄潡閾句笂銆
浠ュお鍧婄殑鎸栫熆榪囩▼鍙鑳芥瘮姣旂壒甯佹洿涓哄嶆潅錛屽洜涓哄畠闇瑕佽В鍐矰AG鍥懼艦鐨勮$畻闂棰樸傝繖涔熸剰鍛崇潃浠ュお鍧婄殑鎸栫熆闇瑕佹洿楂樼殑綆楀姏鍜屾洿澶х殑鐢靛姏鏀鎸併備絾涓庢ゅ悓鏃訛紝浠ュお鍧婄綉緇滀篃鍏峰囦簡鏇撮珮鐨勫畨鍏ㄦу拰鍙闈犳э紝鍥犱負瀹冮渶瑕佹洿澶氱殑鑺傜偣鍙備笌瑙e喅璁$畻闂棰樸
鎬葷殑鏉ヨ達紝浠ュお鍧婄殑鎸栫熆鏂瑰紡鏄宸ヤ綔閲忚瘉鏄庣畻娉曪紝浣跨敤鐨勬槸ETHash綆楁硶錛岄渶瑕佽В鍐矰AG鍥懼艦鐨勮$畻闂棰樸傝繖縐嶆寲鐭挎柟寮忛渶瑕佹洿楂樼殑璁$畻鑳藉姏鍜岀數鍔涙敮鎸侊紝浣嗕篃涓轟互澶鍧婄綉緇滄彁渚涗簡鏇撮珮鐨勫畨鍏ㄦу拰鍙闈犳с

『貳』 區塊鏈dag什麼意思(區塊鏈的dac)

什麼是DAG

參考ExplainingDirectedAcylicGraph(DAG),TheRealBlockchain3.0

Bitcoin視為blockchain1.0,Ethereum視為2.0,那麼3.0是什麼?DAG可能會是.

DAG,即DirectAcyclicGraph,有向無環圖.它的特點是節點有先後次序,可以有分叉,但還不會有環.DAG常用語數據處理,事務規劃,最優路徑查找,數據壓縮

bitcoin之所以效率低是因為它的POW機制.整個網路只有一個主鏈,其上的新塊只能有一個,無法同時創建多個新塊.10分鍾左右以內的所有交易記錄都被記錄到一個塊中.Ethereum也是類似,大概15-20秒產生一個新塊.

NXT是第一個想到用DAG替代blockchain單鏈表結構的組織.

有了DAG,就可以同一時間創建多個塊.

使用DAG的想法來自於側鏈(side-chain).不同類型的交易在不同的鏈上同時進行.

IoTChain(ITC),IOTA,和Byteball是沒有block概念的項目.

如果每個block只有一個transaction,那這個transaction就不用等待被打包,跳過計算hash的過程(即挖礦),直接上鏈了.

Bitcoin使用UTXO(UnspentTransactionoutput)模型.

DAG網路中,降低網路寬度是比較重要的一個課題.

由於只有transaction,沒有打包的過程,DAG比基於PoW或PoS的區塊鏈更快.

DAG網路里,沒有礦工.交易的驗證直接在交易時進行.對於用戶來說這意味著交易可以瞬間完成.

DAG可以有效降低交易費.

IoTChain(ITC)所基於的DAG的TPS達到10,000.

『學概念找員外』有向無環圖DAG的用途

有向無環圖(DAG,DirectedAcyclicGraph):是一個無迴路的有向圖。如果有一個圖,從A點出發到B點,然後經過C點,最後可以順著方向回到A,形成一個閉環,那麼這個圖就不是非向無環圖。如果將從C到A的邊方向改為從A到C,則變成有向無環圖。如圖1和圖2。

看到這兩幅圖,應該可以明白了,當然這個圖是很簡單的,只有三個點,事實上可能是由百萬千萬或者更多個點組成的圖。有向無環圖就是從一個圖中的任何一點出發,不管走過多少個分叉路口,都沒有回到原來這個點的可能性。

拓撲排序:就是一個有向無環圖的所有定點的線性序列。且這個序列必須滿足這兩個條件:

這個東西,是比較難理解,再上圖說話吧。比如在這個有向無環圖中,它用拓撲排序,該怎麼進行呢?

最後,一個完整的拓撲排序就完成了,結果為:1、2、4、3、5。

大家都知道,在比特幣系統中,固定約十分鍾出一個塊,而且一旦打包成功一個區塊,這個區塊的信息還必須同步到其他的所有區塊上面去,這是極其耗費資源和時間的。同時一個塊裡面大概能容納3000筆交易,也就意味著10分鍾才能交易成功3000筆。這個交易速度實在是滿足不了用戶的需求,所以為了解決比特幣這個問題,出現了各種分叉幣,也可謂是把比特幣搞的亂七八糟了。後來以太坊問世後,基於比特幣的基礎上,交易速度提高了不少,每秒交易可達到20筆左右,但是任然有多次的以太坊擁堵事件,證明這個交易速度還遠遠不夠。

在比特幣系統中,如果可以改變51%的節點的記錄數據,那麼就實現了惡意攻擊。然而現在比特幣的大部分算力掌握在少數幾個較大的礦廠手裡,雖然大家都有共識,不會發起惡意攻擊,但是不代表不會有意外事件發生。

隨著計算機硬體的不斷迭代升級,量子計算機的問世,那麼比特幣的加密演算法還會有用嗎?會不會被破解掉?雖然比特幣的哈希演算法可以實時調整難度,但是到底能承受多大的考驗,員外是說不清的。

比特幣用於大額的跨境轉賬或者交易等用途,還是挺實用的,但是誰會去用比特幣購買小件商品?顯然是不可能的,交易手續費就會讓你心疼半天,然後還得再等半天的確認時間。

在區塊鏈的應用上使用了DAG圖之後,可以使得出塊速度變快,因為DAG圖中的每個頂點都是一個在某一時間點打包完成的區塊。與傳統的公鏈一次性只能產出一個區塊來比,DAG的不同節點都可以自己來生成區塊,然後這個區塊只要選擇好自己的下一個或者多個區塊作為自己的子區塊就好了。僅僅是在這一點上,出塊速度就會高出比特幣多個量級,交易速度簡直可以快的飛起。

基於DAG的數據結構來說的話,對於裡面的每個節點來說,因為與之相連的節點很少,而且是有方向性的,只能往前不能後退,所以都不需要再等大量的其他節點達成共識後,再同時確認下一筆交易了,避免了因網路延遲和數據同步造成的大量時間浪費。所以,使用DAG記賬的節點的延展性可得到大幅度提升。

從上面這張圖中,可以看到DAG的每一個節點都可以向下連接任意多個新的節點,這個有什麼用呢?如果在這一個區塊內部交易數據或者與之相連的下一步的交易數據也是過多的話,那麼就可以分成足夠多個區塊來共同分擔區塊壓力,從而可以提高交易的吞吐量。相比於比特幣這樣的系統每次只能打包一個區塊來說,簡直是完勝。

沒有一個東西是完美的,有優勢就有缺點,所以DAG的缺點目前在安全問題上面,主要是雙花和影子鏈攻擊。這個問題員外目前還沒有找到足夠好的答案,只能後續再說了。

本文參加優享優質經驗徵集計劃,經驗即價值,優享為成長買單

全球首個去中心化經驗價值共享平台「優享」開啟今夏最強空投!注冊即送UX,最高5000UX,更多價值,等你發現!注冊鏈接

GHOST,DAG,SPECTRE,PHANTOM和CONFLUX技術原理

??DAG概念,當做繼比特幣,以太坊後新的一代區塊鏈技術(區塊鏈3.0),那麼DAG區塊鏈是什麼?DAG的由來是什麼?它的技術理念是怎麼樣的?運行在DAG區塊鏈上的協議有哪些?

??要想解釋DAG,離不開YonatanSompolinsky和AvivZohar兩位以色列人,他們是DAG區塊鏈這一概念的提出者。在DAG之前,AvivZohar提出了一個GHOST協議(以太坊初期就採用了GHOST協議),該協議解決的是鏈分叉帶來的安全性問題,而分叉的區塊鏈在GHOST協議下數據結構就從一條鏈變成了一個樹(Tree),而之後AvivZohar進一步提出了一個inclusive協議,在inclusive協議規則下,區塊的結構就變成了有向無環圖(DAG)。

接下來本文將:

??1.介紹GHOST協議,DAG由來背後的設計原理

??2.介紹三種針對DAG型區塊鏈設計的協議,SPECTRE、PHANTOM和CONFLUX。

??GHOST協議是為了解決分叉導致鏈安全性降低的一個協議。

??下邊將通過解釋什麼是分叉,為什麼分叉會降低鏈的安全性,鏈上擴容為什麼會導致更多分叉來詳細介紹GHOST協議。

一筆比特幣交易為什麼要等6個區塊的交易時長呢?

??等待不是為了防範51%攻擊的。落後6個區塊,如果擁有超過51%的算力,只要足夠長的時間,一定能夠產生更長的鏈完成攻擊。它是為了防止分叉帶來的風險。

??比特幣在理想情況下,不同節點之間有相同的一條區塊鏈,全部節點都是基於同一個區塊進行挖礦,但當兩個挖礦節點幾乎同時挖到一個新的區塊,當它們接收到對方產生的區塊時,不同的節點將選擇基於其中一個區塊挖礦,分叉產生了。之後節點會根據哪條分叉更長,選擇哪條是主鏈進行挖礦,而不是主鏈的分叉區塊全部被拋棄。

??比特幣每天都會發生二分叉,但出現連續的六次分叉幾乎不可能,於是要等待6個區塊的確認時間。(這種分叉不是來自惡意攻擊,是偶然性以及網路延遲導致的。

分叉將『攻擊不超過51%算力,比特幣就是安全的』這一理論推翻。

??在比特幣中,當鏈有分叉時,將選擇分叉最長的鏈作為主鏈,惡意攻擊就是產生一條比主鏈更長的鏈代替主鏈。

??下圖中藍色區塊代表誠實區塊,紅色代表攻擊區塊。2號、3號藍色區塊產生分叉,此時攻擊節點產生5個攻擊區塊(紅色)就能產生一條更長的鏈完成攻擊。雖然藍色區塊總數更多(有6個),但分叉的區塊沒有增加鏈的長度,這種情況下,紅色攻擊方在算力(假設每個區塊代表算力相同)沒有超過51%的情況下攻擊成功。

??比特幣當前安全的原因在於10分鍾的區塊時間降低了分叉可能性,但其實際安全算力仍低於51%,也就是說,不需要51%的算力也能攻擊成功。

??採用大區塊以及小的產出時間將導致鏈有很多分叉。??

??比特幣當前處理交易量很低,改進這個缺陷一個可行方法就是增大區塊的大小和減小區塊的產出時間。大區塊需要更多的網路傳輸時間、單位時間更多的區塊數都會導致更多的分叉。??

??鏈上擴容的方案對比特幣處理交易能力提升是巨大的,假如每個區塊大小變為原來的八倍(8M),出塊時間縮短為原來的五分之一(2分鍾),理想情況下,比特幣的處理交易量將變為原來的40倍,實際情況會產生分叉,交易量不會有這么高。

??主鏈選擇中,採用計算最大子樹來代替比特幣中的最長鏈規則。??

??比特幣的最長鏈規則在有分叉情況下,將降低鏈的安全性,分叉越多,安全性越低。鏈上擴容將導致更多分叉,導致鏈不安全。

??YonatanSompolinsky提出GHOST規則,當有分叉時,通過計算最大子樹,也就是每條分叉擁有的所有區塊數來決定哪條鏈是主鏈。圖0中,鏈在區塊0後分叉了,上邊分叉總計有6個藍色區塊,下邊分叉有5個紅色區塊,藍色區塊1是主鏈,所以紅色攻擊失敗。??

??在有大量分叉的情況下,GHOST規則將鏈安全性直接提到了51%,分叉對採用GHOST協議的鏈安全性沒有影響。

??根據GHOST規則,上圖中雖然誠實節點產生了12個區塊,但加入主鏈的只有4個區塊,大量區塊被丟棄,假定比特幣每個區塊大小變為原來的八倍(8M),出塊時間縮短為原來的十分之一(1分鍾),分叉率為0.33(產生的區塊加入主鏈的概率),比特幣的處理交易能力將變為原來的26.6倍。

GHOST協議解決了鏈上擴容導致分叉帶來的安全性問題。

區塊的結構類型就從一條鏈變為樹

??在GHOST的提出後,YonatanSompolinsky提出一種新的設想,新產生的區塊指向所有已知的分叉末端區塊,即一個區塊有多個父親,此時區塊鏈就從一條鏈變為多條分叉鏈共同組成的的結構,這樣的鏈結構就被叫做DAG(有向無環圖)。

YonatanSompolinsky進而提出了在DAG上運行的inclusive協議,原理如下:

遺憾的是,YonatanSompolinsky之後並沒有詳細介紹補充該協議,而是提出了一種新思路的DAG協議——SPECTRE。

??看完上邊內容之後,你會發現,最長鏈規則下,分叉的區塊對比特幣安全性和交易量沒有任何貢獻,白白的浪費了算力,而GHOST通過計算分叉區塊個數來提升鏈的安全性,但分叉區塊除了納入區塊計數外,區塊內包含的交易信息卻全部被丟棄。

??這種新的區塊結構帶來了新的特性,當然,比特幣的最長鏈規則也可以在DAG上實施,只不過安全性和處理交易能力不佳,而GHOST協議可以提高安全性和處理交易能力,為了最大化利用DAG區塊鏈特性,社區提出了不同的協議,接下來介紹YonatanSompolinsky提出的SPECTRE協議,以及PHANTOM協議,以及國內某社區提出的CONFLUX協議。

丟棄主鏈概念,所有產生的區塊共同構成賬本,不丟棄任何一個區塊

??只要是產生的區塊就不會被丟棄,所有的區塊都是有效的,所有區塊共同組成賬本,這樣進一步提高了區塊鏈的處理交易能力,該設計的關鍵在於設計演算法來保證區塊鏈不會被惡意攻擊成功。??

??SPECTRE協議較為復雜,下邊將從其如何產生區塊、如何處理沖突交易以及產生可信交易集三個方面進行描述。

SPECTRE協議中,當產生區塊時,要指向之前所有分叉的末端區塊。

??下圖中,左邊為比特幣產生區塊時,當有分叉出現,新區塊將選擇基於其中一個產生新的區塊,而SPECTRE中,將基於所有分叉末端區塊產生新的區塊。同時,當有新區塊產生時,節點要立刻將新區塊(包含基於哪些區塊產生這一信息)發送給與自己相連接的節點。

??仔細觀察,GHOST協議中雖然有分叉,但每個區塊都只基於前邊某一個區塊產生,而SPECTRE協議中要基於當前節點知道的所有末端區塊產生下一個區塊。

SPECTRE協議將礦工維持交易不沖突的要求剝除??

??比特幣就像一本權威的賬本,只要是里邊記錄的,就一定是真的(不考慮分叉和惡意攻擊),而SPECTRE產生的DAG就像一本不權威賬本,里邊的交易信息可能沖突(上邊圖1中兩個1區塊中可能包含沖突交易信息)。??

??該協議下,挖礦節點只負責迅速挖區塊(能夠達到1秒一個區塊),而對分叉中可能包含的沖突交易在挖礦階段並不做任何處理,將記錄交易速度最大化,讓DAG這種區塊鏈有著恐怖的處理交易能力。

??是時候解決挖礦不解決的沖突交易問題了,SPECTRE的思路是設計一個計算投票的演算法,讓誠實區塊會投票給誠實的區塊,後邊的誠實區塊會給前邊的堆疊算力,從而讓惡意攻擊失敗,其安全算力也是51%。??

??拿雙花舉例,下圖中,X和Y區塊中包含著兩條沖突交易會導致雙花,此時DAG中的區塊會對X和Y進行投票,決定哪一個交易有效。

投票規則如下,投X的標藍,投Y的標紅,XY代表X先於Y:

??根據投票結果,X中的那條交易信息有效,Y中對應的那條交易信息無效。??YonatanSompolinsky也對不指向前邊區塊以及產生區塊不發給鄰居節點的惡意攻擊有進行分析,在投票規則中,低於50%算力的攻擊者會失敗。??

??投票聽起來像是一個主動地中心化行為,實際上不是,程序根據當前DAG區塊所處的狀態自發完成這一區塊投票計算過程,就相當於,給定一個DAG數據,輸入為兩條沖突信息,運行該規則演算法,將得出一對沖突交易的哪一個為有效。

SPECTRE可信交易集就相當於超過當前6個區塊的比特幣鏈里組成的交易集合。??區塊鏈從數字加密貨幣的角度來說,就是一個賬本,從賬本上的交易信息中得出每個賬戶所擁有的貨幣,所以,得出確定的、不可能更改的交易信息就至關重要,SPECTRE可信交易集產生過程如下:

SPECTRE並不會對所有區塊進行排序,所有區塊沒有一個完整的線形順序,有的只是決定沖突信息先後的區塊順序對。??

??比特幣中的高度代表的就是線形順序,高度低的區塊中交易信息先於高度高的區塊里的信息,高度高的區塊就不能包含和高度低的區塊沖突的交易,而SPECTRE有大量的分叉,區塊高度不能代表線形順序,前邊的區塊交易信息不一定先於後邊的分叉區塊交易信息,交易信息的有效性要由投票演算法來決定,區塊投票演算法很快,再加上它將所有分叉區塊都包含進來,也就沒有了比特幣所面臨的分叉風險(等待6個區塊),交易確認時間可以達到10秒。

至此,和比特幣相比,SPECTRE對應的DAG區塊鏈有三個特點:

??SPECTRE協議非常適合DAG型數字加密貨幣,但當它用於智能合約時,它的缺陷就出來了,智能合約需要一個嚴格的線性順序,對此YonatanSompolinsky新設計了PHANTOM協議來對DAG區塊形成一個線性順序,下邊將詳細介紹PHANTOM協議。

SPECTRE和PHANTOM是兩個完整的獨立的協議,不是一個對另一個的補充。

??PHANTOM的挖礦機制和SPECTRE一樣,會產生同樣類型的DAG,不同的是PHANTOM通過對區塊連通度分析,判定區塊誠實還是惡意,按照分類對區塊排序,對DAG區塊產生一個嚴格的線性順序,通過線性順序來判斷沖突交易有效性。

DAG中,攻擊者有兩種攻擊手段,一產生的區塊不基於已知的末端區塊,二不立即發布自己產生的區塊,前者會讓自己區塊指向的區塊變少,後者讓其他節點產生的區塊不會指向自己的區塊,這兩種情況都會導致這些惡意區塊的與其它區塊的連接度低。

??誠實區塊在考慮網路最大延遲下,經過一定時間一定會傳遍整個網路,一定會被後邊的區塊所指向,誠實節點在產生新區塊時也一定會指向自己所知道的末端區塊。

??通過對區塊指出去的邊和指向該區塊的邊進行分析,也就是區塊的連通度,當考慮最大的網路延遲,連通度會有一個極限值K,低於該值的區塊可以被認定為惡意區塊,在排序中要處於劣勢。

接下來,進行區塊誠實和惡意判定,判定分兩步,第一步最重要,實現復雜也耗費時間,主要為通過對區塊連通度的判定,將強連通度的區塊標為藍色視為誠實區塊,弱的標為紅色視為惡意區塊。

??第二步先對藍色區塊集排序,拓撲排序,然後對紅色區塊集排序。紅色區塊的順序要處於弱勢,例如上圖中C,它處於A和I之間,那麼它的順序會排在I的前一個區塊,而D、H都會排在C前。注意通過考慮最大延遲時間設定連通度的值,幾乎所有正常誠實節點產生的區塊都會被標記為藍色

??至此,PHANTOM協議實現了對DAG的線性排序,通過線性順序就可以提取無沖突交易集,進而提取可信交易集,雖然耗時較長,滿足智能合約的要求。

??YonatanSompolinsky在PHANTOM協議論文結尾,提出一種將PHANTOM+SPECTRE結合起來的可能協議,沒有詳細展開介紹。下圖是幾種協議的對比:

??至此,介紹了YonatanSompolinsky一開始從分叉導致不安全提出的GHOST,到後來將DAG引入區塊鏈,設計了SPECTRE協議,以及為智能合約考慮的PHANTOM協議。接下來,介紹國內某社區提出的CONFLUX協議。

??GHOST有主鏈但丟棄分叉區塊;SPECTRE沒有主鏈,包含所有分叉,但沒有線性順序;PHANTOM沒有主鏈,包含分叉且有線性順序,而CONFLUX即有主鏈,又是DAG,利用主鏈讓DAG產生線性排序,下面將從挖礦機制和區塊排序兩方面來說明CONFLUX協議。

??CONFLUX協議定義了根源邊和參考邊。新區塊是基於前一個主鏈區塊產生的,新區塊用根源邊(實線)指向前一區塊,用參考邊(虛線)指向分叉的其他區塊末端,如下圖最後一個新區塊實線指向H,虛線指向分叉末端區塊K。根源邊用於代表區塊基於哪個區塊產生,給哪個區塊堆疊算力,參考邊用於表示分叉的其它區塊產生在該區塊之前。

挖礦過程如下:

根源邊只能有一條,參考邊可多條(視情況而定)

以主鏈區塊為分割點,將DAG分段,段間段內設計簡單排序演算法

??CONFLUX協議下產生的區塊鏈如上(圖2),接下來對其進行線性排序,排序演算法如下:

??通過上述排序,DAG有了一個線性順序,上圖DAG區塊順序為Genesis,A,B,C,D,F,E,G,J,I,H,andK。接下來對該線性順序的區塊里的交易信息進行交易排序,單一區塊里可能包含的沖突交易將直接按照該區塊內交易信息排列先後順序決定。

??至此,CONFLUX對DAG所有區塊產生一個線性順序,進而可以對區塊內交易信息排序,產生無沖突交易集,超過一定時間的無沖突交易組成可信交易集。主鏈只是排序的標尺,作為分割時段的標准,CONFLUX包含所有分叉區塊。

GHOST論文

Inclusive論文

SPECTRE論文

PHANTOM論文

CONFLUX論文

DAGlabs相關講解視頻合集

有誰知道能解釋一下有向無環圖(DAG)么?怎麼用程序做出來,及怎麼應用到經濟學實證上?

我們說區塊鏈目前還不成熟,有各種各樣的問題,比如說處理速度慢、手續費高昂、存在安全隱患等等,這些都是用戶最直觀的體驗,體驗不是太好。區塊鏈還有一個問題,那就是高並發問題。

高並發問題是怎麼回事呢,我們簡單說一下。高並發是計算機領域的問題,簡單來講,高並發問題就是系統無法順利同時運行多個任務。

很多任務同時運行,一大堆用戶涌進來,系統承受不住這么多的任務,會出現高並發問題,你的系統就卡住了,就好比春運時候,12306系統總是卡住,有可能就是高並發問題造成的。

傳統互聯網尚且存在高並發問題,區塊鏈網路自然也存在這個問題,畢竟區塊鏈的成熟程度比起傳統互聯網,還有很大的差距。但是,如果沒有安全、可靠和高效的公鏈,整個區塊鏈產業的發展都將受到嚴重製約,應用落地也是空談。

在這種背景下,DAG技術就被提出來了,DAG的全稱是「DirectedAcyclicGraph」,中文翻譯為「有向無環圖」。

DAG有向無環圖是怎麼回事呢,它到底能起到什麼作用呢?我們下面解釋一下。

一、DAG:一個新型的數據結構

DAG,中文名字叫「有向無環圖」,從字面意思看,「有向"就是說它是有方向的,

「無環」就是說它是沒有環路的、不能形成閉環的。所以,DAG其實是一種新型的數據結構,這個數據結構是有方向的,同時又是不能形成閉環的。

傳統區塊來講,我們總是以「區塊」為單位,一個區塊里往往包含了多筆交易信息。而在DAG中,沒有區塊的概念,而是以「單元」為單位,每個單元記錄的是單個用戶的交易,組成的單元不是區塊,而是一筆筆的交易,這樣一來,可以省去打包出塊的時間。

簡單來說,區塊鏈和DAG有向無環圖最大的區別就是:區塊鏈是一個接一個的區塊來存儲和驗證交易的分布式賬本,而DAG則是把每筆交易都看成一個區塊,每一筆交易都可以鏈接到多個先前的交易來進行驗證。

二、DAG的工作原理

傳統區塊鏈上,就拿比特幣來講,它是單鏈式的結構,區塊與區塊之間按照時間戳的先後順序排列開來(如圖一),數據記錄在一條主鏈上。用不太恰當的比喻來講,這個

「單鏈式」結構是一條一字排列的鏈。

區塊鏈只有一條單鏈,打包出塊就無法並發執行。新的區塊會加入到原先的最長鏈之上,所有節點都以最長鏈為准,繼續按照時間戳的順序無限蔓延下去。而對於DAG來講,每個新加入的單元,不僅只加入到最長鏈的一個單元,還要加入到之前所有的單元(如圖二)。

舉個例子:假設我發布了一個新的交易,此時DAG結構已經有2個有效的交易單元,那麼我的交易單元會主動同時鏈接到前面的2個之中,去驗證並確認,直到鏈接到創世單元,而且,上一個單元的哈希會包含到自己的單元裡面。

換句話說,你要想進行一筆交易,就必須要驗證前面的交易,具體驗證幾個交易,根據不同的規則來進行。這種驗證手段,使得DAG可以非同步並發的寫入很多交易,並最終構成一種拓撲的樹狀結構,極大地提高擴展性。

依據DAG有向無環圖,每一筆交易都直接參與了維護全網。當交易發起後,直接廣播全網,跳過礦工打包區塊階段,這樣就省去了打包交易出塊的時間,提升了區塊鏈處理交易的效率。

隨著時間遞增,所有交易的區塊鏈相互連接,形成圖狀結構,如果要更改數據,那就不僅僅是幾個區塊的問題了,而是整個區塊圖的數據更改。DAG這個模式

『叄』 是時候來搞懂什麼是以太坊挖礦了

以太坊挖礦近年來備受關注,隨著價格突破新高和「頭礦」項目的流行,更多人開始理性看待挖礦,特別是具有長期增值價值和穩定收益的以太坊挖礦。近期,許多人對顯卡挖礦、以太坊挖礦的原理、顯卡與ASIC礦機的區別、以太坊生態為何使用顯卡挖礦、當前投資邏輯、以太坊2.0對挖礦的影響以及挖礦風險等方面產生了濃厚興趣。

挖礦是通過計算機CPU、GPU或專業礦機參與網路記賬,根據記賬形成工作量證明(POW)以獲得區塊獎勵的過程。顯卡礦機由計算機顯卡組裝而成,主要硬體包括顯卡、主板、電源、硬碟、CPU、內存、延長線、轉接線、顯示器、滑鼠、鍵盤等。顯卡礦機需要配置PC運行挖礦程序,其中顯卡性能決定挖礦速度和算力,主板和電源影響礦機運行的穩定程度。

ASIC礦機採用集成電路(晶元)作為算力核心,集成特定加密貨幣演算法,運算效率更高,通常支持單一演算法,只挖特定幣種。相比之下,顯卡礦機雖算力略低,維護難度大,但能挖多種幣種,且殘值較高。

以太坊網路之所以以顯卡挖礦為主,是因為其特殊挖礦機制和DAG文件存儲需求。ETH引入Dagger-Hashimoto演算法後,DAG文件大小逐年增長,顯卡的超大顯存對容納DAG文件優勢明顯。因此,目前在以太坊生態中顯卡礦機占據主導地位。

投資顯卡挖礦需考慮以太坊生態價值、ETH鎖倉量增長、去中心化金融普及、DeFi交易量增加等因素。ETH生態不斷增長和價格上漲,以及顯卡的高殘值和較短回本周期,增強了礦工投資顯卡挖礦的決心。

以太坊2.0升級預計需數年時間,PoW鏈並入PoS鏈前,礦工仍可正常挖礦。幣價下跌和挖礦難度暴漲是顯卡挖礦的主要風險,但通過套保工具可降低風險。

綜上所述,當前是顯卡挖礦的相對好時機,但需注意風險防控和市場波動,配合套保工具。顯卡礦機的高殘值和較短回本周期使得顯卡挖礦成為值得投資的領域。

『肆』 DAG是什麼

DAG,即Directed Acyclic Graph,中文名有向無環圖,它是一種獨特的數據結構,以其獨特的數學特性在計算機科學中發揮著重要作用,尤其是在分布式賬本領域。它不同於區塊鏈的鏈式結構,而是以交易單元(TX)為基本組成,構建一個沒有循環路徑的網路。


傳統的區塊鏈,如比特幣和以太坊,每個區塊(Block)承載多筆交易,形成了單鏈結構,類似單核單線程的工作方式,這在處理高並發交易時面臨吞吐量瓶頸。而DAG則如多核多線程的CPU,每個交易單元(TX)獨立存在,可以非同步並行處理,從而大大提高效率。這使得DAG在設計上更注重交易的實時性和可擴展性,避免了區塊鏈的中心化問題和區塊大小限制。


例如,IOTA的Tangle機制和Byteball的見證人機制,都是DAG在區塊鏈領域的創新嘗試。Tangle通過交易之間的相互確認,消除了區塊打包的環節,而Byteball則通過見證人網路簡化了共識過程,這兩者都在挑戰和優化傳統的區塊鏈模式。然而,DAG的應用還處於早期階段,其效果和長期影響還有待時間的檢驗。


盡管面臨挑戰和不確定性,DAG的出現無疑為分布式賬本領域帶來了新的思考和可能性。它不僅革新了區塊鏈的架構,還可能引領未來的分布式計算格局。對於那些對技術革新型態感興趣的人來說,深入理解DAG的工作原理和應用場景,無疑是一次探索前沿科技的有趣之旅。

『伍』 一文了解以太坊礦機及挖礦原理

在以前的文章中,我們分別了解了比特幣挖礦和以太坊挖礦的區別。本文重點介紹以太坊挖礦及礦機部分。

以太坊是一個開源的有智能合約功能的公共區塊鏈平台,通過其專用加密貨幣ETH提供去中心化的以太虛擬機來處理點對點合約。目前ETH的挖礦主要是通過顯卡礦機,所謂顯卡礦機,其實就是類似家用台式機,只不過每台機器裡面有6-10張顯卡,並且沒有顯示器(如圖)。

圖:顯卡礦機

之所以以太坊沒有發展出類似於BTC一樣的ASIC礦機,主要是由於ETH的特殊挖礦機制決定的。

在ETH挖礦過程中,會產生一個DAG文件,該文件需要一直被調用,因此必須有專門的存儲空間放置。這個對於存儲空間的硬性需求會導致即使生產出來了ASIC晶元,也並不能大幅度降低單位算力的成本。簡單來說,就是性價比很差。

以太坊的DAG大小自2016年6月份引入Dagger-Hashimoto 演算法時的1GB開始,以每年約520MB的速度增大到了現在的 3.7G,預計2020年底以太坊的DAG大小將增加至4G。屆時,顯存小於4G的顯卡都將被陸續淘汰。

還需要介紹一點的是,由於顯卡礦機的體積通常是比特幣礦機的2-4倍,而消耗的電力卻只有比特幣礦機的1/2甚至更低,這就導致一般人不願意修建專門的顯卡礦機礦場(因為礦場主要賺取的是電費差價,同樣面積的場地,可以放置的顯卡數量少,消耗的電量更少)。即使有少量的顯卡礦場,收取的電費成本通常也比比特幣礦機礦場的高。

閱讀全文

與dag以太坊相關的資料

熱點內容
比特幣2020年2月 瀏覽:846
比特幣錢包加入區塊鏈 瀏覽:501
區塊鏈ppt演講 瀏覽:606
競爭力怎麼算6 瀏覽:200
最早的比特幣礦池 瀏覽:73
btc三次牛市 瀏覽:567
全球比特幣礦池排名 瀏覽:730
怎麼預防比特幣病毒視頻 瀏覽:664
btc真的只有2100w嗎 瀏覽:957
以太坊跌破1200 瀏覽:604
區塊鏈應用的效果 瀏覽:171
2015年以太坊價格走勢 瀏覽:882
以太坊1萬現在只剩4000 瀏覽:452
以太坊cpu性能 瀏覽:315
特大比特幣被盜 瀏覽:988
廣州支持區塊鏈 瀏覽:26
虛擬貨幣是必修幾 瀏覽:832
btc初始價格 瀏覽:807
小米區塊鏈貓 瀏覽:310
比特幣資金密碼是幾位 瀏覽:23