注:原文作者是以太坊聯合創始人VitalikButerin。
區塊鏈最強大的特性之一,就是可獨立驗證區塊鏈執行的每個部分。即使大多數區塊鏈礦工被攻擊者接管,但如果該攻擊者試圖推送無效區塊,網絡也可以簡單地拒絕它們。即使是某些時間段未驗證區塊的那些用戶,也可以獲得驗證用戶的警告,此時他們可檢查攻擊者的鏈是否無效,并自動拒絕它,然后協調接受遵循規則的區塊鏈。
但我們實際上需要多少驗證呢?我們需要100個獨立的驗證節點,還是1000個?我們是否需要一種文化,使得全世界的普通人都能運行檢查每筆交易的軟件?這些問題是一個挑戰,尤其是當我們要構建一個比“中本聰”最初創建的工作量證明共識機制更好的區塊鏈,那解決上面這些問題就顯得非常重要。
為什么需要驗證?
圖:攻擊者發動了51%攻擊,而我們想要網絡拒絕這條無效鏈!
有兩個主要原因可以解釋,為什么用戶去驗證區塊鏈是有益的。
首先,它最大限度地提高了節點能夠正確地確定,并辨識規范鏈的機會。通常,規范鏈被定義為“擁有最多礦工/驗證者支持的有效鏈”。而無效鏈會被定義拒絕,如果在多個有效鏈之間進行選擇,那么從礦工/驗證者那獲得最多支持的區塊鏈就會獲勝。因此,如果你有一個節點來驗證所有的有效條件,從而檢測出哪些鏈是有效的,哪些鏈是無效的,那你就可以最大限度地檢測出規范鏈到底是什么。
驗證區塊鏈是有益的,還有另一個更深層次的原因。假設一個強大的參與者試圖對協議發起更改,并且其得到了大多數礦工的支持。如果沒有其他人驗證這條鏈,那么這種攻擊就很容易成功:每個人的客戶端都會默認地接受新鏈,當任何人看到發生的事情時,將由持不同意見者來協調對這一區塊鏈的拒絕。但是,如果普通用戶正在進行驗證,那么協調問題就落在另一面:現在,無論是誰試圖更改協議,都有責任說服用戶主動下載軟件補丁,以接受協議更改。
Vitalik Buterin:支持薩爾瓦多總統可能是加密社區犯下錯誤行為的一個例子:金色財經報道,以太坊聯合創始人Vitalik Buterin在最新媒體采訪時表示,支持薩爾瓦多總統Nayib Bukele可能是加密社區犯下錯誤行為的一個例子,薩爾瓦多選擇了“自上而下”采用比特幣的方式,比特幣社區“自然而然地喜歡所有支持比特幣的、有錢有勢的人”,這是愚蠢的,相比之下以太坊社區在選擇推廣和合作對象方面做得更好。(cryptoslate)[2022/11/21 22:11:31]
如果有足夠多的用戶在驗證,那么一個有爭議的協議更改嘗試,將默認為混亂,而不是默認為勝利。默認混亂仍然會造成很多混亂,這需要社區協調來解決,但它在攻擊者面前設置了一個更大的障礙,它大大降低了攻擊者的信心,從而降低其試圖發動攻擊的積極性。如果大多數用戶正在驗證,而攻擊只獲得了大多數礦工的支持,那么攻擊將完全默認為失敗,這會是所有攻擊中最好的結果。
定義視圖vs協調視圖
請注意,這種推理與我們經常聽到的另一種推理方式截然不同:根據“定義”,改變規則的鏈在某種程度上不是正確的鏈,而且不管有多少其他用戶接受一些新規則,重要的是你個人可以繼續使用你喜歡的舊規則。
以下是GavinAndresen提出的“按定義”視圖的一個示例:
下面則是來自Wasabi錢包的另一個示例,從解釋全節點為何有價值的角度來看,這一點更為直接:
Vitalik:因FTX的中心化性質,其崩潰是不可避免的:11月12日消息,以太坊聯合創始人Vitalik Buterin表示,FTX的巨大崩潰是不可避免的,因為它的中心化性質。在被問及FTX和其他加密貨幣公司今年的崩潰時,V神說:“今年我們看到了大量這樣的事情,因為它們的模式從根本上說是壞的”。
Buterin指出,FTX的營銷類似于“1930年代獨裁者”的“個人主義風格”,這與加密貨幣精神完全相反。(decrypt.co)[2022/11/12 12:54:33]
請注意此視圖的兩個核心組件:
根據定義,不接受你認為基本、不可協商規則的鏈不是比特幣,而不管有多少人接受這條鏈。
重要的是,你要留在一條你認為有可接受規則的區塊鏈上。
然而,我認為這種“個人主義”的觀點是非常錯誤的。為了了解原因,讓我們看看我們所擔心的場景:絕大多數參與者接受了協議規則的某些更改,而這些改變是你所無法接受的。例如,設想一個交易費用非常低的未來,為了保證區塊鏈的安全,幾乎所有其他人都同意修改一套增加發行量的新規則。然后你頑固地繼續運行一個執行舊規則的節點,并且分叉到與大多數節點不同的區塊鏈上。
從你的角度來看,你仍然可以將幣放在可接受規則下運行的系統中。但是那又怎樣呢?其他用戶將不會接受你的幣,交易所將不接受你的幣,公共網站可能會顯示新幣的價格,但他們指的是大多數人接受的那條鏈,而你的幣是沒有價值的。
本質上,加密貨幣和區塊鏈是社會結構,如果沒有人相信它們,那它們就毫無意義。
V神將推特名改為豚林vitalik.eth,并呼吁關注不友好的AI風險問題:金色財經報道,以太坊創始人Vitalik Buterin將推特名改為豚林vitalik.eth。昨日,V神呼吁更多的人關注“不友好的AI風險”問題,認為這是未來一兩個世紀可能讓人類脫軌的“最大事情”。V神稱,在未來1-2個世紀里,不友好的AI風險仍然可能是最大的事情,可能會嚴重阻礙人類登上星球。強烈建議更多的人關注這個問題。
推特一名粉絲表示,第三次世界大戰可能是當前人類面臨的一個更大風險時,V神表示不同意這個觀點。V神稱,不,如果真的很糟糕的話,第三次世界大戰可能會殺死10到20億人(主要是由于食品供應鏈中斷),但它不會消滅人類,一個糟糕的人工智能可能真的會永遠地消滅人類。[2022/6/10 4:16:07]
那么,另一種觀點是什么呢?其核心思想是通過協調問題將區塊鏈視為工程安全。
通常情況下,我們遇到的協調問題不會是什么好事:對于大多數人來說,如果英語能擺脫其高度復雜和不規則的拼寫系統,或者如果美國改用公制,或者如果經濟衰退時我們可以立即把所有的物價和工資降低10%,那么在實踐中,這需要所有人同時就轉換達成一致意見,而這通常是非常困難的。
然而,在區塊鏈應用中,我們可利用協調問題來發揮自己的優勢。我們正在利用協調問題造成的摩擦,以作為防止中央集權行為者瀆職的一道屏障。我們可以構建具有屬性X的系統,并且我們可以保證它們將保留屬性X,因為將規則從X更改為非X,需要一大堆人同意同時更新他們的軟件。即使有一個參與者可以強制改變,這樣做也很困難。
注意,這個觀點會帶來一個特別的結果:全節點的目的并不是為了保護你,在有爭議硬分叉的情況下,擁有全節點的人是安全的,而沒有全節點的人是容易遭受攻擊的。相反,這里的觀點更多的是群體免疫:驗證的人越多,每個人就越安全,即使只有一部分人在驗證,每個人都會因此得到高水平的保護。
Vitalik:以太坊2.0或需多年才能解決擴容問題:以太坊聯合創始人Vitalik Buterin表示,以太坊基礎層可擴展性還有很長路要走,很可能在很多年之后都無法實現區塊鏈基礎層擴容。按照Vitalik說法,基于應用程序基礎層擴容或許會在以太坊2.0最后一個主要階段完成之后才會出現,所以可能需要等待幾年。Vitalik表示,他鑒于當前情況建議將以太坊擴容工作全部放在二層Layer 2解決方案上,同時他建議一旦「以太坊1.5階段」完全通過權益證明,那么基本上就不會關注擴容問題了。如果用戶不確信「以太坊1.5階段」能夠解決容量問題,那么還可以采取折衷方法,即:擁有少量執行分片(比如4-8個)和更多數據分片。Vitalik建議在錢包中直接構建二層協議,比如MetaMask或Status,他也強調在「跨二層協議傳輸」方面需要做更多工作,二層解決方案可以某種方式成為協議本身一部分,而以太坊1.0則可以用作為Optimistic Rollup客戶端。[2020/10/3]
深入研究驗證
現在我們進入下一個主題,這個主題與輕客戶端、分片等主題非常相關:通過驗證,我們實際上實現了什么?為了理解這一點,讓我們回到前面的一點,如果攻擊發生了,我認為攻擊的發生方式具有以下優先順序:
默認為失敗>默認為混亂>默認為勝利
這里的“>”當然是“優于”。最好的情況是攻擊完全失敗,其次是攻擊導致混亂,每個人都不同意正確的鏈是什么,而最糟糕的則是攻擊成功。為什么混亂要比勝利好得多?這是一個動機問題:混亂增加了攻擊者的成本,并降低他們肯定會獲勝的確定性,因此從一開始就阻止了攻擊的企圖。默認為混亂環境,意味著攻擊者除了要贏得51%算力競爭,還需要說服社區跟隨,這要比簡單發起51%攻擊要困難地多,也沒有那么吸引人。
Vitalik:比特幣本質是一種金融工具:Vitalik Buterin在推特上回顧過去十年加密行業發展,他表示,金融在未來十年重要性會相對較低,加密貨幣領域需要適應這一現實。最終,加密貨幣會與更廣泛經濟趨勢高度相關。這并不意味著他們會免受其他事物(例如障礙/干擾)侵擾,但確實意味著敘事需要調整。Vitalik Buterin認為,比特幣本身主要是一種金融工具。以太坊本質上“金融性”沒有那么強,但即使如此,仍然存在一個事實,即區塊鏈合法地使很大一部分應用程序更好地涉及處理某種形式的貨幣/代幣/資金。[2020/6/3]
驗證的目標是從默認勝利改為默認失敗,或者默認混亂。如果你們都有一個全驗證節點,并且攻擊者試圖推行一條具有不同規則的鏈,則攻擊就會失敗。如果有一些人有一個全驗證節點,而其他人沒有,那么攻擊會導致混亂。但現在我們可以思考:有沒有其他方法可以達到同樣的效果?
輕客戶端和欺詐證明
在這方面,一個自然的發展是帶有欺詐證明的輕客戶端。目前存在的大多數區塊鏈輕客戶端的工作原理,是驗證大多數礦工支持的特定區塊,而不必費心檢查其他協議規則是否正在實施。客戶端基于大多數礦工是誠實的信任假設運行。如果發生了一次爭議分叉,則默認情況下,客戶端會遵循多數鏈,如果用戶希望遵循舊規則,則由用戶采取積極的措施。因此,今天受到攻擊的輕客戶端會默認承認攻擊是成功的。但有了欺詐證明技術,情況就開始不太一樣了。
欺詐證明最簡單的形式如下。通常,區塊鏈中的單個區塊只觸及區塊鏈“狀態”的一小部分。如果一個全驗證節點處理一個區塊,并發現它是無效的,則它們可生成一個package包。它們把這個package包廣播給輕客戶端。然后,輕客戶端可以獲取package包并使用該數據來驗證區塊本身,即使它們沒有來自區塊鏈的其他數據。
圖:區塊鏈中的單個區塊只涉及少數賬戶。欺詐證明將包含這些賬戶中的數據以及證明數據正確的Merkle證明。
這種技術有時也被稱為
無狀態驗證:客戶端可以只保留區塊頭,而不是保留完整的區塊鏈狀態數據庫,它們可通過向其他節點請求區塊驗證正在訪問的任何所需狀態項的Merkle證明來實時驗證任何區塊。
這種技術的強大之處在于,輕客戶端只有在聽到警報時才可以驗證單個區塊。因此,在正常情況下,輕客戶端仍然是輕客戶端,它們僅檢查大多數礦工/驗證者支持哪些區塊。但在那些例外情況下,多數鏈包含輕客戶端不會接受的區塊,只要至少有一個誠實節點來驗證欺詐區塊,該節點就會發現它是無效的,然后在它廣播欺詐證明后,網絡的其余部分就會拒絕它。
分片
分片是這一點的自然延伸:在分片系統中,系統中的事務太多,大多數人無法一直直接驗證,但如果系統設計良好,則可以檢測到任何單個無效區塊,并用欺詐證明證明其無效,這個證明可以在整個網絡上傳播。一個分片網絡,我們可概括為每個人都是一個輕客戶端。而且只要每個分片有一定的最小閾值參與者數,網絡就具有群體免疫性。
此外,在分片系統中,區塊生產是高度可訪問的,甚至它可以在普通的筆記本電腦上完成,這一事實非常重要。網絡核心不依賴高性能硬件,這使得多數人驅動的協議變更,更難以“默認獲勝”。
這就是可審計性在現實世界中的含義:不是每個人都一直在驗證所有事情,而是每個特定部分都有足夠的眼睛,如果有錯誤,它將被發現,以及檢測到一個錯誤,則所有人都清楚可見。
也就是說,從長遠來看,區塊鏈肯定可以在這方面有所改進。一個特別的改進來源是ZK-SNARKs:有效可驗證的密碼學證明,允許區塊生產者向客戶端證明區塊滿足某些任意復雜的有效性條件。有效性證明比欺詐證明更強大,因為它們不依賴于交互式游戲來捕獲欺詐。另一重要技術是數據可用性檢查,它可防止數據未完全發布的數據區塊。數據可用性檢查確實依賴于一個非常保守的假設,即在網絡的某個地方至少存在少量誠實節點,好消息是,這個最小誠實閾值很低,并且即使存在大量攻擊者也不會增長。
時間和51%攻擊
現在,讓我們來了解下“默認為混亂”思維方式最糟糕的后果:自行進行51%攻擊。目前很多社區的標準是,如果一次51%攻擊成功,那么發生51%攻擊的區塊鏈必然會成為有效鏈。這一標準經常被嚴格遵守,最近發生的ETC51%攻擊就很好地說明了這一點。攻擊者恢復了3000多個區塊,結果是,Geth節點使用了攻擊者的區塊鏈,而OpenEthereum節點仍然保留在原始鏈上。
我們可以說,這次攻擊實際上是默認混亂。不幸的是,ETC社區隨后選擇接受攻擊鏈作為規范鏈,這一舉動被eth_classic描述為“遵循預期的工作量證明”。因此,社區規范積極幫助攻擊者獲勝了。
但我們可以設想一個規則,一旦客戶端接受了一個區塊作為規范鏈的一部分,并且該區塊有超過100個后續區塊,那么客戶端從此將不再接受不包含該區塊的區塊鏈。或者,在具有最終確定性的權益證明設置中,想象一個規則,一旦完成一個區塊,就永遠無法還原。
5個區塊還原限制僅用于說明目的,實際上,限制可能會更長,例如100-1000區塊。
明確地說,這對規范性的確定方式帶來了一個重大改變:客戶端不再只查看它們自己接收到的數據,客戶端還會查看數據是何時收到的。這引發了由于網絡延遲而導致客戶端不同意的可能性:如果由于一次大規模攻擊而同時完成兩個沖突的區塊A和B,有些客戶端首先看到了區塊A,而有些客戶端首先看到了區塊B,該怎么辦?但我會說這很好:這意味著,嘗試恢復交易的51%攻擊不會默認為勝利,而是默認為混亂,而帶外應急響應,則可以幫助選擇正確的鏈。
如果協議設計得很好,強制升級到帶外應急響應,應該是非常昂貴的:在權益證明中,這樣做需要1/3的驗證者犧牲他們的存款并遭到罰沒。
有可能,我們可以擴展這種方法。我們可以嘗試讓51%審查交易攻擊也默認為混亂。對及時性檢測器的研究,進一步推動了所有類型的攻擊都默認為失敗方向,盡管由于時間檢測器不能幫助那些連接不好且在線的節點,因此仍然存在一些混亂。
對于一個重視不變性的區塊鏈社區來說,實施這種還原限制可以說是上乘之選。很難誠實地宣稱區塊鏈是不可變的,無論一筆交易在一條區塊鏈中被接受了多長時間,總有可能有一些強大參與者的意外活動出現,并將其還原。當然,我會聲稱,即使是BTC和ETC,也已經在極端情況下設置了還原限制。如果發生的攻擊使活動恢復了數周,則社區可能會采用用戶激活軟分叉來拒絕攻擊者的區塊鏈。
結論
首先,如果我們接受社會協調的合法性,并且接受涉及“1-of-N”信任模型的間接驗證合法性,那么我們可以創建可擴展性更高的區塊鏈。
其次,客戶端驗證對于所有這些工作都至關重要。只有少數人運行節點,而其他人依賴這些節點的網絡,很容易被特殊利益集團接管。然而,避免這樣的命運并不需要走到相反的極端,即無需讓所有人總是驗證一切!允許單獨驗證每個區塊的系統,因而用戶只在其他人發出警報時驗證區塊,這是完全合理的,并具有相同的效果,但這需要接受驗證的“協調視圖”。
第三,如果我們允許規范性的定義,包括時間,那我們將為提高拒絕51%攻擊的能力打開很多大門。最容易獲得的屬性是弱主觀性:這種想法是,如果客戶端需要至少每3個月登錄一次,并且拒絕恢復時間超過這個時間,那么我們可以在權益證明中添加罰沒規則,使得攻擊變得昂貴。但我們可以走得更遠:我們可以拒絕恢復最終區塊的鏈,從而保護不變性,甚至可以防止審查。因為網絡是不可預測的,依賴時間確實意味著攻擊在某些情況下“默認為混亂”,但好處是非常值得的。
考慮到所有這些想法,我們可避免(i)過度中心化,過度冗余的驗證導致效率低下,以及錯誤的規范意外地使攻擊變得更容易,并更好地構建更具彈性、性能以及安全的區塊鏈。
Tags:區塊鏈VITALIVITA區塊鏈運用的技術中不包括哪一項項Huobi Vitamin Tokenalice幣還有長期價值嗎Vita Inu
本文作者為PanteraCapital合伙人PaulVeradittakit,授權金色財經翻譯發表。利益相關:PanteraCapital是Ampleforth早期投資者.
1900/1/1 0:00:00作者?|?Edfelten?? 翻譯?|?李翰博?? ArbitrumRollup是一個鏈外協議,由鏈上Ethereum合約管理.
1900/1/1 0:00:00在前天波卡項目代幣DOT100倍拆分后,市場又掀起了一陣波卡熱。 看似價格下來了,卻是100倍拆分,只是看起來單價降了。其實價格還是漲的.
1900/1/1 0:00:00據U.Today8月22日報道,因比特幣Stock-to-Flow比率模型而廣為人知的交易員和金融分析師PlanB在Twitter上分享了他對以太坊的看法.
1900/1/1 0:00:008月22日-23日,“共享新機遇——2020全球區塊鏈算力大會暨新基建礦業峰會”在成都舉行。本次大會由成都市新經濟委、成都市科技局及成都市成華區人民政府指導,由成都市成華區新經濟和科技局、成都市.
1900/1/1 0:00:00在聯儲理事成員中,萊爾·布雷納德對央行數字貨幣的研發態度非常堅決鮮明,今年初的一次演講中,她表示聯儲要做CBDC研發的領頭人,這是美聯儲高層官員第一次對CDBC研發問題作出正向的明確表態.
1900/1/1 0:00:00