在深入了解特定的區塊鏈特徵之前,我們首先了解了區塊鏈是什麼以及為何如此重要。接著,探討一些構建在以太坊上的應用;錢包、DeFi、DAOs、NFTs 。之後,用以太坊的未來探討來結束這篇指南,主要探討權益證明的變遷,以及描繪以太坊希望如何解決區塊鏈的三角悖論。本文源自 Brunny.eth《A Simpler Guide to Ethereum》,由動區專欄作者 ECN 編譯、整理。
如果你是加密界的新手,面對眾多概念無從入手,那麼歡迎你,來對地方了。
我最聰明的一些朋友已經開始花更多時間鑽研以太坊。而在此過程中,他們中有些人問過我類似的問題。通常都是關於具體概念的界定(比如,什麼是gas ?)或者是廣泛的概念性問題(比如,“Uniswap 如何運作)。這些疑問促使我寫成了這一篇《以太坊簡易指南》。
如何使用這篇指南呢?
它被劃分為五個主要部分:
01|以太坊 101 入門部分
02|以太坊 201 深入探討更為複雜的概念
03|加密語境中關於身份認定
04|去中心化金融
05|關於以太坊的未來
在每一部分,我解釋了很多複雜的專業術語,編制了許多實用的圖表,以通俗的語言闡釋以太坊中最為重要的概念性主題。並且,我還在指南的末尾附上了額外資源,供大家繼續深耕。
在了解以太坊時,你可以針對性地運用指南的不同部分進行快速閱讀和檢查,或將指南作為探索未來的一個靈感點,或作為一個連結分享給最近對加密領域感興趣的朋友。
舉例來說,可以按Ctrl+F 鍵查找 “Uniswap” 更多地了解去中心化交易所。或者,還可以檢索“wallet ”(錢包)學習更多有關非託管錢包的安全知識。
在 Vitalik Buterin(以太坊共同創辦人)的某篇熱門文章中,他寫道,「有時候,差別極小的過度簡化正是我們了解世界所需要的東西。」我希望,通過將這些複雜的話題濃縮為極簡的內容,讓這則指南可以幫助所有人了解以太坊世界。
01|以太坊 101 – 基礎篇
在認識以太坊之前,我們需要了解它的基礎概念。在這個部分,我將闡釋什麼是區塊鏈,區塊如何添加到鏈上,以太坊如何像世界計算機一般運作,以及智能合約如何運行。
區塊鏈
區塊鏈是指特定網路中一系列獨立計算機處理和維護的所有交易的公開記錄本。
比起用中心化的方式管理這些交易數據庫(就如 Amazon 或 Facebook 控制自己數據的方式),區塊鏈上不存在單個數據所有者,使之去中心化。在這個網路中的計算機遵循著特定的規範和機制,以保存所有交易的記錄。
這些規範讓計算機能夠同意網路中發生的所有(交易)行為,或就其達成共識:計算機A 是否轉出資金給計算機 B ,計算機 B 是否發送這些資金給計算機 C,以及什麼時候呢?上週發生了什麼事呢?六個月前發生了些什麼?
網路中的計算機是獨立的,因此,計算機 D 和 E(和 F 和 G ……)可能不認識計算機 A、B 或 C。區塊鏈的一系列規則意味著,單個計算機無須獨自驗證其他計算機提供的數據的準確性,就能對區塊鏈歷史上發生的交易達成一致。
換句話說,計算機之間不用信任彼此就可以達成共識。在網絡中的計算機之間,這種去信任共識機制具有舉足輕重的重要性。
區塊鏈數量十分龐大,每一條鏈遵循著自行設置的規範達成共識。以太坊區塊鏈致力於為給不同領域中酷炫的、新穎的應用提供基礎設施服務與設計空間,比如遊戲、藝術、金融和社交媒體類的應用。
共識機制
當區塊鏈上的所有計算機都同意發生在網路中的事實,這就是「達成共識」。
單個計算機之間根據區塊鏈的規則達成共識,並且每一次將新交易打包至鏈上,所有計算機都需要經歷達成共識的全過程。
一旦這些計算機達成共識,交易區塊則被打包到區塊鏈上,成為網路歷史記錄中的一部分。大致的意思是,假設計算機對每次新交易添加至鏈上的行為無異議,那就相當於同意了區塊鏈的整個歷史記錄,因為他們不得不參與其中的每一環。
共識是一個支撐整個區塊鏈世界的重要概念。如何在不信任網路中任何參與者的情況下,驗證上面發生的交易,這是一個非常難以解決的人類問題,而區塊鏈是這一問題的最優解。不同規範(或是共識機制)可以促使個人計算機在區塊鏈中達成共識。
下面介紹兩種主要共識機制:
工作量證明(PoW) – 在工作量證明機制中,計算機之間以競賽的方式解決複雜的數學問題。網路會給第一台解決問題的計算機提供經濟獎勵,這激勵著計算機背後的人不斷更新並運行節點(換言之,確保網路一直處理交易)。
也許你曾聽過,這種競相解決計算密集型數學問題的過程就叫「挖礦」。基本上,經驗證為合法的交易,可以安全地添加到區塊鏈上。這也是比特幣區塊鏈以及當前以太坊區塊鏈在實施的規則。
工作量證明機制也有它的缺點,主要是 1)最終,最強大的(和最昂貴的)計算機能夠更快地解決問題,因此,富者衡富;2)在計算機上解決高難度的數學問題需要消耗很多精力,這已經成為整個區塊鏈最為人詬病的一點。
權益證明機制(PoS) – 相對於耗費大量算力來達成共識(如PoW),權益證明機制則是利用懲罰的風險(和一些經濟激勵)約束/激勵參與者。
在權益證明機制中,參與者籌備資金(技術角度而言,他們「質押」自己的資金),並換取進入隨機選拔程序的資格。被隨機選中的計算機需要驗證下一批即將到來的交易。當隨機選中的計算機正確地處理交易(在權益證明機制的限制範圍內),可以獲得獎勵。
如果被網路隨機選中的參與者違反了權益證明機制的規定,那麼這個參與者質押的資產就會減少(或「被罰沒」)。
PoS 區塊鏈不會同時請求網路中的所有計算機破解那些數學難題,而是通過隨機選取計算機進行交易驗證。略過繁重的計算過程可以減輕 PoW 機制出現的兩大主要問題。這也是以太坊在規劃 2022 年部署下一代區塊鏈時,打算啟用這套共識機制的部分原因。
節點 – 為了以太坊區塊鏈的運作,網路中的參與者需要運行特定的軟體,協助他們與區塊鏈進行交互。我傾向於認為,每個節點作為獨立計算機運行著以太坊軟體。同樣地,節點(網路中的參與者)越多就越去中心化,但有時,維護所有節點有些麻煩,因此,不同的節點針對不同的目的:
- 全節點 – 全節點用來儲存完整的區塊鏈數據,幫助區塊進行驗證並打包到鏈上。這類節點還為過去的交易提供有效性證明。
- 輕節點– 輕節點的功能在設計上相對少於全節點。比起儲存完整的區塊鏈數據,輕節點僅僅儲存較少量過去交易的證明。這類節點讓更多人參與到網路中,因為它們存儲更少的數據,運行起來更加經濟。
- 歸檔節點 – 歸檔節點是以太坊世界的程式庫 / 維基百科詞典。它們儲存全節點所有的數據,甚至更多。分析工具和錢包提供商也許會利用歸檔節點來拉取很久之前的資料。
- 客戶端 – 這是以太坊的軟體,使得計算機(節點)能夠同以太坊網路進行交互。單個節點可以選擇他們想用的客戶端軟體,但多用一些不同類型的客戶端對於去中心化至關重要,以免其中某個客戶端出現 bug 或者問題。現在有執行客戶端和共識客戶端兩種類型,但這不在指南介紹的範圍內。現如今,鏈上有很多可用的客戶端,最近以太坊社群爭取讓最大的一些節點運行機構多樣化其運行節點的客戶端。重要的是,任何想要參與運行以太坊網路的用戶,都可以創建他們自己的客戶端,這意味著用戶不必信賴第三方實體為其驗證區塊鏈。
- 狀態 – 以太坊區塊鏈的狀態指的是在任何特定時間點區塊鏈上的帳戶餘額情況。一旦有新的事物產生(比如處理一個新的交易區塊),那麼狀態則會更新並精確地反映區塊鏈在打包新交易後的狀況。以太坊的狀態保存不同帳戶及其餘額的訊息。換言之,一旦區塊鏈驗證新的交易,狀態也會隨之更新,利用剛添加的新交易資訊反映出新的帳戶餘額。
側欄 – 如何將區塊打包到區塊鏈上?
一個用戶可能想用以太坊區塊鏈發送一些資金給另一個用戶。一旦發起方用戶這邊發起了交易,這筆交易就要在接收方用戶收到這筆錢之前,被打包至交易鏈上。
當這樣一筆交易打包到以太坊區塊鏈上,各個節點需要在交易打包上鏈並變成其一部分歷史之前,完成整個達成共識的過程。
在下圖中,它討論的是上述的簡單交易,就是一個用戶發送資金給另一位用戶。這筆交易被打包成區塊,等待節點一同達成共識後將它添加至鏈上。
事實上,區塊鏈只是所有用戶對於發生在網路中的歷史交易達成共識的方式,而區塊鏈狀態是已實時更新過新交易的帳戶餘額。
智能合約
在一定程度上,智能合約類似於物理世界中使用的傳統合約的電子版。在傳統合約中(例如僱傭合同或者公寓租賃),兩個及以上的合約方建立一套條款,再通過律師和司法系統執行合約中的條款。
而在智能合約中,兩個及以上的用戶也是創建一套規則,卻不是通過司法體系執行合約,而是由程式編寫成智能合約,發送到區塊鏈(或者部署在區塊鏈上)。智能合約會根據已編好的程式碼自動運行,而不需要律師執行。
上述的側欄部分敘述了區塊打包上鏈的過程。智能合約是經由區塊內的交易部署到鏈上的程式碼。
未來的交易可以「調用」或與智能合約交互。舉個簡單的例子,A 用戶希望和 B 用戶就比特幣在未來兩年內的價值打賭。
A 用戶認為比特幣在 2032 年 1 月 1 日時會超過 100,000 美元,而 B 用戶則認為比特幣會低於這個價格。那麼,兩位用戶可以建立一個智能合約,在合約裡放置彼此的資金,再約定一條簡單的規則:如果比特幣在 2032 年 1 月 1 日超過了 100,000 美元,智能合約則釋放這些資金給 A 用戶,反之,智能合約將資金打給 B 用戶。這個交易過程十分簡單、直接且去信任。
智能合約允許任何人以去信任的方式在世界計算機上部署程式碼,並且,也使得任何人去信任式地驗證程式碼的內容(只要他們可以讀懂程式碼!)最終,智能合約技術的存在已為一波湧現的去中心化應用浪潮帶來巨大的機遇,而沒有區塊鏈技術,這些就無法成為現實。
比特幣和以太坊最大的區別是,以太坊催生了一波智能合約計算平台的浪潮,這些平台是可以編寫智能合約程式碼並直接部署到鏈上的區塊鏈。以太坊基金會研究員 Josh Stark 寫了一部關於智能合約的文章,如果你願意更加深入了解這個概念,我建議你閱讀這篇文章。
以太幣(ETH)
以太幣是支持以太坊區塊鏈的原生貨幣。在工作量證明機制中,(挖礦)獎勵通過以太幣支付給解決數學難題的計算機。並且,參與者在權益證明機制中質押的資金也是用以太幣 (需質押32 ETH)。
以太幣是加密貨幣的名字,以太坊是網路的名字。
以太坊虛擬機(EVM)
以太坊虛擬機這個名字是指「虛擬」計算機,它由所有參與以太坊網路的獨立小型計算機組成。這樣單個的大型計算機並非實際上處於某個位置的「物理層面上的」計算機,而是尤如一台大型(全球性的)計算機一般工作。
以太坊區塊鏈的狀態就活躍在這台計算機上,並且,當下一個區塊打包至鏈上時,它負責執行狀態更新的規範。如果以太坊網路中的用戶想將智能合約程式碼納入自己的交易中,那麼這個程式碼便會在EVM 上運行。
側欄 – 以太坊虛擬機如何運作?
儘管對於新手來說,可能沒必要了解 EVM 運行的複雜性,但它是以太坊區塊鏈的重要組成部分,還能幫助讀者大致了解去中心化如何規模運作。如下圖,儘管圖片有些複雜,但畫得不錯。一起按照步驟來看:
我們首先從以太坊區塊鏈在特定時間點的狀態開始。這左邊的方框稱作「世界狀態σ t 」一筆交易被打包到鏈上,例如從一個錢包轉移以太幣到另一個錢包,在圖表頂端上的方框,就是「訊息調用交易」。
在交易發生之前的以太坊狀態(再次提示,左邊的方框)加上新交易(頂上的方框)的輸入數據,都在 EVM 上運行。在這裡,EVM 更新區塊鏈的狀態。一旦 EVM 更新了狀態,新的狀態 “ World state σ t+1 ”會被儲存起來。
代幣
通常,代幣指區塊鏈上的資產。代幣可以代表許多不同類型的資產。舉個例子,一般認為代幣是可以當成貨幣的資產,或者是在具體決策過程中給持有者提供投票權的資產 (治理代幣),又或者完全可以作為其他東西。代幣是加密世界中代表著不同種類資產的價值的原子單位。
同質化代幣(fungible token) – 這個術語“ fungible ”指的是可以相互轉換的一些商品或是物品,即可替換性。這不是一個加密原生術語,一般的貨幣指的是同質化貨幣。例如,我口袋裡的1美元可以換成你口袋裡的1 美元,並且這兩個1 美元都可以用來買1美元的東西,它們是等價的。當可替代性應用於加密概念中,它指是否可以與其同一集合中的其他加密資產進行互換。我的以太幣和你的以太幣可以互換。
非同質化代幣(NFTs) – 非同質化代幣指的是所有因獨一無二的存在而不可互換的數位資產。
雖然 NFT 主要是因為數位藝術和數位藏品出圈的,但它不止於這種表現形式,它可以是任何獨一無二的數字資產。數位藝術和數位藏品恰好是 NFT 最早的用例之一,而已經引起了廣泛公眾的共鳴。
這種代幣引起了許多人對加密界的興趣,但我認為諸如無聊猿和 NBATopShot 此類 NFT 項目的興起導致廣大公眾低估了在以太坊區塊鏈這樣的可信結算層上部署獨一無二的數位資產所帶來的其他方面的效用。
從概念上看,NFT 還可以應用於許多數位收藏品以外的其他用例。如果一種產品或者服務需要能夠驗證某種特定數位資產的所有權和其稀缺性的有效性,那麼公共區塊鏈上的 NFT 就派上用場了。例如,音樂會場地可能會用 NFT 替代門票,或者遊戲的設計師可以將那些難以在遊戲中獲得的資產轉為NFT,由此用戶之間可以轉讓或交易。
這個概念還能玩出新花樣:一些資產可以既是同質化的,又是非同質化的,這取決於同它們進行比較的集合。例如,如果我持有一個 19 世紀的 1 美元老幣,並將它作為收藏品放置於玻璃罐中。這很明顯,這 1 美元(非同質化的!)和被揉作一團後塞在口袋的美元新鈔截然不同。
不過,如果我將玻璃罐裡的 1 美元掏出來去星巴克消費,他們(可能)願意收下它。這是因為,從某種程度上看,它跟其他一美元紙幣是可互換的,儘管從其他角度而言,它們完全不是一回事。
02|以太坊 201 -進一步深入了解
在這一部分,我將闡述 gas 成本高昂的原因,可組合性如何運作,以及用戶如何與創建在以太坊上的應用交互。
燃料 (Gas)
與以太坊區塊鏈的每次交互都會消耗成本 (gas),而這個成本取決於以太坊虛擬機運行那段特定程式碼需要消耗多少算力。由於區塊鏈上的每個區塊的空間只能容納固定數量的交易,而 gas 的概念可以幫助以太坊分配稀缺的區塊空間資源。
越是複雜的交易可能需要支付越多的 gas 才能完成。比如,從一個錢包發送以太幣到另一個也許只需要在虛擬機上運行幾行程式碼,因此,它需要的 gas 少於算力大的交互所需的 gas ,如在去中心化交易所兌換一些代幣(閱讀下文的去中心化金融部分了解更多!)。
你可以把 gas 看作類似於中心化的信用卡公司收取服務的手續費。例如自 20 世紀 50 年代創建、運作且維護到現在的 Visa,會向所有使用 Visa 網路的交易收取固定的 3% 費用。相對而言,以太坊的手續費是不固定的,它基於交易時網路的供需情況而定。
Gas 費用於支付參與以太坊區塊鏈運作的計算機(請閱讀下文了解更多)。
Gas 以 ETH 計價,並且用戶可以選擇支付更多的 gas(通過給計算機支付小費的方式)以加速交易時間,提高交易打包到下一區塊的機率。
Gwei
在技術上 Gas 的價格表示為 wei,是 ETH 最小的增量單位。1 wei 等於 0.000000000000000001 ETH(1018 wei,也就是用 5 個逗號才能表示 1 ETH),1 gwei 等於 1,000,000,000 wei,所以比較 gas 價格時,用 gwei 兌 ETH 的計價方式更為方便。
用戶已經習慣了以 gwei 為單位來表示 gas 價格。比如 0.0001 ETH是 1 gwei,這個 gas 費用很低。用戶可以使用 Gas.Watch 留意實時的 gas價格。Gas 會隨著打包進區塊鏈的交易需求上下波動。
它應該是發音為 gwey,但我聽過有人讀 goo-ee。所以,我不太敢問它的讀音。
側欄 – 為什麼需要 gas,它如何應用?
負責驗證區塊鏈交易的計算機需要在經濟上給予激勵。如果不發放這些激勵,將難以說服他們運維計算機和區塊鏈,而要是鏈上沒有充足的計算機進行運行,就將導致區塊鏈變得過度中心化,僅由幾個用戶控制。
如上所述,支付給網路參與者的 gas 會根據打包進區塊鏈的交易需求而波動。
Solidity
Solidity 是一種程式語言,用戶可以用它在以太坊區塊鏈中編寫智能合約以及創建去中心化應用。重要的是,Solidity 是圖靈完備的編程語言,這基本意味著「任何你可以編寫成程式碼的東西都可以用 Solidity 寫」。這說明,開發者能夠使用 Solidity 在以太坊上開發大量的酷炫玩意。
可組合性
由於智能合約作為開源程式碼部署在以太坊上,所以,任何人都可以基於這些智能合約構建(或者分叉程式碼並自行改變),這表明以太坊 (以及其他類似區塊鏈) 上的應用是可組合的。
可以將可組合性看作是區塊鏈的 API 。儘管按理說早幾代前開發者就能夠基於其他技術基礎設施創建應用,但加密可組合性對比其他領域的不同主要表現在:它所有底層協議都是去中心化的。
換言之,開發者無需擔憂會有某個中心化實體,掌控全部的底層數據並突然改變平台的規則,或是限制開發者的訪問, 比如2018 年基於推特API 構建應用的開發者們遇到的情況那樣。
側欄 – 可組合性的案例有哪些?在實際中如何應用?
可組合性指的是開發者可以利用已經構建和部署在公鏈上的其他應用創建新的應用。
例如,Compound 作為一個 DeFi 應用,如高能儲蓄帳戶一樣能讓用戶通過存款賺取利潤。假設一個項目(例如 Argent 加密錢包)的開發者希望將 Compound 嵌入他們構建的應用中,那麼他們無需重建系統就可以輕鬆地集成 Compound。這就是可組合性。
以太坊改進提案(EIP)
鑑於如以太坊這類區塊鏈在本質上是公開的、去中心化和開源的,其開發者社群修改協議的方式與中心化實體做決策的方式相去甚遠。現代開源社群(比如 Linux 和 Python 的活躍社群)和以太坊的開發過程更加相似。
以太坊社群已經制定了一套流程以概述社群成員該如何向以太坊協議提出改進建議。這些流程包括提供進行討論的公共論壇和鼓勵社群參與開源,這對於以太坊區塊鏈來說尤為重要,因為它是去中心化的區塊鏈且依賴於全球分佈的社群對其進行監督和改進。
提案可以與區塊鏈遵循的核心規則相關 (比如何時達成共識),也可以就以太坊核心構建部件提議一個標準化版本如非同質化代幣或者錢包(下文會展開描述)。當用戶利用以太坊的可組合性基於某些已標準化的規範來構建一個應用時,顯而易見代碼將按預期運行。
以太坊註釋請求(ERC)
ERC 是 EIP 的一種類別,具體來說,ERC 是描述「應用級別的標準和協定」的一種EIP 。這類 EIP 值得在這提一提,因為它是以太坊上最重要且最具知名度的一些使用案例的合約標準的模板。開發者在以太坊上構建時可以使用這些合約標準以節約時間和精力,而不用從頭開始。一些廣為人知的ERC 如下:
- ERC-20 – 這是同質化代幣的一種代幣標準。
- ERC-721 – 這是非同質化代幣的一種代幣標準。
- ERC-1155 – 這是優化了部分ERC-20 和ERC-721 的代幣標準,一般應用於碎片化非同質化代幣。
側欄 – 為什麼想要碎片化(或使其可替代)非同質化代幣?
儘管碎片化 NFT 這個概念本身聽起來像悖論,但這也有幾個不同的用例。最好的解讀方式是,一些藝術品價格高昂(比如 Beeple 的 NFT 以 6900 萬美元的價格售出或蒙娜麗莎這副名畫),普通人很難買得起。碎片化一個昂貴的 NFT,使得消費者有機會持有(價值連城、非同質化)代幣的一小部分。
值得注意的是,大多數分解後的 NFT 碎片之間具有可替代性,因此,某個用戶持有的蒙娜麗莎面部碎片不會和手部碎片或是背景碎片相斥(即碎片之間是等價的)。這些不同部位的碎片實際上並不是可替代的(比起臉部碎片,我更樂意花更少的錢購買背景碎片)而現實中,用戶只會持有整個藝術品的一片小小的可替代碎片。
碎片化 NFT 不止是錢的問題。NFT 代表著獨一無二的數位資產,所以 NFT 碎片化還隱含著所有權、身份和社群的概念。
測試網
測試網是區塊鏈的副本,它使開發者得以盡情開發,並測試代碼在主網區塊鏈上將是何種運行情況。當開發者在區塊鏈上部署了智能合約後,儘管有些智能合約已經不再應用,但只要區塊鏈一直活躍,這些程式碼都是可見的。由於存在這種永久性以及智能合約有可能與大額資金交互,開發者會希望通過在測試網測試以確保程式碼會按預期運行。
在以太坊案例中,有一堆的測試網(比如Rinkby 、Ropsten 和Kovan )可供開發者在不用冒險動用真實資產的情況下,測試自己的程式碼。測試網是加密軟體開發者的開發實踐環境。
水龍頭
水龍頭會分發「虛假」 ETH 給開發者,所以他們能用這些測試幣在測試網測試智能合約。開發者需要 ETH 部署智能合約並與之進行交互,但與主網的 ETH 不同,測試網的測試幣不具有實際的經濟價值。水龍頭是開發者獲取 ETH 測試幣的簡便渠道。
設想你是一名開發者,準備在以太坊上部署智能合約。假設你手頭上的智能合約將處理一些資金,可能類似於一個去中心化的交易所(在下文的去中心化金融部分有探討)。首先,你想在測試網上測試智能合約。以確保程式碼的運行達到預期。你將需要一些測試網的 ETH 來運行智能合約。
然而,要謹記測試網只是以太坊區塊鏈的副本,所以測試網上面的ETH本質上是「虛假」的,因此,這些代幣不能兌換成主網鏈的 ETH。如果讀者想用以太幣測試合約並觀察它的實際運行,那麼水龍頭可以方便用戶獲取 ETH,並在測試網上盡情使用/揮霍。
預言機
根據需要,預言機可以用來連接區塊鏈和外部系統。在某些時候,可以創建在以太坊上的應用,希望與非以太坊網路所保護的外部數據流進行交互。一些數據不得不從鏈下獲取,就如今天的天氣或者籃球比賽的分數。因此,預言機是通向「現實世界」的接口。
為了農作物的保險起見,預言機可用於查詢弗洛里達州靠近橙子種植地的天氣,或是用於驗證去中心化體育博彩應用的記分。預言機具有潛在的信任隱患(因為構成區塊鏈的計算機網絡無法真的驗證弗洛里達的天氣如何),但是對於這些需要預言機的應用來說,有良好的方案可以解決這一隱患。
預言機提供商 (如Chainlink ) 構建了某種系統以試圖確保其預言機不易受攻擊 (但是單個預言機仍然是區塊鏈上易受攻擊的弱點)。讀者可以設想一下:為預言機系統 (由多個預言機組成) 建立一種共識機制,儘管其中存在易攻擊點 (因為鏈下數據總是可能會以某種方式被操縱),但是仍然需要9/16 個預言機對預言機網絡的訊息達成共識。或者類似的機制。
內存池
當一筆交易已被用戶提交,但是還未被驗證和打包上鏈,這種待處理的交易會被發送到一個等待區域,叫做內存池。
在處理交易之前,網絡中的計算機節點會驗證交易的有效性。舉例來說,帳戶在發送交易時,可能會花費超過帳戶內的有效資金,或是可能出現私鑰與發起方錢包(更多請看下文的錢包和身份認證的部分)的公鑰不匹配的情況。當網絡中的計算機在驗證這些潛在隱患時,這些待處理的交易就在內存池中等待。
在技術上而言,網路中的每個參與者都有自己的內存池,但為了讓入門級別的讀者更好理解,把內存池想像成所有區塊鏈交易的等待區域是可以接受的。通常,交易在內存池中等待幾秒鐘到幾分鐘不等,這取決於需求量(下文進一步討論可擴展性)。
以太坊上待處理的交易可以在數據供應器上看到,比如 Etherscan。
側欄 – 用戶和應用如何與以太坊交互?
用戶幾乎都是通過如 Chrome 等瀏覽器使用網頁應用。這些網頁應用使用特定的庫(如 web3.js 或者 ethers.js )建成,這些庫使得網頁應用可以直接同區塊鏈節點實現交互。
開發者建立的應用,通過節點運行客戶端軟體的方式與以太坊進行交互。在下面的示例中,運行的客戶端是 Geth,它是一個用來與以太坊區塊鏈交互的命令行介面。也有像 Infura 這樣「節點即服務」的供應商,它讓開發者得以便捷地與服務供應商控制的節點進行交互,這和開發者如何利用AWS 訪問伺服器空間的過程是類似的。接下來,這些節點可以在以太坊上與智能合約和單個帳戶餘額產生交互。
這和當下其他軟體產品的後端 VS. 前端大不相同。在左下圖表中,我們可以看到一個用戶如何連接傳統的網頁應用。
在這個圖的旁邊,是一個基於以太坊的應用的架構例子。兩者極其類似!區別就是,以太坊作為一個後端基礎設施服務於加密應用,這使得它具有全球化、無需許可和抗審核的特性。
03|錢包和身份
根據設計,區塊鏈使得用戶能夠自我保管資產,但錢包的作用不僅是給了用戶自我託管的權利,它還是用戶在加密世界的自我呈現。在這一部分,我將介紹 DAO 和身份的關係,以及用戶如何保證錢包安全問題。
錢包
將你的資產存在加密錢包中,就好比將現金存在物理錢包裡。但是這些加密錢包還儲存著代表你和你的行為的訊息,例如你交互過的應用以及用該錢包做過的交易。
需要記住的是,根據設計,區塊鏈交易是公開透明的,由此,當你使用錢包在以太坊上做些什麼的時候,你的錢包管理著關於這些交易的可追溯、公開的數據。這些可追溯數據強調了 web3 中持有自己的數據的理念—— 你的資產、交易歷史、與去中心化應用交互的數據會隨著你的錢包移動。而且,與物理錢包相區別的是,許多加密用戶會使用多個用途不同的加密錢包。
在這裡,還需要了解其他的定義才能完整地解釋錢包的概念:
公鑰
這是一行長程式碼,代表錢包的對外地址。公鑰好比你的家庭地址;這個地址是獨一無二,不是秘密(公共記錄等)。而這個地址對應著一個家庭(或在這個案例中,地址對應著你的一個帳戶)。
你可能會與想給你寄信或禮物的朋友分享你的地址,但就算有人在當地政府的財產記錄中看到你的家庭地址,那也沒什麼。如果有人看到你的公鑰,那也是沒問題的。
私鑰
在另一方面,私鑰是錢包的密碼,所以不能讓別人知道你的私鑰。私鑰會對應特定錢包的公鑰,因此,如果有人得到了私鑰,他們可以完全訪問錢包。
私鑰就像家裡的鑰匙,你並不介意有人隨機知道了你家的地址,但是如果他們有你家的鑰匙,那你必然惴惴不安。再次重申—— 任何人得到了私鑰都可以接入對應的錢包,不要將私鑰告訴任何人,也不要儲存在別人可以找到的地方。
側欄 – 公鑰和私鑰的原理是?
公鑰和私鑰背後的機制是非常重要的基礎知識。基本上,公鑰和私鑰是用於加密和驗證身份的一種方法,叫做私鑰密碼學。
謹記公鑰是面向外部公開的。當用戶向其朋友的錢包發起交易時(使用朋友的公鑰),就相當於給交易上鎖,只有當用戶的朋友確實持有接收方錢包的私鑰時,才能把鎖解開。儘管交易是可見的(因為它存在公鏈上),但沒有特定私鑰(私鑰對應的持有資產的錢包)的情況下無法解鎖這些資產。
不管你是以太坊上搭建項目的開發者或者只是用戶,一定要了解公鑰和私鑰的區別,這很重要。誤用(或者放錯)公私鑰可能造成嚴重的資金後果,並且,這和忘記中心化網站上的密碼不同,應用開發者無法幫助用戶恢復密鑰。隨著更多用戶創建加密錢包並在區塊鏈上交易,這種交易模式將會更為標準化。同時,注意學習曲線以及幫助向其他用戶解釋也尤為重要。
助記詞
一組助記詞(通常是 12 到 24 個隨機的詞)是錢包在緊急情況下最終的錢包恢復工具。它需要像私鑰一樣被同等保護起來,因為丟失助記詞或者將它保存在會被發現的地方,就意味著錢包的一切都暴露了。用戶一定要採取合適的方式保存助記詞,保證其安全性和機密性。
錢包應用的開發者無法訪問助記詞,所以,如果讀者丟失了自己的密鑰和助記詞,那麼你的錢包就不能再恢復。如果僅僅丟失了私鑰,那還可以用助記詞來恢復錢包。
託管錢包
這類錢包由託管方(任何負責管理錢包資金的中心化實體)負責管理,比如一個常規的 Coinbase 帳戶就是託管的。這些託管者負責管理錢包(因此,如果用戶使用了一個託管錢包,就不必保管自己私鑰)中的基本資產,為提供用戶更為中心化、更順暢的用戶體驗。
這種用戶體驗通常不包括加密原生的身份認證機制,例如,一位用戶可以使用 Google 郵箱地址和密碼登錄 Coinbase 的帳戶。
託管錢包是一種開啟加密之旅的好方式,同時也是兌換現金資產為加密貨幣的實用方法。另一方面,鑑於這些託管者都由中心化機構持有和管理,所以也帶來了去中心化旨在解決的一些問題,比如數據所有權、資訊流控制以及潛在的監管要求。
加密界有句關於託管錢包流行語—— 無鑰即無幣。即便是 Coinbase 的 CEO Brian Armstrong 曾經也提過非託管錢包的重要性,因為託管錢包的提供商會有受到政府監管的風險。對那些傾向於以一種完全去中心化的方式管理自己的資產和交易的用戶來說,非託管錢包是更好的選擇。
非託管錢包
這類錢包的管理者只是……你!
軟件供應商(如 MetaMask , Argent 和 Rainbow 等)提供用戶訪問自己錢包的軟體,但主要的是,錢包資產存放在鏈上而不是錢包提供商那裡。所以,如果 MetaMask 錢包發生了些什麼導致無法訪問,那麼用戶可以跳轉到 Rainbow 錢包,導入他們的錢包(不用得到 MetaMask 的允許)並通過 Rainbow 操作自己的資產。還有一種非託管硬體錢包,它的私鑰直接保存在物理設備中(通常是看起來像 USB 的小金屬物件)。
非託管錢包的使用伴隨著管理公鑰、私鑰和助記詞的負擔,但這種錢包給予用戶以自治權(直接持有資產)和訪問以太坊世界的唯一身份。以太坊應用允許用戶使用以太坊登錄(Sign in with Ethereum, SIWE ),即使用自己的非託管錢包登錄。
由此,非託管錢包代表了用戶的身份,這些錢包擴展了加密界的設計空間,比如關於身份、憑證和所有權的新思維方式。
社會恢復錢包
這是由一些非託管錢包提供商支持的一種錢包恢復策略。這種錢包不需要助記詞(有用戶丟失過助記詞),用戶可以委任其社交網路中的其他人,驗證錢包是否是否對應於它應該對應的人。通過社交恢復錢包,用戶可以基於其社交圈的信任網路作為其非託管錢包的後盾,同時仍然保留非託管錢包的自我託管/去中心化/單點登錄的優勢。Argent 是社會恢復錢包的一個用例。
側欄 – 用戶如何注意錢包的使用安全?
我不打算在這一欄目用圖表,因把所有有關錢包安全的必要信息放進單個圖表並不現實。在加密界中,錢包的安全性至關重要,值得我們耗費一些時間探索資金管理的最佳操作。
@ Punk6529 發布了一篇很棒的推特長文,涵蓋了安全使用錢包需要注意的所有訊息。Vitalik 就此寫過大幅的篇章論述社會社交恢復錢包的重要性。而這裡是來自硬體錢包供應商 Ledger 關於錢包安全的更多資訊。
這裡是 Punk6529 長推文中的一些亮點,不過我強烈建議讀者自行上推特閱讀這篇推文:
與公鑰不同,永遠不要將私鑰透露給任何人。如果有人獲取了你的私鑰,那就玩完了。
地址/公鑰:你的郵箱地址(可以共享)
私鑰:收件箱的密碼(永不共享)
錢包:保存私鑰
助記詞:私鑰恢復系統(永不共享)
密碼:可選項:創建新錢包的額外密碼(永不丟失)
安全性和彈性是相悖的目標:將私鑰打印在宣傳單的行為極具彈性,但你的 NFTs 將會不翼而飛(私鑰洩露了)。你可以通過摧毀私鑰的方式輕鬆解決安全性問題,而後果是,你本人也無法訪問自己的 NFTs。平衡安全性和彈性這兩個目標是門藝術。
以太坊域名服務(ENS)
以太坊域名服務是為以太坊區塊鏈而生的開源域名系統,某種程度上類似於傳統網站的域名提供商。ENS 將以太坊上的地址映射為人類可讀的名字,因此我才能使用譬如 “ brunny.eth ” 作為我的地址,而不是這一長串的公鑰:0xF67cAEbBbE7b630d137d2901637C02899ED3211b。
讀者可以在自己的加密錢包(託管的或者非託管的)裡直接嘗試一下:創建一筆發送少量 ETH 的小額交易,不要用我的公鑰,而是把 “ brunny.eth ” 作為接受者。這個服務會匹配 “ brunny.eth ”和對應的錢包地址。
總的來說,作為公共物品,ENS 域名對以太坊生態系統中的身份而言十分重要,因而它們值得有自己版本的域名系統。
去中心化自治組織(DAOs)
DAO 是加密原生的組織形式。它可以是基於加密原生規則進行自我管理與組織的公司、非營利機構、社會團體或是其他任何類型的組織。這裡的加密原生規則是指類似於社群所有權、透明性和去中心化等概念,而值得注意的是,去中心化有一個頻譜,而不是非開即關的兩種極端。
不似傳統公司在實體創建和領導組織架構方面的中心化持有和管理,DAO 則為無中心實體下決策的加密原生項目和商業的經營而設計架構,並致力於爭取項目的社群所有權。許多 DAO 的另一個願景是完全去中心化和民主化的實現。也就是,DAO 的各種決策由主要參與者以民主的方式票選得出。DAO 不僅能針對鏈上的應用級別產品的變動進行投票,還能發揮獎勵和激勵系統參與者的作用。
一部分 DAO 確實十分接近自治的程度,某種意義上,自動執行的智能合約程式碼運行著 DAO 的許多函數。這方面的一個例子就是 DeFi 中的 DAO,這種 DAO 的核心價值定位是,對於 DeFi 中服務於某些目的智能合約的去中心化維護。大多數 DAO 向著去中心化的方向逐步發展,這其中的大部分更類似於與銀行帳戶的多人聊天,而不是真正意義上的自治化組織。
DAO 實際上是各種事物的社會副產品,包括無需許可區塊鏈、非託管錢包、身份認證工具(如ENS 等)以及生態參與者的共享意願。DAO 值得用專門的一部分展開描述(甚至是用整篇指南!),但我個人觀點是,大家在加密界中參加的 DAO 正是重新定義數位原生身份的關鍵,所以在本章節中與身份一起談 DAO 最說得通。
04|去中心化金融
毋庸置疑,DeFi 是目前以太坊最為成功的用例,超過 1000 億美元的資產鎖定在以太坊的 DeFi 協議當中。DeFi 領域還擅於使用一些令人困惑的術語。在這個小節,我將從廣義角度界定 DeFi,深入探討這些令人困惑的術語,闡述 Uniswap 作為一個去中心化交易所如何在以太坊上運作。
去中心化金融(DeFi)
去中心化金融指的是任何的不存在中心把關人且完全在區塊鏈上運行的金融應用、交易所和系統。
如今,各式各樣的區塊鏈上活躍著數以百計(如果還未達到成千上萬的程度)的 DeFi 項目,從去中心化交易所到借貸協議,再到選責權和期貨合約,應用範圍很廣。DeFi 應用的首要目標在於重新思考:在沒有中央銀行掌控權力的世界體系中,如何通過去中心化的形式實現舊式銀行系統提供的金融服務。
有案例給出了答案,讀者可以試想一下在股票市場買進股票份額的情景。當 Sally 透過中介(Robinhood、 Charles Schwab 和Vanguard 等)購買了一股特斯拉股票,這一股會輾轉多個中介之手後 Sally 才能拿到。
一般而言,當系統正常運行,這種輾轉多個不同中介的行為不會被一般大眾發現。但有時會發生糟糕的情況(例如,2008 年全球金融危機或是 2021 年的 Gametop 股票事件),導致系統崩盤(如出現負油價和交易被取消的情況)。
系統崩盤後,人們希望尋找這場混亂的罪魁禍首。可當他們開始掘地三尺的時候,卻發現傳統金融市場遠沒有他們所想的那樣透明。
去中心化交易所(DEXs)
它是首個主要的 DeFi 構建塊。區塊鏈激活了一種新型交易所,它無須經過不透明的中介環節和半官方機構,就能直接和智能合約進行交易。
還是舉 Sally 購買特斯拉股票作為例子,她不再需要通過中介經紀公司(例如 Charles Schwab )買入股票,這種中介會和做市商(比如 Citadel )進行交易,兩者都受到於美國清算所(如DTCC)施加的約束。而是和 Uniswap 智能合約做交易!智能合約的程式碼都是透明公開的,因此,她可以看到資金流動的過程,不會被非透明的中介蒙蔽雙眼。
這些去中心化交易所運用區塊鏈技術和經濟激勵,基本上為任意兩種貨幣搭建了市場(比如 BTC 和 ETH,或者美元和歐元等)。以下我將說明,作為佔據市場份額最多的 DEX,Uniswap 如何進行運作。
為了解這些去中心化交易所的運作方式,我們需要先界定一些額外的術語:
流動性提供者(LPs)
在上面的 Sally 案例中,它所描述的不透明中介在傳統金融系統中確實起到了有效作用:為系統提供流動性。而在傳統的金融體系中,Sally 可以隨時賣掉自己的股票,幾乎任何時間或至少在常規的交易時間內都可以,因為中介便是雇來為Sally 和其他股民提供流動性的人。
那麼,去中心化交易所協議中的智能合約哪裡來資產給它進行交易?答案是流動性提供者。DEX 給予個體通過提供流動性而獲利的機會,當有用戶與智能合約交易資產時,系統會給流動性提供者返利一小部分由交易產生的手續費。
對 LP 來說,最為知名的是 Unswap 的模式,他們需要在智能合約中存款兩種具有相同價值的代幣對。再度重申,LP 把存款放進智能合約中,以獲取一部分交易手續費。LP 可以將作為流動性存放進去的代幣隨時提取出來,但這樣的話,他們顯然無法獲得未來交易費用上漲的分紅。
自動做市商(AMMs)
這是 DEX 的一種類別。自動做市商是指運用算法設置價格的智能合約。在此,Uniswap 的恆定乘積公式( x*y=k ) 最有知名度,然而這超出了這篇指南的範圍。AMM 只是一種無需人為設置價格的公式或機制。
穩定幣
穩定幣是現實貨幣的數位化代表,它們代表著與其掛鉤的貨幣的價值,只不過僅作為數位貨幣在區塊鏈上流通。
DeFi 使得用戶能夠使用加密資產大展拳腳,卻難以使用戶和投資者在固定的價格範疇內管理自己的資產,這是由於加密資產的價格並不穩定。在去信任和去中心化的區塊鏈上,穩定幣作為一種波動較小的資產存在,同時還作為對比加密資產的參考價格。
通常來說,穩定幣與美元掛鉤,但也有其他的穩定幣。不管是中心化還是去中心化的穩定幣,每一種都有自己的機制,以維持它們與其錨定的貨幣在價格上的 1:1 掛鉤關係。誠然,加密貨幣正在顛覆全球金融系統,然而主要的全球貨幣(如美元、歐元和日元等)作為參考價格依舊有效。
總鎖倉價值(TVL)
TVL 是指鎖定在特定平台的智能合約中的總額價值。TVL 概念也能應用在 DEX 智能合約以外的語境,因為除交易所以外的其他應用也可能會有流動性提供機制(比如借貸平台)。
Uniswap 的總鎖價值達幾十億美元,而 2022 年初以太坊上的各種應用加起來 TVL 超過了 1000 億美元。
側欄 – Uniswap怎麼運作?
首先,先談談用戶體驗。當用戶想用 Uniswap(或其他交易所)兌換代幣時,該用戶只需在一個簡易的前端介面進行操作即可,這個介面是 Uniswap 基於更加複雜的智能合約構建的。如下圖所示,用戶可以把 ETH(或其他代幣)兌換成其他資產,猶如使用自動販賣機。用戶可以連接錢包並將任意一種代幣換成其他代幣。非常簡單!
然而,幕後到底發生了什麼?一起看下圖中的藍色方框。這是 Uniswap 的智能合約,是流動性提供者存放其代幣的地方(例子中用代幣 A 和代幣 B )。
藍色方框的左邊描述了 LP 和質押池的關係;LP 存進兩種資產,作為交換,他們會收到質押池代幣,這種代幣相當於流動性提供者可以贖回他們的質押資產的一個憑證。質押池代幣可以隨時贖回 LP 最初質押在智能合約的資產(在這裡,交易者要警惕接下來提到的「無常損失」。)
上圖中的另一端是用戶。用戶在無需接觸質押池 LP 的情況下,進入介面並在質押池中將一種代幣兌為另一種。並且,用戶會支付一小筆手續費,它會均等地分給質押池中的所有 LP 。
這種機制很酷。我在職業生涯的早期便開始學習金融知識,所以,當我了解到去中心化交易所時,它比比特幣的「數位黃金」和以太坊的「世界計算機」隱喻更能使我興趣盎然。如果沒有公鏈這種去信任基建的存在,那麼 Uniswap 只會是黃粱一夢。還有什麼是我們今天不敢妄想而明天卻成為主流的?
截至 2022 年初,Uniswap 的月交易量約為 600 億美元。
接下來提及的術語(以及文本中介紹性定義之外的內容)也許需要讀者自行深入探索了。然而,它們也可能是新用戶剛踏入以太坊圈子,就會接觸到的第一批術語概念,因此,我堅信它們會極大地影響剛進圈的新用戶,使他們困惑不已。因此,他們可以多看看文末的更多資料。
流動性挖礦 (Yield Farming)
如名所示,流動性挖礦是指透過為 DeFi 應用提供流動資金的方式收割收益的行為。這些應用提供誘人的獎勵作為使用的回報。如果有朋友向你透露其在 DeFi 的年收益率達到 100,000%,那他們說的就是流動性挖礦。
許多 DeFi 應用需要大筆資金注入平台(流動性,如前所述),作為體現其應用價值的關鍵功能,無論是什麼功能(如交易資產、借貸等)。這些 DeFi 應用只有兩條路能走:籌募 10 億美元並由應用提供流動性,或者給予流動性提供者以可觀的獎勵,並使這些流動性挖礦者成為平台的流動性提供者。
等一下?這些可觀的獎勵從何而來?
好吧,這些應用正在將這些高額獎勵大肆宣傳為新型激勵機制,但現實是,這些獎勵通常只是(昂貴的)客戶購置成本。也就是說,這些應用的代幣在某種程度上代表了應用的價值,而他們通過應用(客戶購置成本)給用戶分配獎勵。這些獎勵是原生代幣與其他代幣類型的混合產物。
因此,流動性挖礦指的是尋找這種收益並為最有機會獲利的應用注入資金的實踐,它幾乎可以視作 DeFi 應用上的一種天使投資形式。
質押
這個術語用得五花八門,但實際上,質押僅是指在一段時間內鎖住資產並從鎖倉中獲利。
一般,這個概念在中心化金融領域應用,用戶質押代幣以換取獎勵,但是質押也能運用在其他領域中。許多DeFi 協議利用質押方式控制其協議原生代幣的流動供給,好比中央銀行試圖管控貨幣供給。激勵投資者短期鎖定自己的代幣以期經濟報酬,這聽起來就像債券。
無常損失(Impermanence Loss)
這個概念指的是在供給兩種以上代幣的流動性時,流動性提供者需要承擔的潛在風險。在上文Uniswap 的例子中,流動性提供者存入兩種等值的代幣到 Uniswap 上,並獲得質押池代幣。當 LP 想要提回資金時,質押池代幣可以用於贖回自己的兩種代幣。
這裡存在的細微差別是,LP 存款的兩種代幣都有各自的價格(還有價格波動)。當 LP 想用質押池代幣贖回兩種代幣時,兩者的價格可能已經是相去甚遠:可能其中一種代幣價格下跌了 5%,而另一種則上漲了 10%。
代幣之間的價格差距也許意味著 LP 最好應當只持有一種的代幣,而不要持有從交易費獲益的質押池代幣。重要的是,無常損失被貼上「非永久的」標籤,是因為在 LP 真正贖回質押池代幣之前,這種損失只是「帳面損失」。也就是說,如果 LP 不選擇贖回代幣,而是繼續提供流動性直到兩種代幣的價格相互靠攏,那麼無常損失就消失了。
關於不同類型質押池的 DEX、LP 以及無常損失的優質初級讀物可以在這裡找到。Daily DeFi 上的無常損失計算機演示了幾個例子。
05|Layer2 和權益證明機制
2022 年被俗稱為以太坊的「 L2之年」,萬眾矚目的權益證明機制的過渡預計在夏季進行。這個部分將深入討論區塊鏈的三角悖論、以太坊的未來以及 rollup 的運作原理。
區塊鏈三角悖論
每一條區塊鏈都涉及三種概念之間的權衡:去中心化、可擴展性以及安全性。
一般的共識是( 2022 年早期),以太坊在去中心化和安全性上做得較好,但在可擴展性上稍遜一籌( gas 費用好高!呃啊啊啊啊啊!)。希望在近期會有一些改進計劃可以解決以太坊的區塊鏈三角悖論。
下面敘述了這三個方面的考量,對於理解三者的平衡對單條區塊鏈的影響而言十分重要。
去中心化
比特幣白皮書準確地解釋了去中心化概念(我自己加粗強調了):「只需要一個基於加密學證明而非信任的電子支付系統,允許任何兩個意願方在無需信任第三方的情況下,直接與彼此進行交易。」
區塊鏈扮演了基礎設施層的角色,使得全世界的用戶可以使用自己計算機與彼此互動,而不用經過中介環節。
區塊鏈的去中心化就好比一個頻譜;如果區塊鏈可以被少數用戶關停,或者網路的參與成本過高( gas 費用或配置計算機參與網路的成本),那麼區塊鏈則會向中心化的一端傾斜。中心化程度越高,權力壟斷和剝削的風險也越高。
安全性
安全性是指基礎鏈被外界攻擊或控制的難度。有效的經驗法則是 51% 的大多數原則;如果有人能夠控制特定鏈上 51% 的處理交易的計算機,那他們也許可以非法入侵並損害網路的安全性。
這裡有更深層的技術考量,但 51% 的佔比幫助用戶釐清安全性、去中心化和可擴展性之間的權衡關係。為特定區塊鏈打包交易的獨立計算機越多,表明其去中心化和安全性程度越高(更多計算機=有人控制51%的網絡節點的概率很低)。
然而,網路中的獨立計算機越多,也意味著每台計算機需要同更大的計算機網絡進行交流,從而導致運行速度下降……
可擴展性
網路運行速度下降意味著我們需要找到提高可擴展性的方案。當區塊鏈上的交易需求變多時,網路也會隨之變得異常擁堵。
例如,以太坊也曾有過 gas 費瘋漲的時期,尤其是網路需求爆滿的時候。這些需求致使交易打包上鏈的成本水漲船高,同時造成網路擁堵、網路運行速度下降。
零知識證明
這個概念並非具體的擴容方案,但它是展開探討擴容方案之前所要闡明的一個重要概念。零知識證明是一種無需獲取特定訊息就能驗證事物有效性的加密學方法。
比如,假設我是一名 Craigslit 的買家,正打算從網路中的任意用戶手裡購買一台電視。這時,有人私信告訴我,他們手上有我正在找的電視,而他們的資料是匿名的。
作為一名買家,我希望在與賣家碰面之前,能確保他們真的有電視。但是賣家卻不想將他們的個人信息(駕照、居家地址、室內的圖片)洩露給網路中的隨機用戶。最重要的是,賣家也想要知道我是不是一個真人!但雙方都不想分享個人資訊。
通過零知識證明,我可以向賣家證明我是一個真實的人,在不告訴他們我是誰的前提下驗證身份。另一方面,賣家也能證明他們確實擁有一台電視並且是合法的賣家,同樣不用洩露任何敏感的個人信息。
這其中包含著錯綜複雜的加密學基元,因此,上文只是非常簡概的介紹。大多情況下,零知識證明能夠解決加密界中的安全性、可擴展性和隱私挑戰問題。
Layer2 擴容方案
用戶非常希望可以在以太坊上大展拳腳,因為它是世界上最為去中心化且最為資深的智能合約計算平台。以太坊已經吸引了分佈最廣的開發者網路,進行基於區塊鏈的應用創建。但這些創建活動帶來的後果是,打包交易到以太坊區塊鏈的需求有時會造成 gas 價格過高,這也意味著以太坊用起來既慢又貴。
區塊鏈的三角悖論暗示著,任何優化過安全性和去中心化程度的區塊鏈,將在可擴展性上做出讓步。由於去中心化和安全性對區塊鏈的願景承諾具有重要推動作用,所以可擴展性就成了最難解決的部分。以太坊將賭注壓在了一大波改進浪潮上,希望由此解決可擴展性問題。
其中一種改進是,從用戶先與以太坊區塊鏈本身(即“ Layer1 ”)互動,改為與 Layer2 擴容方案互動。
從根本上,這表明大部分以太坊主網上的交易和應用會轉移到 Layer2,它繼承了以太坊的安全性和去中心化,但卻比以太坊本身的吞吐量高幾個數量級。以太坊 Layer1 將會專門負責共識問題,而它的 Layer2 則會負責執行交易和代碼。
Rollups
Rollup 會在其獨立的區塊鏈中處理一批交易。在自己的鏈上執行這些交易後,Rollup 將所有的交易壓縮成一個小型的訊息數據包。這些小數據包會被「發送」到以太坊的Layer1,這表示 Rollup 在繼承了 Layer1 安全性的同時擴大了可以處理的交易數量 (因為訊息被壓縮了)。
這些小得多的交易訊息包裡包含著一些證明 (證明這些交易是基於以太坊的規則下處理的)。
這聽起來似乎是在去中心化上做出了妥協。但是 Rollup 一個關鍵的點在於以太坊可以只對證明進行驗證,而不是對每一筆交易進行證明的工作,這節省了指數級別的工作量(因此讓以太坊更加可擴展!)。
由於以太坊擁有決定 Rollup 交易是否可以發布上鏈的最終確定權,所以,在不向中心化妥協的情況下,所有的 Rollup 交易仍然由以太坊提供安全保障。
以下是各種類型的 Rollup 。主要的區別在於它們向以太坊證明交易有效性的方法。
Optimistic Rollup
這種類型的 Rollup 會將交易證明的記錄保存下來,在以太坊請求具體證明時,它才會向以太坊出示這些證明。Optimistic Rollup 不會向以太坊主網證明每筆交易的有效性,而是在必要的時候提供證明,這促使可擴展性問題得到緩解。
ZK Rollup
這一類 Rollup 不會展示交易內的所有細節,而是利用零知識加密學的方式驗證交易的有效性。上面已經解釋過零知識證明了,而重點在於這些 Rollup 只展示更小的零知識證明而不是整個交易過程,由此節約了許多的區塊空間。
分片
分片是指將區塊鏈分割成小分片以減少擁堵的過程。分片促使以太坊更加容易訪問。本質上,節點只需要存儲他們所連接的特定分片的數據,而不是整個以太坊區塊鏈的數據,這也讓以太坊更加可擴展。
分片是以太坊區塊鏈改進計劃的一部分,將在 The Merge 之後發揮舉足輕重的作用。
信標鏈
信標鏈是以太坊從 PoW 到 PoS 過渡的基礎。現在,信標鏈和以太坊區塊鏈並行運行,並且信標鏈引進了質押機制,這是向 PoS 過渡的前提。
很快,信標鏈會和現在的以太坊區塊鏈合併,正式引入 PoS 共識作為以太坊區塊鏈的共識機制,標誌著以太坊未來的重要轉折點。
The Merge
以 The Merge 這個術語可以恰到好處地結束這篇指南。在接下來的幾個月,以太坊主網和信標鏈將進行合併,這是區塊鏈產業有史以來最為廣受矚目的事件。
僅在幾個月後,以太坊的 PoW 時代就將迎來它的落幕,而這種共識機制轉換的反響可能是異常轟動的。如果因為某些原因,The Merge 失敗了,那麼它必將引起整個加密界的軒然大波。但如果合併成功,這意味著我們離以太坊成為全球結算層這一天更接近了。
資料
到這就結束啦!這是一篇入門以太坊的簡易指南。
在深入了解特定的區塊鏈特徵之前,我們首先了解了區塊鏈是什麼以及區塊鏈為何如此重要。
接著,我們探討了一些構建在以太坊區塊鏈上的拔尖應用;錢包、DeFi、DAOs、NFTs 。
之後,我們用以太坊的未來探討來結束這篇指南,它主要探討了權益證明共識機制的變遷,以及描繪了以太坊希望如何解決區塊鏈的三角悖論。
所有這些定義都是複雜話題的簡化版本,但我還是希望這篇指南可以激發讀者們深入探索以太坊世界的慾望。在下文,我為那些希望進一步學習的讀者收集了一些資料。如果你們希望向我提出問題或是給予反饋,來推特上給我留言吧!
感謝 Josh Stark、Bethany Crystal、Daniel Schlabach、Nico Kuzak、Adam Tzur、Naz Rizvic、還有Miguel Lemos,謝謝你們貼心的幫助還有反饋!
接下來去好地方:
以下資料是我和 Josh Stark 在 2021 年底開始編譯後,由以太坊社群在這個文檔中收集而成。
通用資料
- What is Ethereum? | ethereum.org – 結合涵蓋一些前沿話題的資料鏈接來學習這個話題|
- ETHHub – 這個社區保存著覆蓋各式各樣的以太坊話題的資源· Ethereum Foundation
- Youtube Channel – 以太坊會談和社群開發者電話會議
- Devcon archive – 每年 Devcon 會議的所有影片和談話的存檔資料
- Scott Sunarto’s Working in Web3 Handbook – 包含許多話題的手冊
- Blockchain@Berkeley Courses – 免費的加密貨幣線上課程
- Finematics – 解釋以太坊上許多話題的影片,如web 3, defi
- Fellowship of Ethereum Magicians – 為加密貨幣社群提供一席之地的論壇,任何人都可以參加、創建話題以及主要探討以太坊生態昔日的 EIPs 和技術難題。·
- text – 囊括各種以太坊相關話題的以太坊維基百科。
文章、影音和研究
- Week in Ethereum News
- Paradigm Research
- https://newsletter.thedefiant.io/
- Bankless
- The Daily Gwei
- The Block
- Decrypt
- Dark Star
- Messari Research Hub
- a16z Crypto Canon
- Linda Xie’s Beginner Guides
- Tim Beiko’s AllCoreDevs Updates
- Ben Edgington’s What’s New in Eth2 blog
- Polynya – Medium
- Ethereum: The Infinite Garden (feature documentary film in production)
- Gaby’s Web3 Reading List
Podcast
- Into The Bytecode
- Bankless
- The Daily Gwei
- Into The Ether
- a16z
- Into The Ether
- Unchained
- Epicenter
- ZK Podcast
- Uncommon Core
- Redefined Life
書籍
這篇指南的連結
- Graphical Guide to Understanding Uniswap
- Ethereum EVM Illustrated
- Understanding the Ethereum Yellow Paper
- Understanding Ethereum
- Punk6529 tweet thread
- Understanding Rollup Economics
- The Architecture of a Web3.0 Application
📍相關報導📍
以太坊 Ropsten 測試網完成合併!Merge主導者大讚:過程完美、礦工一詞已被取代
DeFi 科普|去中心化金融竄起,什麼是「自動做市商 AMM」?
讓動區 Telegram 新聞頻道再次強大!!立即加入獲得第一手區塊鏈、加密貨幣新聞報導。
LINE 與 Messenger 不定期為大家服務