編者按:本文來自巴比特,譯者灑脫喜,作者VitalikButerin,Odaily星球日報經授權轉載。
北京時間2月20日-22日,由Findora主辦的2020斯坦福區塊鏈大會在斯坦福大學舉行,本次會議重點關注了區塊鏈系統中的安全工程和風險管理方法,探討通過加密技術的應用、去中心化協議、形式化方法和實證分析等,來提高區塊鏈系統的安全性。在第二天的會議上,以太坊聯合創始人VitalikButerin發表了題為《越過51%攻擊》的演講,在會議中,他首先提到了51%攻擊的不同類型,例如最常見的回滾交易攻擊,此外還有審查攻擊、輕客戶端攻擊、勸阻攻擊,以及最嚴重的覆巢式攻擊,他認為工作量證明加密貨幣很容易受到這些攻擊的影響,而權益證明加密貨幣,可以通過99%容錯共識、及時性檢測器等技術來檢測攻擊鏈以及審查攻擊,從而消除51%攻擊帶來的威脅。
(圖:Vitalik在2020斯坦福區塊鏈大會演講)以下是Vitalik的演講內容:51%攻擊能做什么?51%攻擊有不同的種類,它們可以對不同的應用執行不同的操作,并產生不同的結果和后果。你可能熟悉的一種51%攻擊是回滾區塊。你進行了一筆交易,把錢發送到了一家交易所,然后用這些幣換取了另一個幣,你提走這些換得的幣,然后進行一次51%攻擊,恢復你的存款交易……這就是過去10年來,我們一直在討論的主要的51%攻擊類型,也是我們考慮最多的一類。一、其他類型的51%攻擊1、1交易審查攻擊實際上,交易審查也是另一種51%攻擊!鑒于layer2協議和DeFi都是最近的大趨勢,交易審查變得尤其危險。在很多layer2協議的環境中,審查就意味著盜竊!因此,如果你能夠審查挑戰交易,那么你就可以從人們那里偷到錢。這不適用于zkRollup,但這種攻擊確實適用于人們現在正在考慮的絕大多數協議。在DeFi的背景下,審查尤其危險,因為它是一種工具,你可以通過它操縱市場,然后獲取價值。如果你能審查每一筆接觸Uniswap的以太坊區塊鏈交易,然后等待一天,那么以太幣的價格可能會有點波動,我就能從這次攻擊中提取出大量的套利價值。可以說,審查是危險的,在DeFi協議和layer2協議中,交易審查也可以被視為與盜竊相等。1、2輕客戶端攻擊很多人都在運行輕客戶端,如果你運行的是輕客戶端,那么51%攻擊可能會導致這些輕客戶端接受包含完全無效交易區塊的鏈。錯誤的簽名、格式錯誤的交易、未經授權的簽名,他們可以得到網絡接受的可用區塊。1、3數據不可用攻擊這里誰熟悉數據可用性問題?好吧,雖然不是所有人,但有很多人了解了它。這里的想法是,你可以在發布區塊頭的地方創建一條鏈。輕客戶端可以看到這條鏈,但不能在區塊體中發布部分或全部數據。這是糟糕的,原因是,如果數據沒有發布,那么它可能是正確的,也可能不是,而且又沒有辦法生成證據向其他人證明它可能是正確的,并且你拒絕了人們可能要創建未來交易的信息。也就是說,不可用的區塊也是很危險的。1、4勸阻攻擊勸阻攻擊是一個術語,它指惡意破壞其他參與者,導致其他參與者失去收入,并驅使他們與你合謀,或者被迫退出。1/3以上算力的自私挖礦就是這樣的一個例子。也就是說,51%攻擊也是非常強大的勸阻攻擊。1、5關于區塊鏈的不可篡改性所以說,51%攻擊是非常強大的,這類攻擊對于區塊鏈的不可篡改性而言是個威脅。誰還記得這個?一家交易所被盜走了一堆錢,他們考慮推動比特幣區塊鏈為期一天的逆轉,以便拿回這些錢。如果這樣的事情是可能的,那么區塊鏈內部的東西就可能被還原,區塊鏈就失去了其成為區塊鏈的關鍵屬性,這是可怕的。另外,51%攻擊不是民主的,它們是富豪統治的,所以作為一種民主方法,對他們而言是沒有什么好處的。二、現實中發生過的51%攻擊,以及最糟糕的51%攻擊場景
聲音 | V神:未來任何時候“消除” ETC在各個方面都是極具破壞性的舉動:以太坊創始人V神在推特上回復網友有關“對ETC有什么看法”的提問時表示,ETC人士似乎認為PoS和分片是凈損耗。因此,我看不到以太坊2.0如何為支持者服務,因此在未來的任何時候“消除” ETC似乎在各個方面都是極具破壞性的舉動。[2019/10/11]
在現實當中,51%攻擊是可以完成的,這是一張來自2015年香港比特幣擴容大會的照片。在這張照片當中,掌控比特幣90%算力的一些人坐在了一起,擺出了一副“我擁有權力”的姿態,哈哈。51%攻擊是可以完成的,例如ETC、BitcoinGold等都遭遇過51%攻擊,我肯定我漏說了1-2個,這些攻擊都是已經發生的。覆巢式攻擊實際是,我們目前所看到的51%攻擊,并不是最糟糕的。對于這類攻擊來說,覆巢式攻擊是最糟糕的噩夢場景。基本上,你需要獲得足夠的硬件來攻擊一條鏈,等它恢復之后,然后再次進行攻擊,因為你仍然持有這些硬件。最后,社區會受夠了這種折磨,他們會更換工作量證明算法,由于在短時間內他們沒有辦法構建ASIC,所以你只需要租用大量的CPU和GPU算力繼續攻擊,然后,這條鏈就死了,除非他們切換到權益證明算法能打破這個循環嗎?
這是我在2016年寫的一篇博文,我試圖描述什么是權益證明是不同的,在工作量證明中,你只有獎勵,因此你對參與攻擊或者不參與攻擊的懲罰,只有區塊獎勵這部分。而在權益證明和第二層的欺詐證明可以解決這個問題。如果你不能審查別人的區塊,那么你就不能阻止它們被納入區塊鏈。因此,只要激勵措施的懲罰是有效控制的,那么惡意破壞(Griefing)也不會是什么大問題。我們可以歸結為兩件事:數據可用性攻擊和審查攻擊。數據無效和數據不可用這是我在2017年和musalbas等人共同撰寫的一篇論文,我在其中描述了一種基本上允許區塊鏈客戶端不實際下載所有數據的情況下,驗證區塊鏈數據可用性的方案。這個方案的簡單稻草人版本是這樣的:檢查一個區塊是否可用最愚蠢的方法就是下載完整的東西。但在這里,我們假設一個可擴展的、可能是分片的區塊鏈,其中有超過2MB/秒的數據會被上傳到鏈上,而客戶端將無法下載所有的內容。對于一個想要檢查數據可用性的客戶端,我們要做的就是隨機抽樣測試。它會隨機選擇一些數據片段,比如30個片段、40個片段、80個片段……它會隨機選擇位置,要求提供這些位置的merkle證明,只要你收到你接受的所有位置的有效回復,那你就會接受該區塊,將其視為有效的。如果你接受使用此方案的區塊,那么你很可能知道該區塊是有效的。如果只有不到50%的數據可用,比如這里左邊的所有數據都可用,這里右邊的所有數據都可用,那么至少有一個檢查將很有可能是失敗的。通過這種方案,攻擊者就能夠欺騙少數特定的客戶端。但是,如果攻擊者欺騙了足夠多的客戶端,以至于它們下載的子葉數據占到了總數據的一半,那么這些客戶端就可以繼續從那里重建數據。這并不能證明區塊是完全可用的,它可能缺少了一部分,但它確實證明至少有一半的區塊是可用的。如果我們有一些技術可以從50%的數據中恢復整個數據塊,那就太好了。擦除編碼這就是擦除編碼的用武之地,所以我們要取數據,假設它是一個多項式求值,我們將在更多的點上求值相同的多項式,現在,任何50%的數據都足以恢復所有數據。有了這個方案之后,你就可以驗證區塊是有用的,并且區塊是潛在非常大的尺寸下是可用的,同時個人要下載20-200KB的數據。這是第一部分。這包括數據可用性攻擊,它是以太坊2.0分片解決方案的一部分,這至少允許我們賦予分片區塊鏈同樣的可用性保證。證明正確性那如何證明一個根是此擦除編碼的根呢?你如何證明自己沒有把垃圾數據卡在里面?你可以使用欺詐證明,例如這個2D的,如果你編碼錯誤,然后有人可以做一個簡短的欺詐證明,你可以將它廣播到網絡,然后網絡就可以拒絕該區塊。這個2D方案是在2017年開始研究的。最近則有一些關于編碼merkle樹的東西,你在merkle樹中編碼每一個level,這有很好的特性。也有一些方法不依賴于欺詐證明,比如使用STARK或SNARK來證明merkle根的計算是正確的,而另一種可能則涉及多項式承諾——你會得到你的數據,你會把它解釋為多項式的求值,你會計算出多項式,然后你在一大堆點上做一大堆多項式承諾的opening,你的數據可用性檢查將是要求80個位置而不是80個opening,或者如果你使用聰明的代數得到某種多開口,你就可以獲得更高的效率。這些方案的好處是,它們不依賴于欺詐證明,因此用于驗證區塊數據的方案已被發表了,它們不再有任何額外的內置延遲假設。分片:越過委員會目前存在的分片區塊鏈,通常會依賴于委員會,其想法是,你有一大堆節點,你隨機抽取一些節點,你需要其中的大多數或絕大多數節點在某個區塊上簽名,以便網絡接受該區塊是有效的。問題是,任何一種基于委員會的方案,都將受到超過某個閾值不良行為者的審查。如果我們要談論抵抗51%攻擊,那么我們就要談論一個系統,在這個系統中,即使大多數人開始攻擊,那么少數人應該能夠繼續操作系統本身。固定閾值的分片方案,并不能真正幫助到你。所以這里的解決方案是,協議需要更充分地依賴一組數據可用性檢查方案,而不是依賴于委員會。關于審查在場的各位,有哪些人想阻止審查呢?可以,有很多人,所以,現狀不是很好。這是nrryuya的一篇文章,他在形式化驗證以太坊方面做了一些工作,他寫了一篇文章說,在目前的以太坊2.0設計中,有一些策略可以讓大多數人審查區塊,這種審查與單區塊延遲是不可區分的,很難去確定誰該負責。這里的攻擊是相當卑鄙的,攻擊者攻擊一些驗證者,并使它們為另一個區塊投票,使用其他驗證者為自己的區塊投票,該區塊實際上包含了要審查的內容...但他們自己的選票不足以超過51%,所以他們試圖審查的內容,實際上永遠不會被包含在內。這是多層次的間接作用。在以太坊1.0和以太坊2.0中,一個進行51%攻擊的惡意方可以進行審查,而當審查力度足夠大時,就很難確定是否需要對此采取措施。納入叔塊這是我們目前能做的最基本的事情:納入叔塊。這里的想法是,在以太坊1.0中,不屬于區塊鏈的區塊可以稍后被包含進來,而新的方案則是,我們添加了協議規則,該規則表示叔塊中的交易也會被處理。所以,你就有了這樣一條區塊鏈,其中,叔塊也被納入在里面。想法:及時性檢測器想象一下,如果我們至少可以有在線的客戶端,那么在網絡上的客戶端可以下載東西,并定期與其它客戶端通信。讓它們檢查是否看到一個區塊準時到達。如果它們看到某個區塊是按時到達的,并且它們看到該區塊在很長一段時間內沒有被某條鏈接受,那么該區塊將自動被取消資格。如果一個區塊沒有準時到達,那么你可以用它來進行51%回滾攻擊。它的思路是,客戶端在本地檢測到某個區塊是否在它應該到達的時候到達,并將其用作確定要遵循鏈的信息。不是每個節點都能遵循協議的,因為離線節點也會存在。除非51%攻擊正在進行中,否則如果沒有攻擊發生,那么獲勝的區塊鏈將是一條好的鏈,如果攻擊正在發生,而你又處于離線狀態,那么你幾乎必須檢查社交層,看看發生了什么,但只有少數參與者會這樣做,其他人會有一個相當明確的共識。問題:邊緣攻擊如果你生成一個區塊,無論該區塊的定義是什么,它都能準時到達,一些節點將看到它在不同的時間到達。因此,節點可能不同意一個區塊“是否被審查太久”,以及一個區塊“是否按時發布”,它們可能不同意這些時間參數。而攻擊者可以利用這一點,導致其他人在攻擊是否發生的問題上,產生長期的分歧,并帶來很多治理問題。所以,這就要求我們有更好的及時性檢測器改進版及時性檢測器我們回到拜占庭將軍問題,回到1982年由萊斯利·蘭伯特(LeslieLamport)撰寫的論文。事實證明,這篇論文包含了一個算法,而人們并沒有真正去談論這個算法,但他們可能應該多談一些。它把這句話用不可偽造的書面信息抽象地隱藏起來。蘭伯特聲稱,他有一個共識算法,可以容忍高達99%的錯誤攻擊者。這個算法是有效的,它的優點是,只要你有同步性假設,它就可以工作,不僅是在做共識的礦工和驗證者之間,而且是在礦工和客戶端之間,以及客戶端和其它客戶端之間。它對誰應該在線有一個更強的假設,其使用這個假設來獲得更高程度的容錯,但它是一個非常危險的假設,我們不愿意自己去做。我將描述單個證明者的版本。在這里,假設一個證明者是誠實的,然后一共有n個證明者,我們就只需要1/n的證明者是誠實的。這里的想法是,假設一個區塊被發布,然后客戶端和證明者有一個期限,他們需要在這個期限之前接收該區塊,以便認為該區塊是準時的。對于客戶端來說,最后期限是t,對于證明者來說,最后期限則是t+δ。所以這里的提議者將發布一個區塊b,我們假設提議者有點邪惡,其試圖進行邊緣攻擊,節點1在截止日期之前看到它,節點2也在截止日期之前看到它。證明者發送了該區塊,但是由于網絡同步性假設,如果有一個節點接受了該區塊,那么這意味著證明者保證在他們的截止日期之前接受該區塊,因為區塊可以被發送給證明者。如果哪怕一個客戶端認為某個區塊是及時的,那么證明者也會保證在他們的截止日期之前看到它,因此證明者會添加他們自己的簽名,并且由于網絡同步性,另一個客戶端將在一個簽名區塊的截止日期之前,看到該區塊加上一個簽名。將其擴展到多個證明者的方法是簡單的,你有很多證明者,客戶端將是t+δ*k。我在eth.research上有一篇文章是專門講這方面的研究的,所以如果你想了解更多的細節,請隨時查看。講講大概的想法,你有一組攻擊者,每個攻擊者都可以將截止日期延遲一點,因此如果一個攻擊者接收到一個區塊,那么只要網絡延遲低于你的δ參數,它就會將一個區塊的及時性傳播到網絡的其余部分。有趣的事實如果你有這種及時性檢測器,你會按照自聲明的時間順序處理所有及時區塊,就是這樣。唯一的問題是,它需要很長的區塊時間,如果你想處理驗證者的存款、取款和罰沒,那這可能是一個有趣的協議,但它不是運行區塊鏈的最佳協議。更好的說法是,你可以使用及時性檢測器檢測攻擊鏈以及審查攻擊。四、總結
動態 | V神發起DAI貸款年利率超國債的投票 半數用戶認為DAI隨時可能面臨崩盤:以太坊創始人V 神今日在推特發起關于“DAI 的貸款年利率與美國 10 年國債收益率差距”的投票,V 神指出,DAI 貸款可以提供 11.5% 的年利率。而美國 10 年期國債收益率僅為 1.5%。為什么會出現這種差距呢?,同時給出了四個選項,1. 臨時現象,受市場影響;2. DAI 有隨時崩盤的風險;3. Compound 倒閉的風險;4. 其他,請回復在評論中。截至目前,結果顯示超半數用戶認為DAI隨時可能崩盤的風險導致了它的高年利率。V神在評論中表示,這就是為什么我認為“貸款”是整個defi的錯誤隱喻的部分原因。大多數在發展中國家發放的貸款并不是由其他高流動性加密資產(或一般的高流動性或數字資產)擔保的150%。[2019/8/24]
反審查技術不如其他技術完美,因為它確實依賴于網絡和客戶端之間的同步假設,你可以將此持續時間設置為你想要的任何時間,但它與你愿意容忍的審查級別有關。你可以保證在線節點集之間的一致性,在發生攻擊的情況下,你可以就“一條鏈是否是攻擊鏈”,以及其他所有事情達成共識。你可以將此作為部分社會共識的開始,以確定恢復的方式,這有助于你為攻擊者分配更強程度的懲罰,因為你可以更可靠地確定攻擊者是誰。一般來說,如果攻擊者發布了一條不可用的鏈,那么數據可用性檢查將捕獲它,如果其發布了無效區塊,那么欺詐證明可以捕獲它,如果你對區塊進行長時間的審查,那么這條鏈將自動被網絡忽略。如果你審查了一個中等時間的區塊,那么你可以使用及時性檢測器來干凈地處理它,如果攻擊者試圖不參與或破壞委員會,則相應就不使用委員會。好了,我們有了一系列的工具,它們基本上可以大大降低我們對51%攻擊的恐懼感,或者能夠忽略它們,或者從中恢復過來。謝謝大家。
動態 | V神提議轉PoS后使用更高的Staking獎勵,目前得到了社區正面的回應:據Unitimes報道,Vitalik Buterin提議以太坊在部署PoS后使用更高的Staking獎勵指標,V神的提議列出了基于Staking的ETH 數量的不同,預計相應的回報率 (收益率) 的最大值也不同。該提案發布后Github和Reddit上收到的回應大多是正面的。此前,以太坊社區成員考慮到通過BlockFi等平臺放貸款的機會成本(目前ETH存款年利率為6.2%),以及維護驗證者節點所需的硬件成本,曾對以太坊最初的PoS獎勵結構的吸引力表示擔憂。[2019/4/25]
聲音 | V神:區塊鏈非金融應用比金融應用更具優勢:今日V神發布了15條簡短推特,發表自己關于區塊鏈的非金融應用的觀點。V神的主要觀點包括:一種未被充分認識的看待區塊鏈的方法是,區塊鏈是加密的擴展,它做了不同的事情,并舉例區塊鏈大學學位驗證應用程序;公共區塊鏈比中心化服務器和聯盟鏈更具有真正的競爭優勢;未來的區塊鏈以及權益證明和分片將提高數千倍的效率,因此效率犧牲將變得越來越可接受;區塊鏈給出的另一個有趣的事情是永久性的價值;區塊鏈的非金融應用比金融應用更具優勢。這是因為如果他們被中斷,會存在較少的利害關系,因此對于快速部署可能會產生的擔憂更少。 因此,非金融應用可能是第一批被廣泛部署的應用,尤其是在機構環境中。[2018/12/11]
聲音 | V神質疑Zcash ZK-SNARK技術:Zcash正式實施硬分叉升級后,以太坊創始人V神表對其ZK-SNARK 技術提出了一項問題:“如果有人破解了ZK-SNARK方案,并發行一些新的代幣怎么解決?”他認為“1、如果有N枚代幣進入Zcash的地址池內,將會有N枚流出,每個人交易的代幣比例都是1:1,除了最后一個;2、如果有 N枚代幣進入,但其中有C枚假幣,流出的代幣量依然是N枚,那么每個人提出的代幣量實際上是N/(N+C)枚;3、這樣一來就有C枚假幣被發行了,這將有可能導致擠兌風險。在這種攻擊嚴重的情況下,Zcash將有可能不得不放棄2100萬枚代幣總量的限制。”[2018/6/27]
Tags:區塊鏈以太坊INGDAI區塊鏈是什么概念以太坊幣今日價格行情Wrestling ShibaFLOKIBASEDAI
編者按:本文來自小蔥區塊鏈,Odaily星球日報經授權轉載。比特幣價格本月一直在測試10,000美元大關,諸如推文數量和提及比特幣的Google搜索等在線指標顯示了兩年來的新高.
1900/1/1 0:00:00什么是DAO DAO,即DecentralizedAutonomousOrganization,中文為去中心化自治組織.
1900/1/1 0:00:00傳統資產下的財富分配很難追蹤,因為人們常常隱藏自己的財富、混淆所持有資產的真實數量。而加密資產的出現,使財富分配向著更加透明化的方向邁出了一大步.
1900/1/1 0:00:00在馬甲橫行的網絡時代,沒有多少人會相信SatoshiNakamoto是比特幣創始人的真實姓名。先不說密碼學極客圈本就是極度注重個人隱私和安全的群體,單單是e-Gold這些早期數字貨幣創始人被指控.
1900/1/1 0:00:00\n 哈嘍大家好,我是小K君.
1900/1/1 0:00:00交易所不愧是永恒的“話題王”。2018年的交易及挖礦;2019年上半年的“打新”熱潮,扭轉市場頹勢;2020年開局,在減半行情與大刀闊斧的改革之下,交易所平臺幣板塊再次啟動上漲行情.
1900/1/1 0:00:00