以太幣交易所 以太幣交易所
Ctrl+D 以太幣交易所
ads
首頁 > 瑞波幣 > Info

V神:當我們對區塊鏈進行驗證的時候,我們在做什么?_區塊鏈

Author:

Time:1900/1/1 0:00:00

編者按:本文來自以太坊愛好者,作者:Vitalik,翻譯&校對:Elisa&阿劍,Odaily星球日報經授權轉載。區塊鏈最強大的一個特質就是我們能獨立驗證其執行中的每一個部分。即使大部分區塊鏈礦工被攻擊,如果該攻擊者企圖讓無效區塊上鏈,網絡也會拒絕。哪怕是沒有實時驗證區塊的用戶,也能夠收到正在驗證區塊的用戶的警告,進而自行驗證發現攻擊者的鏈無效,自動拒絕接收這條鏈,然后與其他節點協調一致接收另一條遵循規則的鏈。但在實踐中,我們到底需要多少驗證者?一百個獨立驗證的節點?一千個?我們是否需要讓世界上每個普通人都運行軟件來檢查所有交易?回答這些問題是我們的挑戰,尤其是,如果我們還想構建出比單一鏈的中本聰工作量證明更有優勢的共識機制的區塊鏈,解決這些問題就格外重要。為什么要驗證

-51%攻擊者嘗試讓網絡接受一個無效區塊,而我們希望網絡不會接受無效鏈!-用戶對區塊鏈進行驗證主要有兩個好處。首先,這可以在最大程度上讓節點參與到決定合法鏈的過程中。通常來說,合法鏈被定義為“有最多礦工或驗證者支持的有效區塊鏈”,比如比特幣中的“最長有效鏈”。無效鏈根據定義就會被拒絕,如果有多條有效鏈競爭,則獲得最多礦工或驗證者支持的鏈獲勝。因此如果你運行一個驗證所有區塊有效性的節點,你將能檢測到哪些鏈有效哪些無效,從而將最大程度地提高檢測出合法鏈的機會。但用戶對區塊鏈進行驗證其實還有一個更深層的益處。假如一個強大的參與者企圖讓網絡接受某個對協議的變更,并且有多數礦工支持,在沒有其他人對區塊鏈進行驗證的情況下,這個攻擊很容易就實現了。并且,所有客戶端都會默認接受這條新鏈。等到所有人回過神來意識到這件事時,只能靠反對者通過協調來拒絕這條新鏈鏈。但如果普通用戶也參與驗證,那么情況就完全不同了,企圖變更協議的攻擊者需要說服驗證用戶主動下載他們的軟件補丁以變更協議。如果有足夠多的用戶參與驗證,那么當有人嘗試對協議進行有爭議的更改時,默認情況就不會是成功,而是造成混亂。天然混亂也會對網絡產生破壞,需要協議層面外的社會協調來解決,但這也在攻擊者面前放置了更大的障礙,讓他們無法自信自己可以一擊成功然后一走了之,也就大大降低了他們發動攻擊的意愿。如果多數用戶參與直接或間接的驗證,并且攻擊者只有多數礦工的支持,那么這次攻擊天然會失敗,這也是對所有人最好的結果。定義的視角vs協作的視角

V神:防止“統治”是區塊鏈的基本原則:金色財經消息,以太坊聯合創始人Vitalik Buterin在社交媒體發表對DAO(去中心化自治組織)的看法,他認為,發行可轉讓治理代幣的DAO與DAO本質是矛盾的。可轉讓的治理代幣都是為了給“最想統治的人”提供“更多”權力。

此外,他在回復網友評論時表示,“治理”和“統治”是兩件事。防止統治是區塊鏈的基本原則,但是防止所有治理是不可能的。[2022/7/29 2:45:27]

要注意的是,上述推理的邏輯跟我們經常聽到的另一種推理是很不一樣的:他們說,只要是改變協議規則的鏈“從定義上來說”就不會是合法鏈,而且重要的不是有多少用戶愿意接收新的規則集合,而是你永遠可以留在使用自己喜歡的舊規則的鏈上。看一看這個從“定義的視角”來討論這件事的例子,來自GavinAndresen:

我想為比特幣提出一個全面的技術上的定義:“比特幣”是一個交易分類賬,以區塊鏈的形式記載帶有合法簽名、花費此前未花費資金的交易。這條鏈由創世塊開始,其哈希為000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f,它按照預定的時間表、在積累了最多double-SHA256工作量證明的鏈上發行2100萬枚比特幣。來自Wasabi錢包的另一個定義,從解釋全節點的價值來說,這個定義更直接了當:

