
Ted Yin | 2021 年的區塊鏈基礎設施將是什麼?
TechFlow Selected深潮精選

Ted Yin | 2021 年的區塊鏈基礎設施將是什麼?
Avalanche 雪崩協議首席協議架構師和聯合創始人 Ted Yin,在BeWater DevCon 2021 全球開發者大會上的分享。

2021年9月4日,在BeWater DevCon 2021 全球開發者大會上,Avalanche 雪崩協議首席協議架構師和聯合創始人 Ted Yin,他也是 Facebook 的 Libra/Diem 項目共識 HotStuff 論文作者,遠在大洋彼岸的他視頻連線,為大家帶來了《Avalanche的實踐與思考》的分享。
這場深度且系統的分享,引發了全場人的思考,核心觀點:
1、2021 年的區塊鏈基礎設施是什麼?
2、前兩代區塊鏈協議的演變
3、第三代區塊鏈:Snow / Avalanche 「雪」之協議
· 區塊鏈的性能不能只看吞吐量,「吞吐量 + 延遲」才能完整衡量;
· 被過分炒作的“分片”概念,與實際應用相關,不是萬靈藥;
· 我們可以將流言網絡作為共識本身!
4、元平臺與子網鏈的設計
全文 7011 字,用時12分鐘
一、2021 年的區塊鏈基礎設施是什麼?
大家好!我是上海交大畢業的,是 Avalanche 的聯合創始人,也是首席協議架構師。
下面這張PPT 2020年被用過一次,大家說你是敷衍我,沒有,其實你會發現有些東西是不變的。尤其是我們從做科研到去年主網上線,我更多的從學術的角度,比較早的觀察到,每一年都有新項目出來,但其實基礎設施並沒有大家想象的更新迭代那麼快,這可能出乎你意料,沒有那麼多本質上不一樣的技術。

所以我們可以想想什麼叫做區塊鏈的基礎設施?
把現在所有的要素 —— 分片、擴容、DAG、智能合約等全部東西揉在一起,製造一個「究極縫合怪」,就會變成下面這張圖。

這裡面不止會有一個真正意義上的鏈,而是有多個鏈作為子系統。
比方說有一個線性的鏈作為賬本,有了線性序,我們就可以把計算和操作編碼在這個 log 上面或 ledger 上面,就可以實現 dApp 或者標準的智能合約,如以太坊上的 dApp 與智能合約,以太坊的操作就是一個序列。
又比方說使用了有向無環圖 DAG 的鏈——DAG 在有些系統裡是有用的優化,可以讓一些時序無關的操作並行執行,就比如說 A 給 B 了幾塊錢,A 又給 C 了幾塊錢,只要 A 的錢夠用就無所謂,他到底先給 B 多少錢還是先給 C 多少錢,實際上是沒有關係的。
這個事情的核心在於,單獨抽離的數據結構用處不大,需要通過共識算法或者說是一個一致性的協議來實現落地,保證這個網絡不光是分佈式的,而是去中心化的,每個機器都 share 了 log,同時這些 log 還是可兼容的,也就是不存在分歧。
區塊鏈技術成就了很多事情,我們無法想象阿里巴巴或騰訊把它的支付系統放在我們家裡運行,因為他們的數據庫可以隨便改餘額,那到底信誰的?但是對於區塊鏈技術下的系統,我們都可以運行節點。
在鏈和 dApp 之間,有 Agent 或者如 Infura 這種中間商。開發者一般不會自己運行一個全節點,而是本地先調試好了,然後通過一個第三方全節點進行部署。
二、前兩代區塊鏈協議的演變
1、第一代區塊鏈:中本聰時代

第一代區塊鏈也就是比特幣,我們可以理解成 git commit 形成的鏈,每個 commit 都有一個哈希值 ——所以 git 其實就是某種意義上的區塊鏈。
Git 裡面也可以有工作量證明,例如我們設定一個每個塊裡面的代碼必須寫多少個小時,而且沒有辦法偷懶,那就比誰的 commit 的鏈更長誰就說了算,對應到這裡面就是最長鏈。
工作量證明沒法偽造,很容易驗證,很長的時間才能在整個系統裡產生,所以我們就有了中本聰共識,最後賬本會坍縮到一個主鏈上面,這就是最長鏈的原理。

