當前位置:首頁 » 挖礦知識 » dag挖礦修復

dag挖礦修復

發布時間: 2023-07-26 15:53:18

A. 什麼是DAG

參考 Explaining Directed Acylic Graph (DAG), The Real Blockchain 3.0

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

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

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

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

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

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

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

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

Bitcoin使用UTXO(Unspent Transaction output)模型.

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

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

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

DAG可以有效降低交易費.

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

B. 以太坊多節點私有鏈部署

假設兩台電腦A和B
要求:
1、兩台電腦要在一個網路中,能ping通
2、兩個節點使用相同的創世區塊文件
3、禁用ipc;同時使用參數--nodiscover
4、networkid要相同,埠號可以不同

1.4 搭建私有鏈
1.4.1 創建目錄和genesis.json文件
創建私有鏈根目錄./testnet
創建數據存儲目錄./testnet/data0
創建創世區塊配置文件./testnet/genesis.json

1.4.2 初始化操作
cd ./eth_test
geth --datadir data0 init genesis.json

1.4.3 啟動私有節點

1.4.4 創建賬號
personal.newAccount()
1.4.5 查看賬號
eth.accounts
1.4.6 查看賬號余額
eth.getBalance(eth.accounts[0])
1.4.7 啟動&停止挖礦
啟動挖礦:
miner.start(1)
其中 start 的參數表示挖礦使用的線程數。第一次啟動挖礦會先生成挖礦所需的 DAG 文件,這個過程有點慢,等進度達到 100% 後,就會開始挖礦,此時屏幕會被挖礦信息刷屏。
停止挖礦,在 console 中輸入:
miner.stop()
挖到一個區塊會獎勵5個以太幣,挖礦所得的獎勵會進入礦工的賬戶,這個賬戶叫做 coinbase,默認情況下 coinbase 是本地賬戶中的第一個賬戶,可以通過 miner.setEtherbase() 將其他賬戶設置成 coinbase。

1.4.8 轉賬
目前,賬戶 0 已經挖到了 3 個塊的獎勵,賬戶 1 的余額還是0:

我們要從賬戶 0 向賬戶 1 轉賬,所以要先解鎖賬戶 0,才能發起交易:

發送交易,賬戶 0 -> 賬戶 1:

需要輸入密碼 123456

此時如果沒有挖礦,用 txpool.status 命令可以看到本地交易池中有一個待確認的交易,可以使用 eth.getBlock("pending", true).transactions 查看當前待確認交易。

使用 miner.start() 命令開始挖礦:
miner.start(1);admin.sleepBlocks(1);miner.stop();

新區塊挖出後,挖礦結束,查看賬戶 1 的余額,已經收到了賬戶 0 的以太幣:
web3.fromWei(eth.getBalance(eth.accounts[1]),'ether')

用同樣的genesis.json初始化操作
cd ./eth_test
geth --datadir data1 init genesis.json

啟動私有節點一,修改 rpcport 和port

可以通過 admin.addPeer() 方法連接到其他節點,兩個節點要要指定相同的 chainID。

假設有兩個節點:節點一和節點二,chainID 都是 1024,通過下面的步驟就可以從節點二連接到節點一。

首先要知道節點一的 enode 信息,在節點一的 JavaScript console 中執行下面的命令查看 enode 信息:

admin.nodeInfo.enode
" enode://@[::]:30303 "

然後在節點二的 JavaScript console 中執行 admin.addPeer(),就可以連接到節點一:

addPeer() 的參數就是節點一的 enode 信息,注意要把 enode 中的 [::] 替換成節點一的 IP 地址。連接成功後,節點一就會開始同步節點二的區塊,同步完成後,任意一個節點開始挖礦,另一個節點會自動同步區塊,向任意一個節點發送交易,另一個節點也會收到該筆交易。

通過 admin.peers 可以查看連接到的其他節點信息,通過 net.peerCount 可以查看已連接到的節點數量。