在運行比特幣全節點時,你可以定義自己所認同的確切的貨幣規則。沒有人能強加于你。因此,任何追求金融自由的自治個體都應該運行全節點。在確定了自己的規則后,全節點軟件就能在比特幣點對點網絡中找到符合我們規則的節點。這些節點根據它們的規則,向我們發送它們判定有效的交易,我們再根據自己的規則進行驗證。如果我們收到一個不符合規則的交易,我們大可以將其標記為無效交易,并且斷開跟無效交易來源節點的連接。伸張你的貨幣主權

V神:進一步提高Gas費風險很高 絕非必要則不考慮:8月24日晚間,V神在回復推特網友時表示,并不認為加密領域的消費者會認為提高Gas費用上限是可行的,生態系統已經顯示出,進一步提高Gas費用上限風險很高,只有在絕對必要的時候才會選擇這么做。[2020/8/25]

使用全節點讓我們享有定義、驗證并執行我們比特幣貨幣規則的權利。我們要注意一下“定義”的視角中的兩個核心:一條鏈如果不符合你定義下的基本的、沒得商量的規則,無論多少其他人接受該鏈,從定義上說這條鏈就不是比特幣鏈。最重要的是你堅守在符合自己規則的鏈上。然而,我認為這個“個人主義”觀點是很有問題的。在解釋我的理由前,我們先來想一想我們不愿意看到的情形:絕大多數參與者都接受了一個你不愿意接受的協議。比如,有一天交易費變得非常便宜,為了維護鏈的安全,幾乎所有人都同意更改規則,增發新幣。而你固執地跑著老規則下的鏈,自己一個人從大部隊中分叉出去了。從你的角度來說,你的確還擁有在你所認同的規則基礎上構建出來的系統中的貨幣,但那又如何?其他人都不再接受你的貨幣了。交易所不會接受,網站上可能會顯示新貨幣的價格節節高漲,但這新幣指的是擁有多數用戶的鏈上的貨幣,你的貨幣會變得一文不值。密碼學貨幣與區塊鏈從根本上來說乃是社會建構。如果沒有其他人相信,它們將變得毫無意義。

那么我們應該從什么角度來看這個問題呢?這個角度的核心是將區塊鏈看成利用協調問題來實現安全性的例子。通常來說,真實世界的協調問題都很難:雖然對大部分人來說,如果英語改變其高度復雜而不規則的拼寫系統,改成語音拼寫會更好;雖然如果美國改用公制會更好;雖然在經濟衰退的時候我們立即將所有價格和工資一起降低10%會更好,然而實際上這需要每個人同時同意這些轉變,是非常難達成的。但在區塊鏈的應用上,協調問題反而成了我們的優勢。我們利用協調問題造成的不順暢來阻止核心參與者的瀆職行為。我們能夠構建具有X屬性的系統,并且保證這個X屬性能夠被保留下來,因為將規則從X屬性更改為非X屬性需要一堆人同意并且同時更新他們的軟件。即使有一個參與者可以強制推動更改,他也非常難做到,要比反對者積極協調抵制更改難得多。我們應該注意到持這個觀點的特殊后果:運行全節點的目的不僅僅是為了保護自己的利益,在發生爭議硬分叉時,運行全節點的用戶很安全,而沒有全節點則不安全。這在更大程度上可以看成一種群體免疫,驗證的人越多,每個人都越安全,而且即使只有一部分人驗證,每個人都可以獲得較高程度的保護。深入討論“驗證”

聲音 | V神:DAO遭攻擊后ETH網絡并沒有真正回滾:金色財經報道,V神在推特解釋稱,在DAO遭到黑客攻擊之后,以太坊(ETH)網絡并沒有真正回滾。相反,更改的是The DAO狀態的記錄。他表示,無辜的用戶沒有看到他們的任何交易失效并回滾。相反,干預是“外科手術”,只涉及到DAO幣和代幣的狀態。據悉,DAO黑客事件發生在2016年,影響了ICO智能合約。通過這個有漏洞的合約,黑客可以要求智能合約多次返還已存的ETH。通過這種方式,黑客竊取了360萬枚ETH,這導致了ETC硬分叉。DAO的例子已經被談論很多年,并且是影響ETH信譽的原因之一。V神關于修復性質的新解釋引發了進一步的批評,其中一些評論認為回滾是更公平的解決方案。[2019/10/30]

