以太坊架構存在缺陷,分片會是救星嗎?

買賣虛擬貨幣
以太坊在其3年多的歷史當中,一直存在著爭議。從 the DAO駭客事件,到期待已久的向權益證明(PoS)共識機制的過渡,到君士坦丁堡的升級(降低挖礦回報,並改變了通貨膨脹時間表)。以太坊與比特幣的文化形成了強烈的對比。比特幣所迴避的一切,以太坊似乎都喜歡擁抱。

如果我們忽略所有的噪音,在引擎蓋下挖掘,我們會發現,以太坊的問題不是產品市場適應性的問題,而是工程穩定性的問題。以太坊架構基於一個有缺陷且不可升級的理念:它假設“智慧合約”需在成千上萬臺機器上覆制計算。

本文的其餘部分解釋了原因,它最初是一個推文風暴,作者Hugo Nguyen將其整理成了一篇博文。
比特幣不是魔法,它犧牲了所有效率的方式,這違背了我們的直覺和“最佳實踐”,目的是給我們一些特別的東西。

比特幣的效率特別低,這是因為以下兩個因素:

· 它要求生產區塊的速度必須緩慢;
· 它使用廣播通訊;

為了強調這是多麼反直覺,你可以試想一下:

· 有目的地放慢工作速度,即使你想出了一個讓它變快的方法?
· 告訴所有你知道的人,關於你在每時每刻所做的每件事?

在網路環境中,這樣做是更瘋狂的。不僅你會變慢,其他人也必須慢。不僅你對每個人都要大喊大叫,每個人都對其他人要大喊大叫。
此外,該網路還擁有數十萬成員。如果你有一個巨大的精神病院,你就有了正確的精神形象。

在大多數情況下,以比特幣的方式做事,簡直就是瘋了。

事實證明,最大限度地降低效率有其優勢。比特幣故意讓事情變得緩慢,這使得欺騙的代價變得很高。透過使用廣播通訊,它最大限度地減少了信任單個成員的需要(用計算機術語,就是最大限度地提高容錯性)。

比特幣透過減慢區塊和使用廣播通訊的方式,解決了拜占庭將軍問題。這是電腦科學的重大突破。

但比特幣的方式,其代價很高。它在光輝和無用性之間走了一條細線。只要流過區塊鏈的資料以可管理的速度增長,區塊鏈系統就會工作得很好。

除了線性以外,任何資料的增長率都是不可持續的,而且會有一定的死刑。非線性資料增長將迅速逐個殺死各個節點,並不可避免地將系統恢復到一個更依賴信任的模型。

由於區塊鏈系統是非常低效的,如果資料增長太快,幾乎沒有什麼可依賴的。實際上,區塊鏈系統正走在非常薄的冰面上。

因此,當涉及到區塊鏈資料時,你需要非常高效。這是為了彌補上述效率極低的情況。

這就是為什麼以太坊的“富狀態”架構是如此糟糕的原因。以太坊狀態純粹是為計算而需要的,但是它們以不可管理的速度增長。

當核心層接受富狀態的原因是模糊和可疑的時候,以太坊的設計決策更值得懷疑。

模擬圖靈完備性?區塊鏈上不可能有真正的圖靈完備性,因為所有程式都必須以某種方式停止。所以“圖靈完備”完全是一個噱頭。Vitalik本人也承認了這一點。

使得智慧合約更容易編寫?在區塊鏈工程方面,易用性是你最不要擔心的問題。這不是一個優先選項。記住,有了區塊鏈,你就踏上了薄冰,而不要新增富狀態。

那為什麼呢?使用比特幣風格的指令碼,就無法支援計算了嗎?當然不是的,任何透過以太坊智慧合約完成的計算,都可以在比特幣上完成,只是需要在更高層。

這就是問題的癥結所在。以太坊正在錯誤的層面上解決問題,透過這樣做,使得其核心設計變得腫脹。

拖延時間,也不是解決辦法。分片並不是解決方案,分片意味著降低廣播通訊的水平,而廣播通訊正是區塊鏈環境的一個特性,而不是一個bug!

把所有的希望都寄託在分片這個神奇的治療方案上,這一切都代表了以太坊對工程的態度:希望。

如果你考慮到比特幣,以太坊的問題就更嚴重了,儘管比特幣在資料型別和處理的資料增長方面極為保守,但它仍然有很大的失敗機會。嗯,比特幣仍然是一個實驗。

如果你讀過我最近關於比特幣激勵計劃的文章,你會發現我留下了一些開放式的問題,我仍然不知道答案。我對比特幣持樂觀態度,但是謹慎樂觀。

簡單地說:比特幣已經把事情擴充套件到了極限,以獲得有用的東西。儘管如此,它的成功並沒有保障。以太坊將事情延伸得更遠,而沒有充分的理由。由於這個原因,以太坊的架構從一開始就存在缺陷。

在工程方面再多說幾句。以太坊的故事其實並不罕見。我們以前看過這部電影:

· 70年代的RISC與CISC
· 90年代的Linux與Windows

在這些片段中,我們瞭解到,硬體和軟體作為模組化的簡單層構建時,工作得最好,以RISC和Linux為例(另一個例子是TCP/IP)。原因是這些系統趨向於更靈活、更優雅,並且能夠更容易地適應不斷變化的環境/用例。
這種見解在Unix設計理念中得到了更好的應用:“靈活性、簡單性和自由是首要考慮因素”。

Unix的設計理念也得到了來自大自然的贊同。即使螞蟻個體是愚蠢和高度專業化的,它們的群體也會展現出突如其來的智慧。同樣地,我們的大腦由簡單的神經元組成,它們各自執行簡單的任務。

以太坊核心層的廚房水槽方法類似於複雜指令集的概念。或者用大而複雜的元件來構建軟體,而不是用小而專業的元件。為了複雜性而複雜,是有問題的。

總之,以太坊的設計決策存在問題,其沒有強有力的理由支援。我們以前也見過類似於以太坊的工程錯誤。我的猜測是,以太坊最終將成為歷史書中不該做事情的另一大例子。

注:

· 我所提到的“區塊鏈系統”,指類似比特幣這樣基於工作量證明(PoW)的區塊鏈;
· 附加閱讀:Gregory Maxwell 在這裡解釋了“驗證,而不是計算”。下面是其中的一個片段:

“當你意識到“圖靈完備”是一個錯誤的工具,我們的系統所做的是驗證,而不是計算時,所有這些在可擴充套件性、隱私性和靈活性方面的根本改進都會出現。

這種認知錯誤,不會對那些一開始就對智慧合約有著模糊概念的人帶來任何好處。

在比特幣的世界裡,更強大的智慧合約,絕對是重要的,我毫不懷疑。但圍繞以太坊的營銷蠢話不是動力,而是船錨。共識不一致和權力下放的載體,破壞資源消耗和激勵不匹配。幸運的是,我在這裡描述的認知框架,在比特幣專家社羣中得到了很好的理解。”

更多數字貨幣資訊:www.qukuaiwang.com.cn/news

免責聲明:

  1. 本文版權歸原作者所有,僅代表作者本人觀點,不代表鏈報觀點或立場。
  2. 如發現文章、圖片等侵權行爲,侵權責任將由作者本人承擔。
  3. 鏈報僅提供相關項目信息,不構成任何投資建議

推荐阅读

;