前言:本文是ChristopherCarr在阿姆斯特丹舉行的"MasterWorkshop:Layer1solutions"研討會上的演講,由JamesOvenden筆錄整理,并由公眾號“藍狐筆記”社群“鑫鑫”翻譯。
什么是DAG?我的演講將包含以下內容。首先會介紹什么是DAG以及我們為什么要使用它們?然后我會談到Graphchain框架,這是我們剛剛實現的一個基于STAG的框架。我們把它命名為Graphchain。接著我們會討論設計選擇和主要挑戰,最后給出結論。
如果你對它的來源感興趣,最初我和XavierBoyen、ThomasHaines一起在2016年寫了這篇論文——Graphchain:一種無區塊鏈的可擴展去中心化賬本。我們把它放到了ePrint上,在ERIMNews上可能有一個更可讀的版本。這篇論文在其他地方也有發表,但這兩個地方可能最容易找到。
什么是DAG?
首先,DAG是什么含義?它指的是有向無環圖。這是圖論中的一個數學術語,通常包含由頂點和邊組成的集合。邊就是有序的頂點對,在有向圖中通常用箭頭表示。如果不能從一個頂點出發,沿著箭頭返回一個頂點,那么圖就是無環的。你也許意識到這不完全是一個數學術語。
下圖是一個DAG的例子。箭頭表示邊,橙色的方框表示頂點。你可以通過檢查發現圖中沒有環。你不能從其中一個橙色方框出發,沿著箭頭返回一個橙色方框。這就是一個DAG。你也可以給這些DAG加上標記。
如果這樣做,你將得到一個所謂的偏序集。在我們所做的工作中,談及了很多關于偏序集。這里的思想是,如果你定義箭頭指向一個比出發點更高的頂點從而得到一個偏序,那么你會很容易發現k是所有字母中最高的那一個。你也可以很快發現對于f和h,它們之間沒有排序。我們所知道的就是f和h都高于d并且都低于i。
opitimism:找到一種方法可以將平均交易費用再降低30%,或將進行部署:1月19日消息,以太坊二層擴容方案opitimism發推表示,找到一種方法可以將平均交易費用再降低30%,可能會在稍后部署。[2022/1/19 8:58:48]
因此,它是一個偏序,不像我們所熟悉的另一種DAG,即區塊鏈,它是完全有序的。實際上,如果你開始思考如何處理這些孤塊,以及會有多少孤塊,你會發現這真的很有意思。我沒有時間深入這個話題,但它真的很有意思,相信我。你會得到分叉,但是區塊鏈本質上也是DAG,只是他們受到的限制更多。你無法擁有所有這些額外的偏序。
為什么我們需要DAG?
我們想要解決什么?這里我們試圖解決的主要問題是去中心化和擴展性。區塊鏈技術存在很多問題。這可能是最常被談論的兩個問題——還有一些其他問題,但我最感興趣的兩個問題是去中心化問題,這實際上歸結為安全問題,以及可擴展性問題,這和可用性相關。擴展性問題仍然存在。這些問題是從哪里來的?這些問題似乎源于交易塊的使用?可能是這樣的。
我們整個項目的目標是:能否創建一個系統,讓個體的努力得到回報?主要的問題,可能你已經意識到了,是礦池造成了一些問題。它們造成問題的原因是實際上它們的權力有點太大了——有些人認為它們權力過大。我傾向于這樣理解。這不一定是壞事,有很多支持和反對它們的論據,我真的不想卷入這個話題,但是如果我們不需要它們不是更好嗎?
我們能否消除加入礦池的動機?這是其中一個問題。此外,這么做的同時,是否也可以允許更快的交易處理。如果我們可以廣播附加了工作量證明的交易,整理這些交易并用它們構建一個圖,會怎么樣呢?那么,我們還需要區塊嗎?至少,這是基于DAG的思想。
為什么這很重要?因為51%的誠實用戶就足夠了?不!這些我們早就知道了。那么,什么是去中心化呢?這是一個更加棘手的問題。它跟分布式設計的概念有點混淆,所以你可能會問去中心化究竟是什么含義。實際上我認為這個問題很難回答。有很多人思考過去中心化的真正含義,特別是在加密貨幣方面。大致上,我們希望全世界有許多運行相同系統的獨立機器。如果有的話,就可以保證所有機器在計算上是等價的。就像我說的,這不是什么新鮮事物,人們已經談論了一陣子了。
摩根溪創始人:ETH與法定貨幣性質及波動性存在相似,不是一種可行貨幣形式:摩根溪創始人Anthony Pompliano日前在博客文章中抨擊了“ETH就是金錢”的說法,稱這種說法的邏輯“從根本上存在缺陷”。 Pompliano直言不諱地說 “以太和法定貨幣沒有什么區別”。他引用了資產缺乏固定供給,通貨膨脹供給計劃,以及在貨幣政策方面的集中決策小組。Pompliano解釋說,這是法定貨幣的特征。Pompliano進一步解釋稱:“Ethereum的結構與我們當前的法定貨幣政策相似,決策者可以增加或減少流入系統的新貨幣的產量。” 因以太坊與法定貨幣性質及波動性的相似性,Anthony Pompliano得出結論,以太坊不是一種可行的貨幣形式。他表示:“(未來的去中心化金融)將只使用穩定幣或比特幣作為兼容貨幣,而不是依賴以太坊復制當前法定貨幣存在的許多缺陷。”(Cryptoslate)[2020/3/3]
我們在談的這些是什么?我們在談論礦池和礦場。在"全世界運行相同系統的獨立機器"上——實際上機器在運行一個礦池系統。并且,從計算上等價的機器的角度來說,我們有礦場。因此,本質上我們擁有一臺能力非常強的機器。第二個問題我不認為是DAG必須處理的問題。這取決于功能。
不過,可擴展性也是一個主要問題。當我們談論區塊鏈時,為什么需要關心可擴展性?因為區塊鏈是區塊的線性集合,其中一筆交易引用下一筆交易。問題是,無論處理哪種類型的區塊鏈,區塊都包含一定數量的交易。有某個特定的時間段內可以接收交易。正如我們剛才所聽到的,我們知道以太坊的限制,也知道比特幣的限制。
問題的一部分是因為我們有區塊,并且將它們和如此多的交易綁定在一起,所以我們可能會有兩個不同的區塊,其中一個包含交易T1到Tn,另一個包含交易T1到Tn'。我們不知道它們是否相同——也許它們包含相同的交易列表,也許不是。
聲音 | 經濟政策研究中心主席:Libra或未能成功推出,但已成功播下引入另一種全球數字貨幣的種子:經濟政策研究中心(CEPR)主席Beatrice Weder di Mauro表示,雖然Libra可能未獲得立法者的批準,但它已成功播下了引入另一種全球數字貨幣的種子。具有全球資產的國際貨幣體系比當前的體系具有主要優勢,當前的體系目前由美元主導。像Libra這樣的全球貨幣網絡的想法“威脅”了各國央行,因為建立在全球網絡基礎上的數字資產將降低其自身的重要性和在市場上的地位。但在生態系統中出現類似項目的可能性仍然很高。(ambcrypto)[2019/10/26]
使用區塊鏈,如果發生了分裂,我們就必須從中選擇一條。這是一種分叉,對吧。因此,我們現在在等著看哪一條會被擴展,然后才能確定我們知曉哪些交易。如果我在T'中有一些交易,現在我將不得不等它們稍后在某個地方被包含進去。我們不能依賴所包含的交易。
當然,這只是通常情況。可以想象一下,由于一些反常的事件,你同時生產了大量的區塊。使用區塊鏈+,即以太坊和ghost協議的內容,你就擁有了可以被包含的叔塊。這真是一個非常聰明的主意,但不會包含里面的交易。因此,你仍然可以獎勵某人的努力,這是關于創建這個額外區塊的一個非常明智的想法,因為人們應該因他們的努力而獲得獎勵。
本質上,整個想法是:我們是否也可以擁有這樣的系統,你可以在其中創建一個新的區塊,同時包含來自T和T'的交易,也就是這些交易的合集?
這本質上就是Graphchain。我們擁有的東西是:如果沒有區塊會怎么樣?交易只引用之前的交易,隨便多少都可以。要發送交易,只需要簡單地收集你認可的交易并引用它們,并在交易中附上一些工作量證明。
這是如何工作的?
聲音 | 比特幣核心開發者:IRS加密貨幣稅務指引是一種法律攻擊手段:比特幣核心開發者Jimmy?Song近日發推表示,美國國稅局(IRS)更新的加密貨幣稅務指引是一種法律攻擊手段。他稱,“在IRS的指導下,一個陌生人在未經你同意或不知情的情況下做出的行為可能會讓你承擔稅務。這似乎是一種巨大的法律攻擊手段,任何人都會被隨意增加稅收負擔”。[2019/10/11]
我們可以定義一種抽象的工作量證明函數。這是一個相當抽象的想法,但在實踐中通過哈希函數很容易實現。假定工作量證明函數S包含問題a和它的一個解b。如果b是a的解的話,我們就說S(a,b)為真。以區塊鏈為例,解可能是一個nonce,你的a是指交易集合以及和之前區塊之間的鏈接和所有其他數據。
我們想對工作量進行量化,從而我們可以說這個工作量證明函數的工作量=d。我們可以做到這一點,大多數時候都可以做到。如果你能部分地反轉一個哈希函數,你可以說它一定花費了這么多的計算量,或者我們期望它花費了這么多的計算量。
因此,我們能夠做到這一點,而且這已經發生了,因為礦池本質上是在做同樣的事情。如果你為一個礦池工作,你不是先解出這個區塊,然后把它交給他們,而是通過向他們展示你已經解決了一個更小范圍的問題來證明你是在為他們工作。所以,如果是在比特幣中,你可能想要找到低于某個閾值的數值。你向他們展示你已經找到了低于更高閾值的解——但至少它表明你正在為他們工作。
本質上,我們可以使用同樣的方法。其目的是量化為解決某個問題所做的工作。抽象函數可以是任何我們可以量化的尋找問題解的難度。我們甚至不需要哈希函數,你可以想象用其他方法來實現這一點。我們再一次試圖把它作為一個框架來設想。我們可以廣播包含相關工作量的交易。這樣做的目的是我們可以說:這里有一個區塊,它的工作量為8。
俄羅斯國家杜馬金融市場委員會主席:加密貨幣是一種金融資產 它的流通不應該征收增值稅:俄羅斯國家杜馬金融市場委員會主席阿納托利·阿克薩科夫(Anatoly Aksakov)表示,加密貨幣是一種金融工具,是一種金融資產。因此,它的流通不應該征收增值稅。[2017/12/25]
因此,你再次拿走DAG,然后你可以想象一些數字,你可以說:好了,現在我們有了所有這些數字,這意味著什么呢?好問題。我們要做的是定義權重和高度這兩個概念。這跟區塊鏈非常相似,因為你有累積的工作量。一旦我們用工作量對圖進行了標記,就可以用其他值來標記它了。
例如,對于權重,我們把這種累積工作量和交易及其所有后代相關聯。高度是和交易及其所有祖先相關聯的累積工作量。例如,你會發現,權重本質上就是把每一筆交易中的工作量證明的值相加。
所以,我們可以說,交易的權重是61。為什么這么說?因為它讓我們慢慢地建立起關于該交易在系統中的嵌套程度的概念。對于高度,你擁有了一個計算所有子交易的系統。有趣的是,交易本身也計算在內。所以,對于第二個交易,我們可以說它的高度為80。本質上,這只是兩個例子,但我們想說的是,我們可以建立一個概念,即一個交易在圖中的高度是基于它所包含的工作量證明的。
在基于DAG的系統中還需要做一件事。我們需要開始去除進一步下降的交易。我們必須這么做的原因是,如果給你一個新的圖,因而你最近沒有看到任何交易,并且你必須即刻計算出它們有多高,那么隨著系統中交易數量的增加,它會很快變得非常消耗算力。你必須限制這一點,并最終開始擺脫進一步后退的交易。這是一件單獨的事情。
這種基于DAG的設計增加了復雜性,這非常棘手。本質上,我們這么做的目的就是為了獲得這種收斂性。如果交易可以引用任何其他先前的交易,那么通過什么來阻止用戶在非常老的節點上創建新交易呢?
你需要提供激勵。這也是框架的一部分。我們需要激勵,希望用戶從圖的頂部構建新交易,所以獎勵和高度的某種函數相關聯。因此,為了簡單起見,我只寫了這些。然而,這并沒有那么簡單。比如說,如果這個函數是一個反函數,那么它將無法正常工作。但是你的確需要高度的某種函數來創造這種從前面開始工作的激勵。這樣做的關鍵是我們能夠執行交易,并鼓勵人們在交易的最前面開始工作。我們沒有具體說明這一點,因為我們在嘗試開發一個框架。
收斂的關鍵在于你最終得到了一個基本上位于列表頂部的綠色交易。它是收斂的交易,并且它下面的每個交易都是其祖先的一部分。而且,根據這個函數,每個人都想構建這個新的綠色交易——如果你想要構建一個新的交易,你將會引用這個頂部交易。就是這個思想。
不過,我們還要擔心其他問題。我們得擔心一些類似于雙花的問題。讓我們考慮一個雙花的場景。你有一個這樣的交易圖,突然這兩個紅色的交易在雙花某筆錢。
好,那你怎么克服這個問題呢?比較一下這些交易。最終你必須比較這些并決定你想要繼續使用哪一個。想象一下你有一個積極的對手的情況。我們可以將系統中的分裂概括為:如果對手實質上想要永久保持系統的分裂,會怎么樣?基本上,你可以將其一般化為兩個不能作為基礎的圖,因為你不能引用兩個沖突的交易。他們是否需要雙花并確保系統永不收斂?
對手現在的形勢是他們必須基于這兩個交易中的一個進行構建。他們還必須趕超網絡中的其他節點,后者正試圖在其中一個交易上進行構建。因此,設想一種情況,即誠實的節點,或者更確切地說,激勵上兼容的節點首先創建了一個高度足夠高的交易,就好像“這是新的真實的圖”,然后對手必須在另一條鏈上創建一個新的交易。我們可以給它分配一些概率。然后這種情況不斷地發生,以此類推,你最終會得到這樣的概率。
你可以看到它很快變得非常小。但這只在對手沒有過半數算力的情況下才有效。這是它的論據之一。
只是為了給你們一點Graphchain的概述:你按照自己的節奏創建交易,你會因個人努力而獲得回報。受激勵影響你更傾向于在頂部創建交易,并且我們允許多筆交易獲得收斂性。工作量證明建立在更接近于實時的基礎上,所以希望你擁有這些由個人創建的小得多的交易,并且工作量證明是由交易的個體建立的。最后,框架對于工作量證明函數,或者甚至在某種程度上對于獎勵函數都是不可知的。
和現存DAG系統之間的差異
所以,你可能聽說過其他的DAG系統。IOTA可能是最著名的,有一段時間它的市值很高。主要的區別是,它實際上沒有任何激勵措施——有一種挖礦方式,但實際上沒有激勵措施。他們目前正在使用協調員。但它們在框圖和內容方面非常相似,它們的網站使用的框圖跟我剛才展示的圖很類似。你可以去查一下,其實挺有意思的。
其他的一些實現:Byteball——它們看起來有點類似,但在可信見證人這一點上有區別。Nano采用分布式權益證明協議,通過投票消除沖突。這兩個系統都很酷,我建議你去研究研究。它們顯然各有利弊。我們的框架試圖變得更加不可知,更加去中心化。
結論
我不僅從事學術研究——我們有這篇論文——我也在挪威的NTNU全職開發這個框架并使之成為一種有效的加密貨幣。我大概六個月前在挪威國家電視臺上做了一次演講,之后我和這些TTO的人員進行了交談,現在我正在努力將其發展成一種有效的加密貨幣——為了好玩,結果發現真的很難。但我們還處于項目的初級階段。我們最近剛剛融了一些資金,正在招聘開發人員。
總之,我們正在努力保持甚至擴展去中心化加密貨幣的思想,我們也希望有一個可擴展的系統。這是我們擁有的最重要的東西。也許在實用中可擴展性會受到某種程度的限制——但它很可能對很多用戶都有吸引力。感謝你們的傾聽。
問答
您能翻回到有平衡攻擊的那頁幻燈片嗎?您在哪里展示了對手的概率?我想這里沒有提到,您是假設誠實節點將會在某條鏈上進行構建,但實際上,誠實節點不知道哪一條是正確的。
你說得對,但事實是,對手必須同時在兩條鏈上構建。如果對手知道誠實節點正在哪一條鏈上構建,它就可以在另一條上構建。但事實并非如此,所以對手必須同時在兩條鏈上構建,因而也必須拆分它的算力。這就是它的工作原理。實際上我在這里漏掉了一個術語——通常情況下,誠實的參與者們有可能會同時創建一條鏈。我有意這樣做是因為我以為沒人會注意到。不過,最主要的一點是,對手必須將其算力拆分以便同時擴展兩條鏈,因為它也不知道理性的參與者將會首先擴展哪條鏈。
但是,您仍然希望并行出塊,因為這就是可擴展性的關鍵所在?然后在一條鏈上有誠實的區塊,在另一個鏈上也有誠實的區塊,它們的出塊速率大致相同。只需要一點點哈希率來平衡兩者。
我認為它們的速率大致相同,如果它們沒有在這個術語所指的重要的點上往前推進的話。它仍然會很快變得非常小。顯然,這取決于對手的算力。
------
風險警示:藍狐筆記所有文章都不構成投資推薦,投資有風險,投資應該考慮個人風險承受能力,建議對項目進行深入考察,慎重做好自己的投資決策。
通往區塊鏈的新世界:關注“藍狐筆記”公眾號:lanhubiji
加入藍狐筆記的知識星球:https://t.zsxq.com/iaQNnIq
加入藍狐筆記群微信:pacinoli
比特幣換披薩的梗,到底發生了何事?比特幣過去十年的發展,既是一部貨幣發展史,也是一部產業史。當雷曼兄弟宣布破產,全球經濟陷入衰退之時,一種叫做比特幣的新型加密貨幣的想法正在悄然醞釀.
1900/1/1 0:00:00為慶祝CRO上線KuCoin,Crypto.comChain(CRO)團隊將對KuCoin平臺的CRO持倉用戶空投2,000,000CRO.
1900/1/1 0:00:00親愛的KuCoin用戶 KuCoin已完成3月VET持幣用戶的VTHO發放,用戶可通過資產中心>我的福利>其他獲贈查看分發記錄.
1900/1/1 0:00:00浙江在線4月29日訊購房,上牌,入學……不知不覺間,搖號成了生活里不可或缺的一部分。那你知道嗎?從下個月開始,杭州的搖號系統中將正式出現區塊鏈的影子.
1900/1/1 0:00:00親愛的Bit-Z用戶: QTUM網絡異常問題修復完畢,現已升級到最新版本,Bit-Z已恢復QTUM及相關資產的充提服務。其中包括QTUM、PUT、PLY、OC。由此給您帶來不便,敬請諒解.
1900/1/1 0:00:00親愛的用戶: 根據MaticNetwork的搖號中簽規則,Binance將于2019年04月24日16:00開啟搖號申購,用戶可于申購頁面查看申購資格.
1900/1/1 0:00:00