我們現在進入下一個話題,這個話題對輕客戶端與分片之類的話題非常重要:驗證的時候我們到底是在做什么?要理解這一點,我們需要回到更早的時間點。對于一次攻擊,我有以下的偏好順序:默認造成失敗>默認導致混亂>默認取得成功這里的“大于號”意思是前者比后者更優。最優的情況是攻擊直接失敗,次優的情況是攻擊導致混亂,造成大家無法就合法鏈達成一致,而最壞的情況則是攻擊成功。為什么說造成混亂要大大優于攻擊成功?這可以歸結為激勵機制,混亂也會給攻擊者帶來成本,使他們無法確信攻擊能成功,因此能削減攻擊者發起攻擊的動力。天然導致混亂的環境對攻擊者來說,意味著他們需要贏得區塊鏈戰爭還要贏得“輿論戰”,說服整個社區跟進攻擊鏈。相較于僅僅發動51%攻擊就必然成功,上述情況將使攻擊變得異常困難,也沒那么有利可圖了。進行驗證的目標就是讓攻擊從天然取得成功的狀態變為天然失敗的狀態,或者變為天然導致混亂的狀態。如果你運行一個完全驗證所有區塊的節點,攻擊者試圖讓網絡接受一條規則不同的鏈,攻擊就會失敗。如果部分用戶運行驗證全節點而還有很多人沒有,攻擊則會導致混亂。但我們還要思考,有沒有別的方法可以達到相同的效果呢?輕客戶端與欺詐證明

聲音 | V神:DeFi協議想法很強大但還未經測試 不應大力鼓勵人們投錢進去:據CryptoPotato 9月15日消息,在特拉維夫舉行的Ethereal峰會上,V神談論DeFi協議時表示,其對DeFi協議感到非常興奮。在他看來,世界上任何地方的任何人都可以使用一個系統,讓他們互相支付。基本上讓人們自己選擇自己的財務風險敞口,這種想法非常強大。這是很多人無法接觸到的東西。不過,V神也警告說,不應該大力鼓勵人們把錢投入DeFi協議,主要原因是這些協議還沒有經過測試,而且也有可能失敗。[2019/9/15]

一個更好的辦法自然是使用帶有欺詐證明的輕客戶端。當前的大多數區塊鏈輕客戶端僅僅驗證是否大多數礦工都支持特定區塊,而不會驗證協議規則是否得到滿足。這些客戶端的正常運行假設了大部分礦工都是誠實的。一旦出現有爭議的分叉,這類客戶端會天然隨大流,用戶需要主動采取措施才能留在舊規則下的少數方鏈上。因此,對于當前的輕客戶端發起攻擊,攻擊者可以天然成功。但有了欺詐證明技術,情況就大不相同了。簡單來說,欺詐證明的工作原理如下。通常來說,區塊鏈中的單個區塊僅僅會涉及到區塊鏈“狀態”的一小部分。如果一個全節點處理完一個區塊發現其無效,就可以生成一個數據包,并廣播給輕客戶端。數據包內僅包括該區塊及足夠處理該區塊的數據,輕客戶端拿到數據包后則可以自行驗證該區塊,而無需鏈上的其他數據。

-單一區塊僅僅涉及幾個賬戶,欺詐證明能夠包含這些賬戶的數據,并連同其默克爾證明,來證明數據的正確性-這項技術有時也稱為無狀態驗證,客戶端可以只記錄區塊頭,而無需記錄完整的區塊鏈狀態數據,而且可以通過向其他節點請求任意狀態條目的默克爾證明來實時驗證正在處理的區塊。該技術的強大之處在于,輕客戶端只有在收到警報后才會去驗證單個區塊,因此在正常情況下,輕客戶端依然輕量,只檢查哪些區塊獲得了大多數礦工或驗證者的支持。但在特殊情況下,若多數人所在的鏈包含了一個該輕客戶端不接受的區塊,只要有至少一個誠實的全節點驗證到了這個有問題的區塊,就可以知道其無效,并廣播欺詐證明,從而使網絡中的其他節點也拒絕它。分片

V神:區塊鏈跨鏈技術大規模應用將在一到兩年內爆發:以太坊創始人Vitalik Buterin近日接受采訪表示,跨鏈加密貨幣交易這一技術也能應用到其他領域。目前最大的挑戰仍然是寥寥無幾的區塊鏈實際應用和使用人群,現在除了個別領域外,還沒到開始實施跨鏈應用的時機。但我覺得在一兩年內,肯定可以看到這方面應用的大規模增長。[2018/3/15]