優點1:工作量證明同時能作為準入機制 ——「Permissionless」
有一個很好的地方是工作量證明同時能作為準入機制,這是一個不容易理解的點。
大家經常說聯盟鏈、公鏈,本質說的是一個准入機制:誰能進來玩?是不是任何一個人都可以來運行這個節點?但其實准入機制和共識機制並不直接相關,只是中本聰設計的這個協議恰巧用了工作量證明,而這個工作量證明可以形成一個准入機制,也就是說,它不需要特殊的委員會,不需要審批過程,只要有算力,就可以挖礦,而且也不存在一個人可以通過控制節點數就能控制區塊鏈網絡,因為節點不代表算力,所以他這點上的設計很有意思。
優點2:優雅的安全性退化
比特幣系統有比較優雅的安全性退化,在這種協議裡面安全是概率的,如果有人佔據了相當比例的算力,協議安全性雖然會受影響,但是影響是光滑的影響,不會說中心化到一定程度,就完全沒有安全性了。雖然說 51% 攻擊被大家所熟知,但從 1‰ - 51% 的過程,安全性是一個連續的光滑函數。
優點3:鬆散成員信息
比特幣系統也不需要準確的成員信息,挖礦即加入,不需要提前知道這個網絡裡有多少人參與,進入和退出不需要去登記。
缺點:浪費資源、負載能力低、確認時間長、安全效率差。
以上都是它的優點,缺點也很明顯:
1、工作量證明浪費資源:2018年的老數據表明,全網總共消耗的電量相當於一個奧地利、兩個愛爾蘭全年的電量;
2、負載能力很低:每秒鐘只有3個交易左右;
3、確認時間很長:如果按6個區塊鏈的確認規則,需要等一個小時,對於小額交易來說時間太長。
同時,比特幣系統和第二代相比安全效率很差,為什麼呢?
第二代區塊鏈:PBFT —— 法老王的復生

為什麼叫法老王的復生呢?這個東西研究了很久了,只是沒有走進大眾的視野,在傳統的大公司裡,如果接觸過如 Paxos 和 Raft 這種冗餘系統,那麼會對 BFT 有點印象 —— 實際在 2000 年的時候,已經商用於宕機或機器崩潰時的冗餘場景。
如果你有 f 個機器壞掉,那麼只要還有 2f + 1 個機器就可以保持系統正常,比如Google 一般是 5 臺機器。這種系統會高效且高可用,表現出來就是,我們現在所有的雲服務能給大家一種 24小時 * 7 天不間斷的假象。
在零幾年的時候,很多網站還需要每個月維護一次或每週維護一次,但現在無需停機維護了,因此通過容錯系統來遮蔽掉了這部分出錯的機器。整個系統相當於一個大的數據中心,因為機器太多了,每秒鐘都有機器壞掉,它會不斷的更迭。這個角度來講,它是好的系統,你可以想成使用了區塊鏈技術,但他其實是中心化的,因為所有東西都由一方在控制。
優點1:網絡非常快
在那個年代,依然有更激進的想法,如果幾個公司一起來跑,任意一方對不能直接控制這些機器,一旦出了錯,這種錯可能不是沒電,機器、硬盤壞掉,而是可能有惡意的公司修改數據,導致數據對賬問題,在這種更弱的假設下如何保障系統的穩定性?
這個當時也做了很多研究,例如 1999 年關於 PBFT(實用拜占庭容錯)的論文,這是一個正確的協議,也是第一個被認為比較實用的協議,它彌補了第一代區塊鏈協議的缺點,在網絡規模比較小的時候非常的快,甚至可以和中心化的服務效率比較。TPS 可能到上百上千,延遲可能到達毫秒級別。
優點2:確定性安全
在整個網絡比較好的情況下, PBFT 這類協議的安全性是確定的——如果只有不超過 1/3 的壞人的話,網絡一直是安全的,無需等待6個塊,只要確定了就是確定了,而非像一代協議一樣是概率的算法。
第二代協議的問題在於,一旦超過閾值(1/3 的壞人),就會立馬不安全,很容易被攻擊,這個系統就沒有用了。
優點3:悠久的科研歷史
另一個優點是它有很悠久的科研歷史,仔細想想中本聰的操作,不是為了科研目的一步步疊加做出來了,而是說我有這一套系統,我想讓它成為無政府主義者的貨幣系統,然後比特幣系統就出來了。只是我們後來的解構分析,發現他使用了算力做了衡量網絡中壞人的能力的單位。
問題1:難以擴容
很多協議裡大家用的都是身份,這樣可能會造成一個人搞多個身份,怎樣避免?
因此就有了准入機制,因此這種協議一般被稱為 Proof of Stake,基於質押證明的協議。質押並非協議工作原理本身,而是保障正確性的前提。這種協議的問題一是難以擴容;二是大家一起投票的話效率會低下,在沒有統一提案的情況下,要探索到統一的提案需要花費大量時間和網絡代價。
如果先有一個領袖進行提案,大家來支持或反對,或者對領袖進行彈劾,會快很多。
領袖型 BFT 就像美國總統機制,無領袖型 BFT 就像國會機制,雙方都有低效的地方。在 PFBT 網絡裡面,所有人都會去訪問 leader,leader 就好像被 DDOS 一樣。如果有 1000 個節點,那麼相當於 1000 個節點被 DDOS。所以就會出現擴容的問題——如何讓節點數增加,性能不呈反比下降?
隨機的全民表決的 BFT 方案,相對於領袖型 BFT 方案來說,效率還會更加捉急。
問題2:要求 100% 準確的參與者信息
PBFT 系統需要準確的知道系統中有誰參加——無需現實身份,但需要有 ID,比如有ABCDE 五個人參加,那就 ABCDE 組成成員名單,容錯程度建立在成員名單的基礎上,不能有偏差,每個人都要拿到一模一樣的名單,所以有一個實現的問題——在一個很鬆散的網絡裡,需要用決策機制決策出名單,當然這個事情是可以做到的。
問題3:對於壞人的硬性假設
對於壞人的硬性假設是不能超過共識節點數的 1/3,哪怕超過了 1 個,整個系統就是不安全的。這個系統論文就幾頁,但是真要實現的話非常困難。
這些協議都特別複雜,論文講核心的部分只有幾頁,但是他講的很模糊,真的要實現的話是非常困難的一件事情。
問題4:核心協議過於複雜