除了上面的方法,也可以在啟動節點的時候指定 --bootnodes 選項連接到其他節點。 bootnode 是一個輕量級的引導節點,方便聯盟鏈的搭建 下一節講 通過 bootnode 自動找到節點

參考: https://cloud.tencent.com/developer/article/1332424

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

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

  要想解釋DAG,離不開Yonatan Sompolinsky 和 Aviv Zohar兩位以色列人,他們是DAG區塊鏈這一概念的提出者。在DAG之前,Aviv Zohar提出了一個GHOST協議(以太坊初期就採用了GHOST協議),該協議解決的是鏈分叉帶來的安全性問題,而分叉的區塊鏈 在GHOST協議下數據結構就從一條鏈變成了一個樹(Tree),而之後Aviv Zohar進一步提出了一個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倍 ,實際情況會產生分叉,交易量不會有這么高。

   主鏈選擇中,採用計算最大子樹來代替比特幣中的最長鏈規則。   
  比特幣的最長鏈規則在有分叉情況下,將降低鏈的安全性,分叉越多,安全性越低。鏈上擴容將導致更多分叉,導致鏈不安全。
  Yonatan Sompolinsky提出GHOST規則, 當有分叉時,通過計算最大子樹,也就是每條分叉擁有的所有區塊數來決定哪條鏈是主鏈 。圖0中,鏈在區塊0後分叉了,上邊分叉總計有6個藍色區塊,下邊分叉有5個紅色區塊,藍色區塊1是主鏈,所以 紅色攻擊失敗 。   
   在有大量分叉的情況下,GHOST規則將鏈安全性直接提到了51%,分叉對採用GHOST協議的鏈安全性沒有影響。

  根據GHOST規則,上圖中雖然誠實節點產生了12個區塊,但加入主鏈的只有4個區塊,大量區塊 被丟棄 ,假定比特幣每個區塊大小變為原來的八倍(8M),出塊時間縮短為原來的十分之一(1分鍾),分叉率為0.33(產生的區塊加入主鏈的概率),比特幣的處理交易能力將變為原來的 26.6倍
GHOST協議解決了鏈上擴容導致分叉帶來的安全性問題。
區塊的結構類型就從一條鏈變為樹

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

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

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

  看完上邊內容之後,你會發現, 最長鏈規則下,分叉的區塊對比特幣安全性和交易量沒有任何貢獻 ,白白的浪費了算力,而 GHOST通過計算分叉區塊個數來提升鏈的安全性 ,但分叉區塊除了納入區塊計數外,區塊內包含的交易信息卻全部 被丟棄
  這種新的區塊結構帶來了新的特性,當然,比特幣的 最長鏈規則 也可以在DAG上實施,只不過安全性和處理交易能力不佳,而GHOST協議可以提高安全性和處理交易能力,為了 最大化 利用DAG區塊鏈特性,社區提出了不同的協議,接下來介紹Yonatan Sompolinsky 提出的 SPECTRE協議 ,以及 PHANTOM協議 ,以及國內某社區提出的 CONFLUX協議

丟棄主鏈概念,所有產生的區塊共同構成賬本,不丟棄任何一個區塊
  只要是產生的區塊就不會被丟棄,所有的區塊都是有效的,所有區塊共同組成賬本,這樣進一步提高了區塊鏈的處理交易能力, 該設計的關鍵在於設計演算法來保證區塊鏈不會被惡意攻擊成功。   
  SPECTRE協議較為復雜,下邊將從其如何產生區塊、如何處理沖突交易以及產生可信交易集三個方面進行描述。

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

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