分片是在此基礎上的一個自然的拓展,在分片系統中,系統中的交易太多,多數用戶無法一直直接驗證,但如果系統設計良好,那么任何無效區塊都能被檢驗出來,而且其無效性可以由欺詐證明來驗證,該證明就可以在全網廣播。分片網絡可以看作每個用戶都是一個輕客戶端,只要每個分片的參與者都在某個門檻之上,網絡就能獲得群體免疫。另外,還有一點非常重要:在分片系統中,區塊的生成門檻是很低的,甚至可以在家用筆記本上完成。網絡的核心并不依靠高性能硬件,確保了反對派作為少數一方的門檻足夠低,這就使得以多數人主導的協議更難以被攻擊者變為“天然攻擊成功”的狀態。這也是現實世界中審計的意義:并不是每個人都隨時在驗證所有內容的,而是第一,每個特定部分都有足夠的人在檢查,任何錯誤都一定能被發現,第二,一旦檢查出錯誤,所有人都可以清楚看到錯誤所在。話說回來,從長期來看區塊鏈肯定能在這方面更進一步。進步的一個來源是ZK-SNARKs,是一種高效且可驗證的密碼學證明,使區塊生產者能夠向客戶端證明區塊滿足某些任意復雜的有效性條件。有效性證明比欺詐證明更強大,因為它不依賴于交互博弈才能捕獲欺騙行為。另一種重要技術是“數據可用性檢查”,可以偵測出沒有完全公開內容的區塊。數據可用性證明確實依賴一些安全假設,但這個假設非常保守:網絡中還存在少量可用的節點是誠實的;好消息是,這個誠實驗證者的最低數量要求很低,而且即使攻擊者數量非常大也不怎么需要提高要求。時機與51%攻擊

現在,我們來看看“天然造成混亂”的模式中最強大的后果:51%攻擊開始攻擊自己。在當前許多社區中,如果發生51%攻擊且攻擊者取勝,那么51%攻擊鏈就會成為合法鏈。這個規范被大家嚴格遵守。近期對以太坊經典的51%攻擊就說明了這一點。攻擊者回退了3000多個區塊,在這個過程中用雙花攻擊竊取了807,260ETC。由于以太坊經典的兩個客戶端之一技術上無法退回攻擊鏈的歷史高度,導致Geth節點能夠在攻擊鏈上運行,而OpenEthereum則只能被困在原本的鏈上。我們可以說這次攻擊的確導致了混亂,但這是偶然事件而不是以太坊經典社區有意設計如此。可惜的是社區隨后選擇接受了攻擊鏈為合法鏈。以太坊經典推特賬戶稱其為“像我們的初衷一樣嚴格遵循工作量證明”。因此,該社區規范竟積極幫助攻擊者獲勝。但其實我們可以就合法鏈的定義達成另外一種共識,比如說建立一個規則,某個區塊具有超過100個后代區塊之后,其合法性就不能顛覆。或者是,一個具有終局性的權益證明,規則是,一旦一個區塊獲得終局性,就永遠不會被回退掉。

-僅為圖解方便,限制最多回退5個區塊示意圖。實際操作中可以將回退限制在100-1000個區塊范圍內-我們要明確,這對鏈的合法性的定義引入了重大變更:客戶端不僅僅要查看它們收到的數據,還需要檢查何時收到的數據。這也會引入一個新情況,由于網絡延遲,在一次大規模攻擊時,兩個沖突塊A和B同時獲得終局性,一些客戶端先看到A,另一些先看到B,那他們就無法達成一致。但我認為這未嘗不是好事,因為這意味著攻擊沒有天然獲得成功,甚至僅僅回退區塊的51%攻擊都會天然導致混亂,社區層面的緊急響應就能在兩條鏈之間選擇繼續哪一條。如果協議設計合理,要使事件達到需要社區層面的緊急響應應該是非常昂貴的,在權益證明中,這意味著1/3的驗證者要犧牲他們的保證金且被懲罰。這種方法還有發展的潛能。我們可以嘗試制造51%攻擊來專門審查會導致混亂的交易。對于及時性驗證器的研究也在讓所有類型的攻擊朝著天然失敗的方向發展。盡管如此,仍會有一些混亂發生,因為及時性驗證器無法幫到那些離線或者網絡連接不好的節點。對于重視不可篡改性的區塊鏈社區而言,可以說這種限制回退的措施是不錯的選擇,如果無論網絡在多久之前接受了某一個交易,但它仍有可能在意外中被回退,那么區塊鏈就無法自詡享有不可篡改性了。當然,我相信即使是BTC和ETC也已經限制了極端情況下的回退,如果某個攻擊試圖回退數周的區塊歷史,社區也可以發起一個需要用戶主動參與的軟分叉來拒絕攻擊者的鏈。但更明確地達成一致并正規化這一措施才能更進一步。結論