在 13 年的時候有人抱怨看不懂這協議在幹嘛,能看懂的就是客戶端發送了請求,然後一個服務器給所有別的服務器廣播說「hello」,然後這些服務器給所有的人發投票的什麼東西,然後就是 maybe do some start,最後就是鬼畫符,然後 definitely 了 —— 所以學術界懂這類算法的人也不多。
因此我們有一個結論,一對多或者多對多的廣播,是非常糟糕的情況。
三、第三代區塊鏈:Snow / Avalanche 「雪」之協議
對於第三代區塊鏈提出的問題:有沒有完全不一樣的共識機制?
分片能解決問題嗎?

在我們打破這個問題之前,先糾正一個誤區:
可能大家都覺得分片好,感覺像是救世主一樣:隨著分片技術的發展,「擴容難」已經過去了。
其實分片是在分佈式系統或數據庫領域的一個常見概念。所以如果跟不是搞區塊鏈的人交流,你會“驚喜的發現”,自己被營銷了。
分片這個概念本身並沒有錯,只是他被過分的炒作了——因為它沒有直接解決共識層面的擴容問題,只是治標不治本。
為什麼這麼說?如果你已經給定了一個基礎協議效率的情況下,採用分片進行優化沒有錯,但因為沒辦法解決原來的問題,所以才增加了人為的修正,這是本末倒置。如果原來的問題解決了,我們還是可以去做分片等優化。
為什麼說是治標不治本?因為是以損失容錯度為代價的。我們這裡做個思維實驗,如果每個節點都是一個分片,那麼所有的節點都是自己的一套系統,就不產生冗餘了,因為分片分得越多,複製同一個狀態的、同步整個鏈的數據的、取得一致性節點就會越少,這是它的規律——分片和共識是一個天平的兩邊。
所以,分片能進行的情況是,分片之間一致性需求沒那麼高,例如:在上海做支付系統和在北京做支付系統,多數情況是上海內部銀行之間互相轉賬,北京內部銀行之間互相轉賬,偶爾有北京和上海之間的轉賬——如果是這種情況下還是需要走慢的辦法,取得一致性。
從這個例子看出來,分片是跟實際應用直接相關的,並非萬靈藥。

如果這個協議很垃圾,相當於湯本來就很難喝,分片相當於給湯里加老乾媽,會變得好吃,但我們要知道,難喝的湯里加再多的老乾媽,它也是有老乾媽的難喝的湯。

如果本來就是個火鍋,湯底很好,我還是可以加辣的,就可以更好吃了。
第三代協議:Avalanche 協議