SPECTRE協議將礦工維持交易不沖突的要求剝除   
  比特幣就像一本 權威 的賬本,只要是里邊記錄的,就一定是真的(不考慮分叉和惡意攻擊),而SPECTRE產生的DAG就像一本 不權威 賬本,里邊的交易信息可能沖突(上邊圖1中兩個1區塊中可能包含沖突交易信息)。   
  該協議下,挖礦節點只 負責迅速挖區塊 (能夠達到1秒一個區塊),而對分叉中可能包含的沖突交易在挖礦階段並 不做任何處理 ,將記錄交易速度最大化,讓DAG這種區塊鏈有著恐怖的處理交易能力。

  是時候解決挖礦不解決的 沖突交易 問題了,SPECTRE的思路是設計一個計算投票的演算法,讓誠實區塊會投票給誠實的區塊,後邊的誠實區塊會給前邊的 堆疊算力 ,從而讓惡意攻擊失敗,其安全算力也是 51% 。   
  拿雙花舉例,下圖中,X和Y區塊中包含著兩條沖突交易會導致雙花,此時DAG中的區塊會對X和Y進行投票, 決定哪一個交易有效。

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

  根據投票結果,X中的那條交易信息 有效 ,Y中對應的那條交易信息 無效 。   Yonatan Sompolinsky也對 不指向前邊區塊 以及 產生區塊不發給鄰居節點的惡意攻擊 有進行分析,在投票規則中,低於50%算力的攻擊者會失敗。   
   投票聽起來像是一個主動地中心化行為,實際上不是,程序根據當前DAG區塊所處的狀態自發完成這一區塊投票計算過程,就相當於,給定一個DAG數據,輸入為兩條沖突信息,運行該規則演算法,將得出一對沖突交易的哪一個為有效。

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

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

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

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

DAG中,攻擊者有兩種攻擊手段, 一產生的區塊不基於已知的末端區塊,二不立即發布自己產生的區塊 ,前者會讓自己區塊指向的區塊變少,後者讓其他節點產生的區塊不會指向自己的區塊,這兩種情況都會導致這些惡意區塊的與其它區塊的 連接度低
   誠實區塊在考慮網路最大延遲下,經過一定時間一定會傳遍整個網路,一定會被後邊的區塊所指向,誠實節點在產生新區塊時也一定會指向自己所知道的末端區塊。
  通過對 區塊指出去的邊和指向該區塊的邊 進行分析,也就是區塊的 連通度 ,當考慮最大的網路延遲,連通度會有一個 極限值K ,低於該值的區塊可以被認定為惡意區塊,在排序中要處於 劣勢

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

  第二步 先對藍色區塊集排序 ,拓撲排序,然後對 紅色區塊集排序 。紅色區塊的順序要處於弱勢,例如上圖中C,它處於A和I之間,那麼它的順序會排在I的前一個區塊,而D、H都會排在C前。 注意通過考慮最大延遲時間設定連通度的值,幾乎所有正常誠實節點產生的區塊都會被標記為藍色
  至此,PHANTOM協議實現了對DAG的 線性排序 ,通過線性順序就可以提取 無沖突交易集 ,進而提取 可信交易集 ,雖然耗時較長,滿足智能合約的要求。

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

  至此,介紹了Yonatan Sompolinsky一開始從分叉導致不安全提出的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, and K 。接下來對該線性順序的區塊里的交易信息進行交易排序, 單一區塊 里可能包含的沖突交易將直接按照該區塊內交易信息排列 先後順序 決定。
  至此,CONFLUX對DAG所有區塊產生一個 線性順序 ,進而可以對區塊內交易信息排序,產生 無沖突交易集 ,超過一定時間的無沖突交易組成 可信交易集 主鏈只是排序的標尺,作為分割時段的標准,CONFLUX包含所有分叉區塊。

GHOST論文
Inclusive論文
SPECTRE論文
PHANTOM論文
CONFLUX論文
DAGlabs 相關講解視頻合集

D. 什麼才是中本聰心目中理想的比特幣擴容方案

圖形結構賬本是最符合中本聰理想的區塊鏈擴容方案,DAG技術的設定是要能接受無法無限擴容以及區塊中交易重復的問題。該方案的典型代表是就是HLC公鏈團隊研究的DAG技術。DAG技術解決的是出塊時間和傳播時間的矛盾, 因為出塊時間過快, 必然會增加分叉, 長時間的分叉會導致網路的不一致, 所以DAG技術歸根結底也是解決分叉的問題。

