本文來自:Defi之道,作者:以太坊創始人VitalikButerin,星球日報經授權轉發。
區塊鏈的可擴展性究竟能達到什么程度?真能如ElonMusk所愿“通過將區塊時間縮短10倍,將區塊大小增加10倍從而將手續費降低100倍”,而又不會導致極端中心化并損害區塊鏈本質的基本屬性嗎?如果不能,那區塊鏈的可擴展性究竟能達到什么程度?如果選擇通過更改共識算法來進行擴展,又會怎么樣?更重要的是,如果您更改技術以引入諸如ZK-SNARK或分片之類的功能,會怎么樣?從理論上講,分片的區塊鏈可以持續添加更多的分片,這會不會導致添加的東西更多?
事實證明,有一些重要且相當微妙的技術因素限制了區塊鏈的擴展性,即便是采用分片的區塊鏈也面臨這些問題。在許多情況下,我們都會有相應的擴展性解決方案,但是這些解決方案也存在局限性。這篇文章將探討這些可擴展性方案中存在的許多問題。
只需增加參數即可解決所有問題。但代價是什么?
1?普通用戶也能運行節點,這對于區塊鏈去中心化至關重要
凌晨2:35,您收到來自世界另一端的伙伴的緊急電話,他在幫助您管理礦池。您的伙伴告訴您,從大約14分鐘前開始,您的池子和其他幾個池子突然從鏈上分裂出來,原始鏈仍舊承載著79%的網絡算力。根據您的節點,這個多數鏈生產的區塊是無效的。這出現了余額錯誤:密鑰區塊似乎錯誤地將450萬枚額外代幣分配給了一個未知地址。
一個小時后,您開始與其他兩個像您一樣迷茫的礦池以及一些區塊瀏覽器和交易所在電報群中溝通。最后你看到某人發出了一個推特鏈接。該推文寫道:“新的鏈上可持續協議發展基金正式發布”。
到了早上,推特上、社區論壇上開始充滿沒有審查過的論點,各種討論無處不在。但是這時候,此前新增發的450萬枚代幣中的很大一部分已經在鏈上被轉換為其他資產,進而已經進行了數十億美元的DeFi交易。79%的共識節點以及所有重要瀏覽器和輕錢包都正在遵循這一新鏈條。也許這個新的開發者基金將為某些開發提供資金,或者也許所有這些資金都會被領先的礦池,交易所等吞掉。但是,不管結果如何,該基金在所有意圖和目的上都是既成事實,而普通用戶則無力反擊。
V神發推敦促俄羅斯總統普京不要入侵烏克蘭:金色財經報道,以太坊創始人Vitalik Buterin 用他的母語在推特上敦促俄羅斯總統普京不要入侵該國的鄰國烏克蘭。V神稱,入侵將會損害國家和整個人類,避免戰爭的選擇完全在于普京和克里姆林宮。在他的推文中,V神標記了克里姆林宮的推特賬戶@KremlinRussia。目前該帳戶尚未對該條推特進行回復。[2022/2/12 9:46:31]
好戲即將上映。也許可以由MolochDAO或其他機構資助。
這種事情能發生在您的區塊鏈上嗎?您的區塊鏈社區的精英,包括礦池,區塊瀏覽器和托管節點,可能協調得很好。他們很可能都在同一個電報群和微信群中。如果他們真的想對協議規則進行突然更改以促進自己的利益,那么他們可能會這樣做。以太坊區塊鏈曾在十小時內完全解決了一個共識失敗;如果您的區塊鏈只有一個客戶端實現,并且您只需要將代碼更改部署到幾十個節點,那么協調更改客戶端代碼的速度就可以更快。使這種協調的社會攻擊無效的唯一可靠方法是通過去中心化社區的積極防御,也就是用戶。
想象一下,如果用戶正在運行驗證區塊鏈的節點,并自動拒絕破壞協議規則的區塊,即使超過90%的礦工或質押者支持該協議,結局會怎么樣。如果每個用戶都運行一個驗證節點,那么這種攻擊將很快失敗:一些礦池和交易所將分叉,但這看起來很愚蠢。但是,即使只是某些用戶運行了驗證節點,該攻擊也不會為攻擊者帶來勝利。相反,這將導致混亂,因為不同的用戶會看到不同的鏈。至少,隨之而來的市場恐慌和可能持續的鏈分裂將大大降低攻擊者能夠獲得的利潤。要解決沖突所需要的大量時間成本本身就會讓攻擊者放棄攻擊想法。
讓我們搞清楚一點:你對惡意協議更改的抵抗來自于一種由用戶驗證區塊鏈的文化。而不是PoW或PoS——Hasu
這一點可以看Hasu怎么說的
如果您的社區由37個節點運行者和80000個被動聽眾組成,他們負責用于檢查簽名和區塊頭,那么攻擊者將獲勝。如果您的社區的每個人都在運行節點,那么攻擊者將會失敗。我們不知道針對協同攻擊的“牛群免疫”的確切閾值是多少,但是有一件事情是絕對清楚的:節點越多越好,節點越少越糟糕,我們肯定需要不止幾十個或幾百個。
V神:正力求盡早將ETH 2.0真正投入使用:11月18日,V神在以太坊基金會AMA活動中表示,過去幾月以太坊2.0路線圖中發生了三個最重要的變化。1.以rollup為中心的路線圖,將“階段1”簡化為僅用于分片數據(以便使用rolllups)的內容,使其更容易實現。2.簡化合并。基于此,eth1事務將直接在信標鏈上執行,而不是在分片中;由于optimistic執行,合并期間的執行暫停可能會大大縮短。這使得合并的實現更加容易。3.并行階段。輕客戶端支持、數據分片(又名“階段1”)和合并都被設定為彼此獨立,所以無論其他部分處于什么階段,每個部分都可以在“準備好”時被實現。
V神稱,所有這些工作都是為了縮短將ETH 2.0真正投入使用的時間。輕量級客戶端支持很可能在分片之前就已經實現,這將使得信標鏈變得非常有用,甚至可以作為在eth1鏈上達成一致意見的工具。簡化合并意味著合并發生得更快。階段并行則進一步打開了實現合并的大門,甚至有可能在實行切分之前發生。按照以rollup為中心的路線圖,“第2階段”(本機分片執行)暫時不受重視。這是因為第二階段的最終目標,即實現高TPS可通過實現更好的數據分片(階段1)和rollups來更早實現,所以選擇集中精力讓其發生。總而言之,沒有做任何不可逆轉的動作阻止2.0未來添加分片執行,總路線圖將與任何時候添加的路線圖實現完全兼容。此前消息,以太坊研發者稱,以太坊2.0或將暫且擱置階段二,隨后V神表示,合并(和取款)可能會分片之前發生,分片和合并是并行研發的。[2020/11/19 21:21:49]
2?那么,我們需要全節點完成多少工作?
為了最大化可以運行節點的用戶數量,我們將重點關注常規的消費級硬件。可以通過要求一些容易購買的專用硬件來增加一些網絡容量,但是實際上這并沒有給擴展性帶來太多增加。
全節點處理大量交易的能力存在三個關鍵限制:
計算能力:在安全運行一個節點的情況下,需要占用多少百分比的CPU能力?
帶寬:考慮到當前互聯網連接的現實情況,一個區塊可以包含多少個字節?
動態 | V神沒有參與以太坊伊斯坦布爾硬分叉項目的EIP審批:據Cryptoglobe消息,以太坊開發人員日前已就伊斯坦布爾升級中的6個改進協議達成共識,共接納了6個EIP(以太坊改進建議):EIP-1108,EIP-1344,EIP-1884,EIP-2028,EIP-152,EIP-2200。據悉,V神并沒有參與以太坊伊斯坦布爾硬分叉項目的EIP審批。V神近日發推評論該項目是在“大獨裁者”零參與的情況下進行的。注:V神經常被以太坊的批評者指責為負責以太坊的開發,并使該項目不夠去中心化。[2019/8/25]
存儲:我們可以要求用戶存儲多少GB磁盤?另外,讀取速度要求多快?
許多對使用“簡單”技術可將區塊鏈擴展到多遠的錯誤觀點,是由于對這些數字中的每個都過于樂觀。我們可以一一介紹一遍這三個因素:
計算能力
錯誤:100%的CPU能力可以用于區塊驗證
正確:大約5-10%的CPU能力可用于區塊驗證
百分比如此低主要原因有四個:
我們需要一個安全邊際來應對DoS攻擊的可能性
節點離線后需要能夠同步鏈。如果我斷開網絡一分鐘,我應該能夠在幾秒鐘內再次與網絡同步
運行節點不應太快耗盡電池電量,也不應使所有其他應用程序的運行變慢
節點還需要執行其他非區塊生產任務,主要圍繞在p2p網絡上驗證和響應傳入的交易和請求。
請注意,直到最近,大多數針對“為什么只有5-10%?”的解釋專注于一個不同的問題:由于PoW區塊是隨機出現的,因此驗證區塊所花費的時間較長,會增加同時創建多個區塊的風險。有許多解決此問題的方法。但是這些修補程序不能解決其他四個問題,因此它們無法像許多人最初認為的那樣在擴展性方面帶來巨大的好處。
并行性也不是萬能的。通常,即使是看似單線程的區塊鏈客戶端也已經并行化:簽名可以由一個線程驗證,而執行則由其他線程完成,并且有一個單獨的線程在后臺處理交易池邏輯。而且,越接近所有線程100%的使用率,運行節點所消耗的能量就越多,并且抵御DoS的安全邊際也越低。
聲音 | V神:USDC能公開代碼已經是傳統金融的進步了:據cryptoslate消息,在Circle推出穩定USDC協議中,包含一項黑名單政策,Circle解釋說他們幾乎可以完全控制用戶帳戶,包括凍結資金,終止賬戶,甚至向當局報告賬戶。在某些情況下,Circle還會向執法機構報告非法活動,此事用戶可能會喪失以美元兌換USDC的能力。Coinbase此前稱USDC是邁向更開放金融體系的重要一步,對此,有推特用戶截取相關代碼,并質疑Coinbase關于USDC的說法。V神回復該推特網友稱:事實上,這些代碼不得不公開,任何人都可以圈出來并在推特上進行批評。(但)這一點已經是一項超越傳統金融的進步了,我認為我們需要予以贊賞。[2018/10/26]
帶寬
錯誤:如果我們每2-3秒就有產出10MB大小的數據區塊,那么大多數用戶的網絡速度都>10MB/秒,因此他們當然可以處理這樣的區塊
正確:也許我們可以每12秒處理1-5MB的區塊。這已經很難了。
如今,我們經常聽到關于互聯網連接可以提供多少帶寬的廣告統計數據:通常聽到100Mbps甚至1Gbps的數字。但是,由于以下幾個原因,廣告中的帶寬和預期的實際帶寬之間存在很大差異:
“Mbps”是指“每秒數百萬個比特”;比特是字節的1/8,因此您需要將廣告的比特數字除以8以獲得廣告中的字節數。
就像所有公司一樣,互聯網提供商經常說謊。
總是有多個應用程序使用同一互聯網連接,因此節點無法占用整個帶寬。
p2p網絡不可避免地會帶來其自身的開銷:節點經常最終會多次下載并重新上載同一區塊。
Starkware在2019年進行了一次實驗,他們首次發布了500kB的區塊,這是因為交易數據gas成本的降低首次使這種可能性成為可能,但實際上有幾個節點無法處理該大小的區塊。此后,處理大區塊的能力得到了改善,并將繼續得到改善。但是,無論我們做什么,我們仍然無法天真地獲取以MB/秒為單位的平均帶寬,讓自己相信我們可以接受1s的延遲,并且能夠擁有如此大小的區塊。
V神:以太坊網絡將能夠每秒處理100萬次交易:在最近的OmiseGO AMA會議上,V神稱采用Sharding和Plasma等第二層解決方案后,以太坊網絡將能夠每秒處理100萬次交易,并且有潛力每秒交易超過1億次。[2018/6/3]
存儲
正確:512GB
您可能會猜到,這里的主要論點:理論與實踐之間的差異。
從理論上講,您可以在亞馬遜上購買8TB固態硬盤。實際上,用于撰寫此博客文章的筆記本電腦具有512GB存儲空間,并且如果您讓人們去購買自己的硬件,則其中許多都只會變得很懶惰,并且使用中心化提供商。即使您可以將區塊鏈安裝到某個存儲上,高水平的活動也可以輕松地快速刻錄到磁盤上,并迫使您不斷購買新磁盤。
一組區塊鏈協議研究人員對每個人都有多少磁盤空間進行了調查。我知道樣本量很小,但仍然可以說明一些問題。
此外,存儲大小決定了新節點能夠聯機并開始參與網絡所需的時間。現有節點必須存儲的任何數據都是新節點必須下載的數據。初始同步時間也是用戶運行節點的主要障礙。在撰寫此博客文章時,同步新的geth節點花了我大約15個小時。?
如果以太坊的使用量增加了10倍,那么同步一個新的geth節點將至少花費一周的時間,這很可能導致您的網絡連接受到限制。在攻擊過程中,當對攻擊的成功響應涉及到從未運行過節點的新用戶時,這尤其重要。
3?交互效應
此外,這三種成本之間存在交互作用。由于數據庫內部使用樹結構來存儲和檢索數據,因此從數據庫中獲取數據的成本隨數據庫大小的對數增加而增加。實際上,因為可以將頂層緩存在RAM中,所以磁盤訪問成本與數據庫的大小成正比,是緩存在RAM中的數據大小的倍數。
不要從字面上看這張圖。不同的數據庫以不同的方式工作,并且內存中的部分通常只是一個單層。但是基本原理是相同的。
例如,如果緩存為4GB,并且我們假設數據庫的每一層都比前一層大4倍,則以太坊當前的?64GB狀態將需要約2次訪問。但是,如果狀態大小增加4倍至?256GB,那么這將增加至?3次訪問。因此,gas限制增加4倍實際上可以轉化為區塊驗證時間增加約6倍。效果可能更強:硬盤已滿時,讀取和寫入所需的時間通常比硬盤快用完時要更長。
4?那么這對以太坊意味著什么呢?
如今,在以太坊區塊鏈中,盡管在常規硬件上仍然可行,但運行一個節點已經對許多用戶構成挑戰。因此,我們正在接近瓶頸。核心開發人員最關心的問題是存儲大小。因此,目前,在解決計算和數據瓶頸方面的英勇努力,甚至是對共識算法的更改,都不太可能導致人們接受的gas限制大幅度增加。即使解決了以太坊最大的突出DoS漏洞,也只能使gas限制增加20%。
解決存儲大小問題的唯一方法是無狀態和狀態到期。無狀態允許一類節點在不維護永久性存儲的情況下驗證區塊鏈。狀態到期會釋放出最近未訪問的狀態,需要用戶手動提供繼續維護這些狀態的證據。這兩種路徑都已經使用了很長的時間,并且關于無狀態的概念驗證實現也已經開始。這兩項改進相結合,可以極大地緩解這些擔憂,并為大幅提高gas限制打開空間。但是,即使在實施了無狀態和狀態到期之后,gas限制可能也只能安全地增加大約3倍,然后其他局限性再次開始主導。
5?分片之后會發生什么?
分片從根本上克服了上述限制,因為它使區塊鏈中包含的數據與單個節點需要處理和存儲的數據脫鉤,而不是節點通過親自下載和執行來驗證區塊,而是使用先進的數學和密碼技術來間接驗證區塊。
結果就是,采用分片的區塊鏈可以安全地擁有非分片區塊鏈無法做到的非常高的交易吞吐量。這確實需要很多密碼學上的聰明才智來創建能成功地拒絕無效區塊的完全驗證的有效替代品,但是可以做到這一點:該理論已經建立并且基于規范草案的概念驗證已經在研究之中。
以太坊正計劃使用二次分片,其總體可擴展性受到以下事實的限制:節點必須能夠處理單個分片和信標鏈,而信標鏈必須對每個分片執行一定的管理工作。如果分片太大,則節點將無法再處理單個分片;如果分片太多,則節點將無法再處理信標鏈。這兩個約束的乘積就形成了一種上限。
可以想象,可以通過三次分片甚至指數分片來走得更遠。在這種設計中,數據可用性采樣肯定會變得更加復雜,但可以做到。但是以太坊不會采用比二次分片更高的分片了。原因是,從交易的分片的分片實際上無法實現額外的擴展性增益,除非其他風險開始變得不可接受地高。
6?那么這些風險是什么?
最小用戶數
可以想象,即使只有一個用戶愿意參與其中,非分片的的區塊鏈也可以運行。而分片區塊鏈不是這樣的:沒有單個節點可以處理整條鏈,因此您需要足夠的節點,以便它們至少可以一起處理區塊鏈。如果每個節點可以處理50TPS,而整條鏈可以處理10000TPS,則該鏈至少需要200個節點才能生存。如果該鏈在某個時候少于200個節點,則要么節點無法再跟上鏈,要么節點停止檢測無效塊,否則可能會發生其他不良情況,具體取決于節點軟件如何設置的。
實際上,由于需要冗余,因此安全的最小節點數量比單純的“鏈TPS除以節點TPS”高出幾倍;對于上面的示例,我們說是1000個節點。
如果分片區塊鏈的容量增加10倍,則最小用戶數也將增加10倍。現在,您可能會問:為什么我們不從容量很小的時候開始開始,在看到大量用戶時增加容量,在用戶數量減少時減小容量?
這里面其實有一些問題:
區塊鏈本身無法可靠地檢測到有多少個唯一用戶,因此這將需要某種治理來檢測和設置分片數量。針對容量限制的管理很容易成為分裂和沖突的根源。
如果許多用戶突然并意外退出,該怎么辦?
增加啟動分叉所需的最小用戶數,使得惡意接管變得更加困難。
最低用戶數為1,000,這是幾乎肯定是可以的。另一方面,最低用戶數設為100萬,這肯定是不行。甚至將最低用戶數設為10,000,也是有點冒險的。因此,似乎很難證明擁有超過數百個分片的分片區塊鏈是合理的。
7?歷史可檢索性
用戶真正珍視的區塊鏈的重要屬性是永久性。當公司破產或失去維護該生態系統的興趣時,存儲在服務器上的數字資產將在10年內停止存在。另一方面,以太坊上的NFT是永久的。
是的,到2372年,人們仍能夠下載和檢查您的加密貓。
但是一旦區塊鏈的容量過高,存儲所有這些數據就會變得更加困難,直到某個時刻存在很大的風險,歷史的某些部分最終將……沒人存儲。
量化這種風險很容易。以區塊鏈的數據容量為單位,乘以?30即可得到每年以TB為單位存儲的數據量。當前的分片計劃的數據容量約為1.3MB/秒,因此約為40TB/年。如果將其增加10倍,則將變為400TB/年。如果我們希望數據不僅可以訪問,而且可以方便地訪問,那么我們還需要元數據,因此,這就是每年4PB,或者十年后達到40PB。互聯網檔案才使用50PB。因此,這是分片區塊鏈安全的合理體積上限。
因此,看起來在這兩個維度上,以太坊分片設計實際上已經大致針對相當合理的最大安全值。常數可以增加一點,但不能增加太多。
總結
嘗試擴展區塊鏈的方法有兩種:基本的技術改進和簡單地增加參數。首先,增加參數聽起來很有吸引力:如果您是在餐巾紙上進行數學運算,這就很容易讓自己相信家用筆記本電腦每秒可以處理數千筆交易,不需要ZK-SNARK,匯總或分片。不幸的是,有很多微妙的理由可以解釋為什么這種方法從根本上是有缺陷的。
運行區塊鏈節點的計算機無法花費100%的CPU能力來驗證區塊鏈;他們需要很大的安全邊際來抵抗意外的DoS攻擊,他們需要備用容量來執行諸如在內存池中處理交易之類的任務,并且您不希望在計算機上運行節點以使該計算機無法同時用于任何其他應用程序。帶寬同樣也有水分:10MB/s的連接并不意味著您每秒可以擁有10MB的區塊!也許是每12秒才能有1-5MB的塊。這與與存儲相同。增加對運行節點的硬件要求以及將節點的運行限制在專門的參與者上并不是一種解決方案。對于去中心化的區塊鏈而言,對于普通用戶而言,能夠運行節點并形成一種文化,即運行節點是一種普通活動,這一點至關重要。
另一方面,根本的技術改進是可行的。當前,以太坊的主要瓶頸是存儲大小,而無狀態性和狀態到期可以解決此問題,并允許將其增加最多約3倍——但不能更多,因為我們希望運行一個節點比現在更容易。?
采用分片的區塊鏈可以進一步擴展,因為分片的區塊鏈中單個節點不需要處理每筆交易。但是即使是分片區塊鏈,容量也有局限性:隨著容量的增加,最小安全用戶數增加,歸檔區塊鏈的成本就會上升。?
但是我們不必太擔心:這些限制足夠高,以至于我們可以在保證區塊鏈的完全安全性的同時每秒處理超過一百萬筆交易。但是在不犧牲使區塊鏈如此有價值的去中心化性質的前提下,還將需要做一些工作。
Tags:區塊鏈以太坊GASETH區塊鏈域名如何注冊以太坊交易所委托掛單要收手續費嗎UGAS-JUN21幣Ethereal英文名寓意
親愛的用戶:為了提供更好的用戶體驗,YFIDOWN將于2021年05月31日11:00開始按照100,000:1的比例進行代幣反向分割,整個過程大約需要24小時.
1900/1/1 0:00:00關于Gate.ioStartup免費空投計劃為回饋平臺用戶,Gate.io上線“免費空投計劃”,在Startup區不定期進行區塊鏈項目的免費空投計劃.
1900/1/1 0:00:00尊敬的用戶:???????????BKEXGlobal即將上線BOOB,詳情如下:上線交易對:BOOB/USDT?幣種類型:BEP20充值功能開放時間:2021年5月28日17:00交易功能開放.
1900/1/1 0:00:00以太坊基金會核心開發人員DannyRyan在以太坊官方博客發布文章宣布信標鏈首個升級Altair已取得穩定進展.
1900/1/1 0:00:00Solana生態發展迅猛,甚至不少投資機構專門推出了針對Solana生態的專項基金。與此同時,生態中新興項目也需要尋求IDO平臺進行代幣的首發.
1900/1/1 0:00:00尊敬的用戶: WBF在開放區掘金板塊上線HOT/USDT交易對,具體上線時間為:充值時間:2021/5/2615:25提幣時間:2021/5/2615:25交易時間:2021/5/2615:25.
1900/1/1 0:00:00