第三代並非意味著秒殺前兩代,只是各自有特點。這套協議在具體的應用場景下,可以發揮很強的業務能力和性能。
一篇關於 Avalanche 的論文在 18 年 5 月被放到 IPFS 上,這篇論文是我們這幫科研人員合作的,受傳染病模型(epidemic model)和流言(gossip)網絡的啟發。
第三代結合了前兩代的優點:
1)有優雅的安全性的退化——不能說壞人到達一定的數量,網絡就不安全了,直接崩潰了。
2)鬆散的成員信息——網絡裡面的節點數和名單不太一致,不會對大局觀造成影響。
3)足夠快——不因網絡規模增加而線性甚至超線性的下降,如果是對數的下降就很好。
4)綠色環保
5)符合直覺—— PBFT 中的投票不符合直覺,太複雜了;中本聰共識很符合直覺,但又太慢了。

另一個被曲解的概念——TPS吞吐量
其它協議也說自己很快,有很高的吞吐量 (TPS:transaction per second 每秒鐘交易數),但就像我們不會只看跑分結果買手機一樣,吞吐量也是被曲解的概念。
如果你看計算機系統的論文,他們測性能,尤其是分佈式系統絕對不會只測吞吐量,這個相當於在耍流氓。因為「吞吐量」只反應一個系統的負載緩衝能力,而「延遲」是反映真正響應用戶請求的速度。
你作為一個用戶不關心吞吐量— 每秒能服務幾個人,用戶更關心交易遞交上去了,什麼時候能上鍊,是一秒還是一小時?這個概念叫做「延遲(latency)」。

評估整個系統不能只評測延遲,「吞吐量」和「延遲」這兩者缺一不可。一個系統延遲可能確實很快,好像一個銀行平常沒有人來,只有一個或十個客戶,那麼延遲很低,但原因只是負載太低,沒有什麼用戶在裡面用,但如果有很多人排隊,銀行就招架不過來了,所以給定延遲的時候你要看吞吐量。

如果不看延遲,只看吞吐量,會得到另外一個極端的研究。
跟互聯網媲美的吞吐量是物流公司的吞吐量,比如我從北京寄一卡車的存儲卡到上海,可能三天到貨,按秒來算吞吐量是相當驚人的,但是你不能當網絡用,也不會用這個東西做決策,所以不考慮延遲,只是談吞吐量也是在耍流氓。
所以吞吐量和延遲兩方面都要看。

上圖是節點數翻倍下 Avalanche 協議吞吐量的表現。在節點倍增的情況下,吞吐量受到的影響比較小,這裡面也用到了一些別的技術,例如用 DAG 來實現併發交易。

上圖是在 2000 個節點的情況下,不考慮額外網絡延遲的情況下做出的協議本底延遲。即使 2000 個節點都在投票,還是可以做到低於一秒的延遲——左側即是延遲的分佈。

考慮實際的情況,把節點分散到全球 20 個城市,做完整的數字簽名,使用比特幣標準 UTXO 模型,結果還是相當客觀,可以在維持每秒上千個交易的同時,保證一秒左右的確認時間。
如何實現?—— 流言網絡作為共識本身
今天時間有限,我不能把每一步都展開。我從直覺的角度來給大家大致講一講主要思路是什麼,憑什麼?

如果有 N 個人在討論娛樂圈的瓜是不是實錘,把真或假想象成一種決議,相當於上鍊或沒上鍊。每個人獨立的選 k(如 k = 10)個其它人,就算全國有上億人也是選 10 個人,然後去看他們認為這個瓜包熟不包熟,真的還是假的。
張三根據他問的 k 個人決定自己對事實的傾向的確信度,張三的傾向又會影響到別人問他的結果。通過隨機詢問,信息在整個網絡的可信度是上升的。

第三代協議相當於第二代協議的優勢是不需要問全網所有人,只問一個隨機抽樣的群體,這個群體只跟安全性有關係,和網絡的規模關係很弱。如我們有 100 萬個節點,我們設定的 k 值依然可以是 10 或 20。
一個例子:

這個例子裡面,我們考慮每一個節點是一個顏色存在差異的圓圈。那可能張三原來覺得藍色的表示實錘,橘色表示是假的。現在他認為是假的,他隨便地問了五個人,發現有三個藍色(實錘)。李四問了別的五個人,發現和張三意見相左。這個網絡可能會在短時間震盪,但是微小的擾動就會讓這個網絡從
「震盪態」坍縮到「穩定態」——也即,所有的節點都成為同一個顏色。
這裡有一個 Avalance 協議的演示 Demo:
https://tedyin.com/archive/snow-bft-demo/
我們會發現這個協議具有相當的魯棒性。