DAG技術解決的是上述提到的出塊時間和傳播時間的矛盾, 因為出塊時間過快, 在傳播時間不得不考慮的情況下, 必然會增加分叉, 長時間的分叉會導致網路的不一致, 所以DAG歸根結底也是解決分叉的問題。目前DAG技術的知名項目有IOTA, ByteBall以及NANO,這些項目都是採用偏中心化的共識方案解決分叉問題, 造成許多用戶誤會DAG的共識方案只能用中心化的方案解決。

事實上, DAG技術是目前最符合中本聰的理想的區塊鏈設定的擴容方案, 自然DAG技術也是可以解決中心化的問題。DAG技術目前看來最大的問題跟多區塊技術和混合共識技術一樣, 由於每個節點需要處理所有交易, 無法解決理論上的無限擴容, 所以採用DAG技術的設定是要能接受無法無限擴容以及區塊中交易重復的問題

E. XDAG(匕首幣)——未來pow+dag貨幣之王

Dagger(代幣簡稱XDAG)是一個全新的基於有向無環圖(DAG)的加密貨幣,替代了區塊鏈技術。沒有預挖,也沒有ICO計劃,是一個真正由社區推動、公平開放的項目。而且不同於其它DAG方向的幣,Dagger可以進行挖礦,目前CPU、GPU都可以進行挖礦。

Xdag總量為4, 294, 967, 296個(2的32次方),分 160 年挖完,明年預計大幅度減產,總量減少至8億。一天產量為 138 萬,每 64 秒產生一個塊,一個塊 1024 枚 Xdag。目前是 4 年遞減,每隔 4 年挖出礦的數量減半。目前Xdag已經挖出近2億枚,流通量約一億八千枚。

Xdag於2017年11月被設計出來,內部測試兩個月後,也就是2018年1月正式上線主網。它的作者是俄羅斯莫斯科國立大學的高級研究員,數學研究背景。Xdag的目標是創建一個能夠允許每秒進行成千上萬筆交易的去中心化的支付系統。

Dagger (XDAG)是全世界第一個實現pow+dag的加密貨幣,既擁有pow的去中心化和高安全性,又加入了dag的高並發,從bitcointalk.com 創世以來,就受到全世界的關注,被譽為dag中的比特幣。每一個塊包含一個交易,塊同時也是一個地址。Xdag是僅可以通過挖礦獲取,目標是成為全球性的超主權支付貨幣。完全沒有預挖也沒有ICO,主網路已經穩定運行五個月,算力上漲異常迅速。

DAG或直接非循環是在分布式、分散式環境中的人之間發送數據的另一種方法。這是在沒有區塊鏈的情況下完成的,可以提供更高的可擴展性。目前來看,XDAG網路在POW這種目前最優的去中心化方案下,依然能夠擁有1000~10000tps,且整個轉賬系統零手續費。

XDAG(匕首幣)已經於2018年04月22日,晚上6點整(UTC+8),正式登陸Coinbat.com。此為國內交易量最大交易所。

區塊=交易=錢包

Xdag中所有的錢包地址、交易記錄均是塊(Block)。因為這種特性,所有的錢包都需要在網路上有獨一無二的block。換而言之,你不可以向不存在的wallet轉賬。這意味著,不用再擔心像其他加密貨幣一樣,打到黑洞地址的情況。之前加密貨幣最不人性的一點就是容易手誤打到錯誤地址。這一切在xdag中,不會出現。因為只有已經存在的錢包,才在xdag網路上有獨一無二的區塊。同時Xdag轉賬是沒有任何費用的。

第一個基於DAG技術可挖礦(PoW)的公鏈

Xdag 是採用PoW(工作量證明)的 DAG 技術,是目前業界唯一個可以進行挖礦的DAG網路。相較於區塊鏈技術Xdag有更高的 TPS,同時相對於其他DAG技術,Xdag則採用已經廣為認可的 PoW共識機制,確保去中心化和公平性。