那么這個故事教會了我們什么?首先,如果我們接受社會協作的合法性,并且接受以“1-of-N”信任模型為假設的間接驗證的合法性,也就是說,假設網絡中總有某一個誠實參與者,而不是假設某一個參與者總是誠實的,那么我們就可以創建出可擴展性更強的區塊鏈。其次,客戶端驗證是上述提及的內容至關重要的一步。一個只有少數人運行節點而其他人都依賴對于驗證節點的信任的網絡,在涉及特殊利益時是非常容易被攻擊的。但要避免這樣的命運也不意味著矯枉過正,讓所有人隨時都要驗證一切。讓單個區塊可以被隔離驗證,用戶因而只需要驗證受到警報的區塊,這樣的系統也是合理且可以達到相同效果的。但這就需要我們用前文提到的“協作的視角”來看待驗證的作用。第三,如果我們將“時機”也納入合法鏈的定義范圍,那么我們抵御51%攻擊的技能樹將會打開。最好接受的屬性是弱主觀性,也就是要求客戶端至少每三個月在線一次,且拒絕任何比三個月時間更長的回退,我們就能在權益證明里加上懲罰機制,使攻擊成本變得高昂。我們還可以更進一步,我們可以拒絕回退所有獲得終局性的區塊,由此保護不可篡改性,也可以防止被審查。因為網絡不可預測,依賴“時機”在一些情況下的確意味著攻擊會天然導致混亂,但帶來的好處也是顯而易見的。記住以上這幾點,我們就可以避免以下陷阱:1.過度中心化;2.驗證過度冗余而導致網絡效率低下;3.誤導性規則意外導致攻擊變得更容易;并朝向更具韌性、更強性能和更安全的區塊鏈。

Tags:區塊鏈DAO比特幣ETH以下哪項不是區塊鏈目前的分類BaksDAO比特幣官方網CRETH2

瑞波幣
挖胡蘿卜有感:不提現的話,就沒人會虧錢?_POO

因為Sushi的車上的不夠及時,昨天在朋友的推薦下找到了新的車,晚上開始挖波場上的胡蘿卜。我一看這玩意真心不錯,可以拿USDT挖,除了智能合約突然出問題、驚曝漏洞之外,著實沒啥毛病,也沒有無常風.

1900/1/1 0:00:00
李畫對話熊越:自由主義是比特幣與奧地利學派的共通之處_哈耶克

編者按:本文來自機械鐘,撰文:李畫,星球日報經授權發布。如果我們仔細探究各種個人行動的意義,就一定能從中獲得整個集體行動的知識.

1900/1/1 0:00:00
建行推出數字貨幣錢包,數字法幣DCEP時代正式到來_數字貨幣

編者按:本文來自區塊律動BlockBeats,Odaily星球日報經授權轉載。央行數字貨幣的進展無疑是2020年的最重磅消息,從農業銀行的DCEP錢包內測,到美團等互聯網巨頭宣布合作,再到蘇州、.

1900/1/1 0:00:00
Sushiswap創始人拋售項目代幣,表示將繼續參與社區工作,你信嗎?_USHI

剛剛,Sushiswap終于露出吸血鬼猙獰面孔。Defi治理審計刻不容緩。2020.9.5,8amPSTVictorFang,AnChain.AI舊金山時間2020.9.5上午5點,近期火爆的D.

1900/1/1 0:00:00
谷燕西:簡析新加坡證券交易所的數字債券項目_區塊鏈

九月一日,新加坡證券交易所在其官網上公布了剛剛完成的一個數字債券項目。這個項目是同淡馬錫和匯豐銀行共同合作完成的。本文是對這個項目的幾點分析。第一,這個項目依然是個測試項目.

1900/1/1 0:00:00
谷燕西:Libra應用場景和范圍與USDT有本質不同,兩者不會形成正面競爭_穩定幣

最近彭博社的一篇關于USDT的一篇文章再次引起市場對USDT的關注。我們看到USDT在全球范圍內的流通使用已經不再限于加密數字貨幣的交易場景,而且開始被應用到更多的領域.

1900/1/1 0:00:00
ads