協議特性總結:
1)我們只需要選一個小的樣本,重複進行採樣,無需工作量證明,也無需全局的投票。
2)好處就是網絡有多快,過程就可以有多快,很容易擴容到大規模節點。
3)可以允許鬆散的成員。
4)引入任意的准入機制,如 PoS 機制。
四、元平臺和子網鏈

我們有一個這個主鏈是做這種價值轉移和交易的。NFT 還沒火起來的時候,我們的測試網已經支持 NFT 了,而且是在 UTXO 模型下支持的,也就是說發行 NFT 無需智能合約。
同時,如果想用智能合約的方式實現,也可以,因為支持標準的以太坊智能合約。我們只要在 sdk 中修改 endpoint、 chain id 與 gas fee,就能將 eth 合約原封不動的部署在 Avalanche 的鏈上。

我們有沒有辦法像生成智能合約一樣來發行自己的鏈呢?
開發者是隻想要一個屬於他的支持 eth 規範的鏈,那麼可以發一條自己的鏈;如果開發者想要做一套支持 wasm 的自己的鏈,編寫自己的一套語法,那麼他可以二次開發。
去年 9 月份我們的主網已經上線了,70% 的發行總量上限是留給這些質押挖礦的或者是以後去做生態貢獻這些人的,團隊和投資人佔的比例沒有那麼大。而且,主網上線的第一天就是去中心化的,目前有 1000 多個去中心化的節點,公司很早就已經沒法控制這個網絡了。

所以,大家可以考慮吃火鍋,尤其是做智能合約開發的,可以考慮快一點的系統。
智能合約鏈經過一年的打磨,已經相當絲滑了,歡迎大家體驗!
問答環節:
提問:Avalanche 它的優勢在哪裡,solana 他的生態其實相對而言也比較成熟,相對比 Avalanche 領先一丟丟的,您怎麼看?
Solana 的技術上我們考察研究過,他們細節披露的不是特別多,我是主觀認為沒有那麼去中心化。Avalanche 去跟市面上所有的項目去比,我覺得沒有任何一個能打的過我們去中心化的程度。判斷項目的去中心化程度,要看主網到底跑多少個節點,到底誰在跑這些節點,把這兩個問題回答清楚,就知道項目到底什麼情況。
我見到過項目說先上船再補票,先把東西做出來,把資本運作起來,然後技術慢慢的落實到位,但為什麼一開始不好好做呢,應該站著把錢掙了。我們註冊在美國,是合規的,我們一開始花了大量時間精力在怎麼好好做這個項目,怎麼去把真正學術的成果轉化成可用可見的系統,你如果去看裡面的代碼,就是兩年前提到的算法,可能有小的改動,但基本上是那樣的。
你可以從市場角度去看,市值也好,或幣價也好,可能暫時比不過所謂的競爭對手。但我們也不把包括以太坊在內的看成自己的競爭對手,因為我覺得這個行業都還沒有被大家正視,就想內部窩裡鬥,沒意義!重要的是市場蛋糕是很大的,但才把小菜上了,就狼吞虎嚥把別人的菜搶完了,後面的菜還沒上呢。
Solana 是我們的友商,大家一起做大蛋糕,一起吃香。各自的鏈有各自的優點,性格,或者使用體驗。我覺得重要的是,老老實實把事情做出來,真正做到去中心化,把服務做到承諾的級別。
❤ BeWater DevCon 2021 圓滿結束,感謝大家的關注和支持 ❤
嘉賓乾貨稿及視頻,會陸續出來,持續關注哦~
-活動報名-
第四期閉門會:9月9日(本週四晚)
掃描下方二維碼,填寫申請表


歡迎加入深潮 TechFlow 官方社群
Telegram 訂閱群:https://t.me/TechFlowDaily
Twitter 官方帳號:https://x.com/TechFlowPost
Twitter 英文帳號:https://x.com/BlockFlow_News


![Axe Compute [NASDAQ:AGPU] 完成企業重組(原POAI),企業級去中心化 GPU 算力 Aethir 正式進入主流市場](https://upload.techflowpost.com/upload/images/20251212/2025121221124297058230.png?x-oss-process=image/resize,p_50/quality,q_80)