解決了雙花問題

在Xdag中,主塊(Main Block)在每個幀間隔(Frame Time)中生成,Xdag中所有交易均是塊(Block),當發生交易產生交易塊(Transaction Block)發送到主網中,見證者會按照規則驗證交易,並將交易塊鏈接到主塊上,一個交易塊會有自己的鏈接關系,見證者會依據規則確保先到的交易塊被鏈接到主塊,後到的塊將不會被鏈接到主塊,只有被主塊鏈接的塊才是有效的。

高TPS,轉賬速度快

到目前為止,整個系統已經穩定運行接近5個月,轉帳速度極快,基本都在幾十秒即可到達,遠遠超過 ETH、BTC。之後可以縮短到十幾秒。

目前最好的不可能三角解決方案

Xdag通過pow來保證去中心化和安全性,同時保留了dag的高並發。這是目前市場最完美的不可能三角(高並發、安全性、去中心化不可兼得),具備非常大的區塊鏈三點零潛質。

目前xdag的開發由社區自治,目前開發進度正常,版本更新快。前陣子曾因為算力上漲導致主網出現過兩次不同步的現象,經過社區開發人員的開發,目前項目已經很大提升了其穩定性。現在轉移開發重點為RPC介面、移動錢包的開發。RPC介面開發完成後意味著能實現交易平台自動沖提功能,屆時也會一些交易平台進行對接,如果能夠順利上線一些流通性更好的平台,對項目本身的意義也是非常正面的。也許在未來,會有更科學的技術能夠實現點對點交易、安全、匿名、高效的完美整合。但至少在接下來的一段時間里,XDAG絕對會是發展潛力無窮的金子。

xdag打賞address:ZBJ9BLTG+knstcKzwSiNfof9hDoDtdko

F. 一文了解以太坊礦機及挖礦原理

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

以太坊是一個開源的有智能合約功能的公共區塊鏈平台,通過其專用加密貨幣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甚至更低,這就導致一般人不願意修建專門的顯卡礦機礦場(因為礦場主要賺取的是電費差價,同樣面積的場地,可以放置的顯卡數量少,消耗的電量更少)。即使有少量的顯卡礦場,收取的電費成本通常也比比特幣礦機礦場的高。

G. 挖礦文件後綴

挖礦文件後綴為DAG。
比特幣挖礦機就是用於賺取比特幣的計算機。這類計算機一般有專業的挖礦晶元,多採用安裝大量顯卡的方式工作,耗電量較大。

H. ETH挖礦提示VRAM不足

換內核軟體。
4G顯存挖ETH出現DAG顯存不足報錯的,換成15.0內核軟體都可以解決問題,此故障過段時間會大面積報錯。
更新一下顯卡驅動或者虛擬內存弄大一點,把ETH刪掉試試,我的就是這個問題,打上ETH補丁魅力嗎跳出你這個提示,只能設置成窗口模式玩,把ETH刪除掉就可以了。

熱點內容
以太坊幣上限多少企業員 發布:2025-06-22 10:36:10 瀏覽:888
跨境區塊鏈平台試點工作調研 發布:2025-06-22 10:26:57 瀏覽:921
固件trx 發布:2025-06-22 10:16:06 瀏覽:452
幣圈霸氣的維權語句 發布:2025-06-22 10:11:48 瀏覽:903
btc錢包發送幾天了都0確認 發布:2025-06-22 10:05:20 瀏覽:186
電子貨幣和數字貨幣的區別與聯系 發布:2025-06-22 10:03:56 瀏覽:400
類似元宇宙的動漫 發布:2025-06-22 10:00:11 瀏覽:113
元宇宙房產是什麼意思 發布:2025-06-22 09:58:34 瀏覽:217
數字貨幣群主理事 發布:2025-06-22 09:36:18 瀏覽:309
比特幣在哪裡可以弄到 發布:2025-06-22 09:31:52 瀏覽:392