以太坊會是區塊鏈的終極形態嗎?
原文標題:《區塊鏈抽象和互操作性2.0》撰文:謝晗劍,Nervos首席架構師,秘猿科技首席執行官,前以太坊核心研發團隊成員
比特幣于2009年誕生后,我們很快就迎來了所謂的「山寨幣」時代。人們在比特幣的基礎上衍生出了諸多想法,并付諸實驗,一時間涌現出成千上萬種加密貨幣。一些新的加密貨幣活了下來,另一些很快消失在我們的視野中。其中最成功的莫過于以太坊了。為什么是以太坊?
在以太坊之前,每當有人推出新的區塊鏈應用,就會有一種新的「山寨幣」被創造出來以實現該應用。以太坊終結了這種繁瑣的創新方式,通過引入一種通用編程模型讓開發者可以在其上構建任意去中心化應用。有了以太坊,開發者得以卸下編寫共識代碼和構建點對點網絡的負擔,將更多寶貴時間投入到商業邏輯上。以太坊之于其它「山寨幣」就像iPhone之于它的功能手機前輩,為我們開啟了dApp的寒武紀大爆發。
回顧這段歷史的時候,我們很容易理解以太坊之所以能發展成最有價值的區塊鏈的原因——在其它項目還在一次解決一個問題的時候,它就通過系統化的方法一舉解決了成千上萬個問題。而以太坊提供系統化解決方案的方法,是通過在一個不同的層級解決問題:不滿足于回答如何構建下一個應用,而是要回答如何更方便的去構建接下來的一萬個應用——有沒有比「一個應用一條鏈」更好的方法?這樣一種對其它「山寨幣」的降維打擊,開啟了屬于以太坊的新時代。由于開發成本大幅降低,dApp得以蓬勃發展。如今,幾乎所有dApp都在以太坊上運行,這讓以太坊成為加密貨幣的佼佼者。
常有人問:以太坊會是區塊鏈的終極形態嗎?還是說未來會出現一個新的區塊鏈,其之于以太坊就像以太坊之于比特幣一樣?下一個時代會是什么樣子?
區塊鏈抽象
以太坊的主要突破是由EVM和賬戶模型構成的通用編程模型,在其上開發者可以實現各類應用邏輯。智能合約模型是一個中間層,將開發者與開發應用不需要關心的區塊鏈底層細節隔絕開來,同時又為開發者提供極好的編程靈活性。以太坊所做的事情正是抽象,如維基百科上對抽象的定義所說:
在軟件工程和計算機科學中,抽象指的是:
在研究某些對象或系統時忽略其物理、空間或時間上的細節或屬性,只關注更重要細節的過程。其本質上與泛化過程相似;
通過復刻各種非抽象對象或系統的共同特征或屬性來創建抽象概念對象。
消息人士:DriveWealth或將從軟銀和Insight Partners融資約4億美元:7月19日消息,據消息人士透露,金融科技創業公司DriveWealth或將在軟銀和Insight Partners領投的D輪融資中籌集約4億美元。
DriveWealth是一家基礎設施公司,其客戶包括Hatch、Revolut、Stake和MoneyLion等。此前,DriveWealth完成了5670萬美元的C輪融資。(TheBlock)[2021/7/19 1:02:57]
從這個角度來看,以太坊就是比特幣和所謂「山寨幣」的抽象。抽象是系統演化的永恒主題,在歷史上發生過很多次。在編程技術的早期階段,我們只能寫著匯編代碼直接與機器打交道,后來人們創造出了高級編程語言和編譯器,將我們從繁瑣的機器細節中解放了出來,只需關注更重要的問題。
起初,我們直接在自己的程序內管理硬件資源,后來我們構建了操作系統作為中間層,代理我們處理那些繁重的任務。再往后,我們又實現了硬件虛擬化,于是應用可以在云端運行。早期的互聯網只有少數幾層協議,如TCP/IP,后來發展出應用層,于是有了HTTP、FTP和SMTP等。如你所見,抽象的例子比比皆是。
因此,我想說的是,新的抽象是演化的標志,下一代區塊鏈必須比上一代更加抽象。從比特幣到以太坊的跨越是初代區塊鏈抽象,同時我相信抽象的進程不會就此終止。如果想要知道后以太坊時代會是什么樣子,我們首先應該思考的是,還可以從以太坊中進一步抽象掉什么。
新的抽象
與比特幣相比,以太坊的通用智能合約模型是一大進步。若要再進一步抽象,一個方向是基于以太坊智能合約模型創建一個更抽象的模型。如果我們更深入探究以太坊模型,我們會發現該模型融入了很多特定的設計選擇,其中比較主要的有:
1.賬戶地址。用戶需要通過EOA來發起交易。EOA地址是公鑰的Keccak256哈希值。2.發送方身份驗證。以太坊使用Secp256k1和Keccak256這兩種特定的密碼學算法對交易發送方進行身份認證。要想創建一筆有效的以太坊交易,客戶端必須實現Secp256k1和Keccak256算法以簽署該交易。這也導致客戶端需要一種安全的方法來管理Secp256k1密鑰對。3.密碼學原語。為了給開發者提供便利,一些事先選擇好的特定密碼學原語被硬編碼到EVM中作為預編譯合約,例如,ECDSA簽名驗證和SHA256哈希函數。同樣的算法,被硬編碼到EVM中比利用Solidity實現要高效得多,前者因此獲得實用性。4.世界狀態結構。以太坊的世界狀態是一個巨大的MerklePatriciaTree(MPT),賬戶就是葉節點。其中每個賬戶也以MPT的形式維護一個自己內部的鍵值數據庫。MPT是眾多可驗證數據結構的選項之一。
Bancor正在構建vBNT費用burner合約和無費用投票:3月11日消息,去中心化交易協議Bancor (BNT)官方發推公布項目開發進展。根據披露內容:1.正在構建vBNT費用burner合約(full Vortex);2.構建無費用的投票;3.開發新的穩定幣池設計;4.分級白名單 (Launch Pad)。此外針對網友提問“持有BNT的人是否可以申請獲得未來項目的白名單”,官方表示,新代幣可以將ETH作為配對資產開放資金池,LPs將增加雙重流動性(TKN+ETH)。[2021/3/11 18:34:43]
對于非技術背景的用戶來說,這些設計選擇看上去不明所以,但是其重要性不亞于共識算法或經濟模型參數的選擇。這些選擇影響著以太坊的方方面面,就好像對普朗克常數進行微調也會給我們的宇宙帶來翻天覆地的變化。構建一個新的去中心化生態就像是創建一個新的宇宙,而這些設計選擇就像是這個宇宙中設定好的物理規律。
當時有這些設計選擇是為了幫助以太坊實現其初始目標,事后看來它們并非最佳選擇。例如,發送方身份驗證算法Secp256k1對設計者來說可能就是順手一選,但是在不支持secp256k1的環境中它帶來了不必要的障礙;通過一份小小的白名單內嵌預編譯合約的做法,使得大部分廣泛使用中的密碼學原語被排除在應用之外;狀態數據結構中使用的MPT也被證明是效率非常低下的,不僅加劇了狀態爆炸問題,還導致了與IO相關的EVM操作碼的定價困難,而定價不當可能會引發DoS攻擊等安全問題。
以太坊社區和其它一些新型協議也注意到了這些問題,并嘗試了不同的解決方案。例如,以太坊通過一系列硬分叉來增加更多有用的預編譯合約,并對操作碼重新定價;Tezos增加了Secp256r1作為新的發送方身份驗證算法,等等。
問題在于,這與人們當時在「山寨幣」時代解決應用需求的方式毫無區別。更麻煩的是,這些設計選擇可能比應用程序更加復雜和難以理解,而且通常不存在最佳解決方案。面對不同的情況,可能會有不同的最優解。即使遇到極少數存在一般最優解的情況,我們也無法保證當下的最佳選擇在將來還是如此。因此,更好的方式是,我們再次從新的層面去思考:與其繼續通過需要核心團隊協調的硬分叉來增加新功能,我們是否可以創建新的抽象并給予智能合約開發者充分的自由?
NervosCKB回答了這個問題,并創建了新抽象的層級。例如,CKB交易是抽象的,因為用戶和開發者不僅限于使用默認的Blake2b-Secp256k1驗證算法,任何人都能將其替換成諸如Blake2b-Secp256r1、Keccak256-ED25519或Blake2b-SHA3-Schnorr的其他方式;CKB-VM是抽象的,里面不包含任何預編譯合約,即使是像哈希函數Blake2b和簽名驗證算法Secp256k1這樣的默認密碼學原語也只是在虛擬機中運行的智能合約,換言之,這些密碼學原語與應用開發者創建的智能合約在同一個環境中運行,沒有任何特權;Cell模型是抽象的,其中每個Cell只是單純的數據存儲空間,沒有任何內部結構,其布局完全取決于開發者,就像我們在sUDT和xUDT看到的那樣。
yearn.finance推出Yearn Partners計劃:3月8日,yearn.finance (YFI)官方發布項目周報。根據周報,yearn.finance宣布推出Yearn Partners計劃。參與該計劃的DeFi協議將可獲得Yearn產品代幣鎖定產生的部分收益。官方表示,yearn.finance不會審核參與參與該計劃協議的代碼,協議安全仍依賴協議開發團隊,但使用yearn.finance用戶界面和合約,則官方將監督合約安全。[2021/3/8 18:24:05]
由于CKB在很多方面都是抽象的,開發者被賦予了更多的自由和新能力。CKB是以太坊的抽象,正如以太坊是比特幣的抽象那樣。抽象讓CKB成為了簡單卻又強大的區塊鏈,并將很多工作轉移到了鏈下。以太坊對比特幣進行抽象的結果是將開發者分成了兩部分:一部分是聚焦于底層區塊鏈的區塊鏈開發者,另一部分是構建應用的智能合約開發者。可以預見CKB對以太坊進行抽象也會將智能合約開發者分成系統合約開發者和應用合約開發者,前者聚焦于系統級智能合約,如密碼學原語、lockscript,甚至是內存管理模塊。
最近以太坊社區已經認識到了區塊鏈抽象的重要性并提出了一些相關的改進。如果這些改進得以實現,我認為它會讓以太坊變得比現在更加抽象,并與其它做不到這一點的項目拉開更大的距離。然而我不認為這些關于區塊鏈抽象的提案能讓以太坊達到與CKB同等的抽象層級,因為要對一個正在運行的生態系統做如此底層的改變是極其困難的,就像我們無法在不破壞宇宙的情況下改變普朗克常數那樣。例如,賬戶抽象會為交易池等重要模塊引入新的安全復雜性——此時每當簽署新的交易時,驗證節點都需要處理任意計算,而非固定的簽名驗證。
抽象也可以從可擴展性入手。分片和Layer2解決方案都存在同樣的問題,即,在某些方面改變了應用的開發方式。例如,跨分片調用或跨Layer2交易在處理方式上可能與Layer1上的合約調用完全不同。Layer2應用開發者還可能會在不同分層上遇到不同的智能合約模型。我們該如何屏蔽這些細節,為應用開發者提供無異于Layer1的流暢開發體驗?這個問題尚無定論,這是我們正在積極挑戰的問題之一。
CKB上的首個通道設計,GenericPaymentChannel(GPC),就是遵循這個思路構建的。GPC旨在為Layer1上的UDT提供一個「透明的」性能擴展層,以便任何UDT從一出生就可以被「通道化」,而無需UDT開發者做任何另外的事情。在GPC中,我們為UDT開發者抽象掉了支付通道協議的細節。Godwoken和Polyjuice是我們的另一個嘗試,這兩個解決方案可以認為分別是CKB上的可擴展性和計算抽象。
CoinCorner增加對比特幣閃電網絡的支持:金色財經報道,英國加密交易所CoinCorner增加了對比特幣閃電網絡的支持。其用戶現在可以通過閃電網絡存入和提取比特幣。[2021/1/7 16:35:56]
互操作性2.0
每一個區塊鏈抽象層級都會給我們帶來新的東西,我們在之前的抽象層級上從未見過的東西。第一次區塊鏈抽象為我們帶來了通用可編程性和互相連接的去中心化應用。下一次區塊鏈抽象將為我們帶來什么?
互操作性2.0必將是新抽象層級孕育的果實之一。我們對數字經濟未來的設想是,公有鏈、許可鏈和中心化系統都將并存。有了互操作性,我們就可以在彼此獨立的系統之間轉移資產并調用智能合約。近年來,人們已經進行了很多關于互操作性的研究和嘗試,并且相信該問題可以通過一系列互操作基礎原語解決,例如多簽公證、中繼和哈希鎖定。
雖然區塊鏈互操作性目前在技術上是可行的,但是與具備無縫互操作性的數字經濟之間還存在缺失環節。
第一,目前的互操作性嘗試只會導致更加嚴重的網絡分裂。Polkadot和Cosmos等項目都定義了自己的標準,并試圖圍繞自己的「交換鏈」建立一個多鏈網絡。此外還有努力搭建直接橋梁的項目,例如實現比特幣和以太坊之間的直接跨鏈。我們很難想象,這些獨立網絡的核心團隊和社區有朝一日能夠坐下來共同商定出一個所有人都遵守的互操作性標準。
第二,更重要的是,即使這些區塊鏈網絡之間具備完美的技術互操作性,用戶依然會被糟糕的互操作體驗勸退。從用戶的角度來看,如果我是一名比特幣用戶,想要將我的比特幣轉移到以太坊上參與DeFi應用,我必須先運行我的比特幣錢包,發起一筆跨鏈交易,然后使用另外一個以太坊錢包。為了完成一次跨鏈操作,我必須安裝兩個錢包應用,保管兩組助記詞,使用兩個地址。這個過程本身非常復雜,而且僅適用于兩條區塊鏈的情況。如果用戶想要與更多區塊鏈交互,必須管理更多助記詞/地址/密鑰對。用戶體驗問題不僅阻礙了dApp的廣泛落地,還破壞了去中心化——區塊鏈的核心價值——因為用戶不得不且一定會選擇中心化服務來避免所有這些麻煩。
為解決上述兩個問題,我們需要一種新的互操作性,我們管它叫互操作性2.0。具備這種新型互操作性的區塊鏈就像是一個「萬維交換港」,可以在無需對方知覺的情況下實現與其它區塊鏈的互操作。想要做到這一點,「萬維交換港」就必須要能理解并執行其它區塊鏈的協議,而非創建自己的協議并要求其它鏈來學習。它就好比是一個「語言通」,能主動學習并會說其他人的語言,這樣就能與使用不同語言的人交流,其他人也更愿意與他交流。
公告 | Monero發布Boron Butterfly更新版本CLI v0.14.0.2:據Monero官方消息,Monero已發布Boron Butterfly更新版本CLI v0.14.0.2。此前2月26日消息,為3月9日硬分叉升級做準備,Monero已發布了Boron Butterfly CLI v0.14.0.0。[2019/3/8]
在加密貨幣世界中,所有協議都由密碼學技術構建。這也意味著「萬維交換港」必須廣泛支持各種密碼學原語,無論其是在現在還是將來的區塊鏈中被使用到。另外,「萬維交換港」還要能理解各種錢包所簽署的交易,讓用戶使用任意一個錢包都能夠使用這個「萬維交換港」上運行的一切應用。
互操作性2.0的這些需求恰好可以通過上面說的新抽象,密碼學原語和身份驗證來滿足。這就是為什么以太坊用戶可以使用MetaMask錢包操控NervosCKB上的資產和dApp而無需進行任何手動設置,甚至不會意識到自己正在使用Nervos應用。不僅是以太坊用戶,EOS、Tron以及其他區塊鏈的用戶也可以在NervosCKB上操控資產或dApp。如果當前的支持列表中沒有你喜歡的區塊鏈,不用擔心,你自己就可以通過創建并部署智能合約來添加支持。這一切都可以通過編寫智能合約來完成,無需請求核心開發團隊和/或實行硬分叉。
在Nervos上運行的應用可以免費獲得互操作性2.0帶來的好處。每一個Nervos應用都可以被所有的區塊鏈用戶群體訪問到,我們將這種應用稱為萬維應用。
作為一名開發者,你可以通過學習如何在Nervos上構建應用獲得比任何其他區塊鏈平臺能提供的更廣泛的用戶群。
作為一名用戶,你只需使用現在用的順手錢包和賬戶即可訪問Nervos上的萬維應用,無需安裝新的應用或適應新的學習曲線。
你可能會感覺自己在使用以太坊或EOS上的dApp,而實際上底層管道和基礎設施都是Nervos提供的。我相信這才是生活應該有的樣子,就像一位互聯網用戶在訪問網站時才不會關心這個網站是用PHP還是JAVA編寫的,使用的是MySQL還是PostgreSQL。用戶根本不關心這些,而這才是對的。
身為開發者,我們有責任創建抽象,向用戶隱藏實現細節,這樣我們就可以持續的用更好的軟件來取代已有的實現,從而不斷提供更好的用戶體驗。互操作性2.0可以將加密貨幣世界變得像如今的互聯網這樣,而這需要通過新的區塊鏈抽象來實現。
更妙的是,除了區塊鏈用戶之外,萬維應用甚至可以觸及一個遠比區塊鏈用戶更大的群體。加密貨幣世界依然是個很小的圈子,我們可以「破圈」而出。區塊鏈錢包和賬戶只不過是另一個賬戶/身份系統,而互聯網世界早已確立了多種身份/賬戶體系和驗證標準,如OpenID、人臉識別和指紋識別等。通過密碼學原語和身份驗證抽象,NervosCKB同樣可以理解廣泛使用的互聯網協議。這樣一來,用戶就能使用瀏覽器和手機來訪問萬維應用,無需安裝任何區塊鏈錢包,無需生成密鑰對,甚至無需保管任何助記詞。通過這種方式,我們可以主動適應現有的互聯網生態,而非創建一個全新的生態。我們的爺爺奶奶不需要費力去學習一些看起來像是魔法的東西就能享受到技術帶來的便利。阻礙互聯網用戶進入加密貨幣世界的壁壘在這里不再存在。
新的大都市
許多現代大都市都是從貿易樞紐或港口發展而來的。威尼斯、紐約、香港、上海和新加坡都是憑借自身的港口優勢而成為高度商業化的城市。在工業時代,我們利用GPS、貨船和集裝箱這樣的互操作技術在不同城市之間轉移資產。如今,我們有了加密資產、區塊鏈和互操作性2.0。更好的互操作性會為城市帶來更多移民、貿易和活力。高樓將會聳立,貨物川流不息,資產在此棲息,人們在此聚集,一座新的大都市從此誕生。
Ref:
https://en.wikipedia.org/wiki/Feature_phone
https://en.wikipedia.org/wiki/Death's_End
https://en.wikipedia.org/wiki/Abstraction_(computer_science)
https://en.wikipedia.org/wiki/Planck_constant
https://iopscience.iop.org/article/10.1088/0143-0807/37/5/055406/meta
https://crypto.stackexchange.com/questions/85831/what-ec-curve-is-used-by-apple-ios-platform
https://hackernoon.com/getting-deep-into-geth-why-syncing-ethereum-node-is-slow-1edb04f9dc5
https://blog.ethereum.org/2021/03/03/geth-v1-10-0/
https://eips.ethereum.org/EIPS/eip-1884
https://talk.nervos.org/t/lay2-pw-sdk-build-dapps-on-ckb-and-run-them-everywhere/4289
https://talk.nervos.org/t/rfc-simple-udt-draft-spec/4333
https://talk.nervos.org/t/rfc-extensible-udt/5337
https://hackmd.io/@SamWilsn/ryhxoGp4D
https://ethresear.ch/t/cross-shard-defi-composability/6268
https://docs.zkproof.org/pages/standards/accepted-workshop3/proposal-plumo_celolightclient.pdf
https://docs.keep.network/tbtc/index.pdf
https://www.r3.com/wp-content/uploads/2017/06/chain_interoperability_r3.pdf
https://www.weforum.org/whitepapers/inclusive-deployment-of-blockchain-for-supply-chains-part-6-a-framework-for-blockchain-interoperability
https://polkadot.network/
https://cosmos.network/
https://talk.nervos.org/t/2-0-nervos-unidapp-dapp/5332
https://pay.lay2.dev/#/
免責聲明:作為區塊鏈信息平臺,本站所發布文章僅代表作者個人觀點,與鏈聞ChainNews立場無關。文章內的信息、意見等均僅供參考,并非作為或被視為實際投資建議。
比特幣
比特幣
比特幣Bitcoin,一種去中心化、非普遍全球可支付的加密數字貨幣,而多數國家則認為比特幣屬于虛擬商品,并非貨幣。比特幣的概念,誕生于2008年署名為中本聰的一篇論文,并于2009年1月3日,基于無國界的對等網絡,用共識主動性開源軟件發明創立。比特幣協議數量上限為2100萬枚,以避免通貨膨脹問題。使用比特幣是通過私鑰作為數字簽名,允許個人直接支付給他人,不需經過如銀行、清算中心、證券商等第三方機構,從而避免了高手續費、繁瑣流程以及受監管性的問題,任何用戶只要擁有可連接互聯網的數字設備皆可使用。比特幣BTCBitcoin查看更多以太坊
尊敬的用戶: HuobiGlobal已完成“HuobiGlobal上線STPT靈活挖礦,交易STPT贏取特斯拉和67萬STPT”活動的獎勵發放.
1900/1/1 0:00:00頭條 ▌灰度BTC信托和ETH信托溢價率達歷史低點數據顯示,灰度比特幣信托溢價率為-14.34%,以太坊信托溢價率為-13.54%,均達歷史低點,灰度GBTC的溢價率已經持續23天保持負值.
1900/1/1 0:00:00Gate.io直播間作為行業內首個交易所內置直播功能,通過多樣性的直播形式為平臺用戶帶來具有深度、有趣、開放的信息內容.
1900/1/1 0:00:00親愛的庫幣用戶: 我們很高興的宣布,庫幣將上線ChainX(PCX)項目并支持交易對PCX/USDT和PCX/BTC.
1900/1/1 0:00:00?1、政策及市場指標資金大幅度流入,又接近2萬美刀,然而市場還是比較謹慎的。合約變化不大,爆倉量也沒啥大的變動。實際上,拉盤引起的爆倉量都是比較少的,下跌才會造成屠殺.
1900/1/1 0:00:00各位朋友們,你們好,我是來自ck平臺分析師老山,下面給大家帶來今天最新行情 1、補倉: 在比特幣交易中,我們習慣所說的補倉,意思是在初次建立的頭寸虧損以后為攤低成本而再次建倉.
1900/1/1 0:00:00