關于以太坊虛擬機(EVM)的性能
在以太坊主網上的每一個操作都要花費一定的 Gas,如果我們把跑基礎應用所需的計算量都放在鏈上,要么 App 會崩潰,要么用戶會破產。
這催生了 L2 :OPRU 引入了排序器來捆綁一堆交易,然后提交到主網上。這不僅有助于 app 承接以太坊的安全性,同時也給予了用戶更好的體驗。用戶可以更快地提交交易,手續費也更加便宜了。雖然操作變得便宜了,但它仍然使用原生 EVM 作為執行層。和 ZK Rollups 類似,Scroll、Polygon zkEVM 使用或將使用基于 EVM 的 zk 電路,zk Proof 將在其證明器上進行的每一筆交易或者一大包交易中生成。雖然這能讓開發者建立 "全鏈上 "的應用程序,但它是否仍能高效且經濟地運行高性能的應用程序呢?
這些高性能應用都有哪些?
人們首先想到的是游戲、鏈上訂單簿、Web3 社交、機器學習、基因組建模等。所有這些都需要大計算量,在 L2 上運行也會非常昂貴。EVM 的另一個問題是,計算的速度和效率不如現在的其他系統,如SVM (Sealevel Virtual Machine)。
雖然 L3 EVM 可以使計算更便宜,但 EVM 本身的結構可能不是執行高計算的最佳方式,因為它無法計算并行運算。在上面每建一個新的層的時候,為了保持去中心化的精神,就需要建立新的基礎設施(新的節點網絡),這仍然需要同樣數量的提供者來擴展,或者是一組全新的節點提供者(個人/企業)來提供資源,或者兩者都需要。
因此,每當更先進的解決方案被建立時,現有的基礎設施就要被升級,或者在上面建立一個新的層。為了解決這個問題,我們需要一個后量子安全、去中心化、無需信任、高性能的計算基礎設施,可以真正高效地使用量子算法為去中心化的應用進行計算。
像 Solana、Sui 和 Aptos 這樣的 alt-L1s 能夠實現并行執行,但由于市場情緒,流動性短缺市場上缺乏開發人員,他們不會對以太坊產生挑戰。因為缺乏信任,而且以太坊用網絡效應建立的護城河是里程碑式的。到目前為止,ETH/EVM 的殺手并不存在。這里的問題是,為什么所有的計算都應該在鏈上?是否存在一個同樣無需信任、去中心化的執行系統?這是 DCompute 系統能夠實現的。
解放軍報:區塊鏈賦能軍事裝備管理:10月16日,解放軍報融媒體刊文《區塊鏈賦能軍事裝備管理》。文章表示,引入區塊鏈技術,能確保軍事裝備管理數據信息可用、可信、可靠。相較于傳統分布式數據庫單節點存儲數據、多節點備份的存儲模式,區塊鏈所有節點共同存儲數據,即使多個節點遭敵破壞或滲透,系統也能通過共識算法保持正常運轉,并篩選出“問題節點”。如果采用區塊鏈技術,將各級管理者及裝備數據信息上鏈,作為節點通過扁平的拓撲狀網絡相互連通,不僅能去除層級的約束,還可降低部門之間溝通協調成本。同時,區塊鏈對權限的設定十分嚴格,各級管理者只能依照職能獲取所屬武器裝備的詳細信息,想得到更多信息則需得到鏈上相關主要節點的許可。[2020/10/16]
DCompute基礎設施要做到去中心化、后量子安全,也要做到無信任,不需要或者說不應該是區塊鏈/分布式技術,但驗證計算結果,正確的狀態轉換和最終確認是非常重要的。EVM 鏈的運行就是如此,在保持網絡的安全性和不可篡改性的同時,去中心化的、無需信任的、安全的計算可以被移到鏈下。
我們在這里主要忽略的是數據可用性的問題。這篇文章并非不關注數據的可用性,因為像Celestia 和 EigenDA 這樣的解決方案已經在朝這個方向發展。
1: 只將計算外包(Only Compute Outsourced)
(來源:Off-chaining Models and Approaches to Off-chain Computations, Jacob Eberhardt & Jonathan Heiss)
2. 將計算與數據可用性外包
當我們看到 Type 1時,zk-rollups 已經在做這個,但它們要么受限于EVM,要么需要教導開發者學習全新的語言/指令集。理想的解決方案應該是高效的、有效的(成本和資源)、去中心化的、私密的和可驗證的。ZK證明可以在AWS服務器上構建,但它們并不是去中心化的。像Nillion和Nexus這樣的解決方案正在嘗試以去中心化的方式解決通用計算的問題。但這些解決方案是無法驗證的,如果沒有ZK證明的話。
聲音 | 解放日報:區塊鏈與食品安全追溯天生契合:12月31日,解放日報刊文稱,越來越多的食品相關方開始關注起追溯與區塊鏈結合的好處,這是因為,區塊鏈這項技術的特點,可以說與食品安全追溯天生契合。一方面,與傳統方式不同,區塊鏈憑借其特有的去中心化存儲模式,讓追溯系統的搭建擺脫了對某個企業或個人的依賴。另一方面,區塊鏈上的信息共享,可以讓數據在不同公司和部門之間進行實時查詢、傳遞、核實與分析,進而有效解決多方參與、信息碎片化與低效的重復審核等問題,加密技術也保證了平臺訪問的安全性。這就顯著提高了追溯的效率,降低了追溯成本。相關行業人士建議,未來相關部門應該在推動食品企業數據上鏈過程中扮演更積極、更重要的角色,制定規則鼓勵應用或采取強制上鏈措施,讓區塊鏈技術在食品安全追溯行業中,以更加理想的狀態發展起來。[2019/12/31]
Type 2 將鏈下計算模型與保持分離的數據可用性層結合起來,但計算仍然需要在鏈上進行驗證。
讓我們來看一下今天可用的不完全可信和可能完全無信任的不同去中心化計算模型。
以太坊外包計算生態圖 (來源:IOSG Ventures)
TEE(可信執行環境)就像計算機或智能手機內部的一個特殊盒子。它有自己的鎖和鑰匙,只有特定的程序(稱為可信應用程序)才能訪問。當這些可信應用程序在TEE內部運行時,它們就受到其他程序甚至操作系統本身的保護。
這就像一個只有幾個特殊朋友可以進入的秘密藏身處。TEE最常見的例子是安全隔離區,它們存在于我們使用的設備上,例如蘋果的T1芯片和英特爾的SGX,用于在設備內部運行關鍵操作,如FaceID。
由于TEE是隔離的系統,認證過程無法被破壞,因為認證中存在信任假設。可以將其想象為存在一個安全門,你相信它是安全的,因為Intel或Apple建造了它,但世界上有足夠多的安全破壞者(包括黑客和其他計算機),可以破壞這扇安全門。TEE不是“后量子安全”的,這意味著擁有無限資源的量子計算機可以破解TEE的安全性。隨著計算機迅速變得更加強大,我們必須在構建長期計算系統和密碼學方案時牢記后量子安全性。
聲音 | 解放軍報:加快推進區塊鏈軍事應用,不斷拓展其應用廣度和深度:11月20日,解放軍報刊文《軍報關注:區塊鏈如何影響現代軍事》。文章表示,區塊鏈由此所體現的技術特性,恰好可以滿足軍事領域的一些特定需求。區塊鏈去中心化的特性契合抗毀生存的軍事需求。區塊鏈可追溯不可篡改的特性契合作戰指揮強信任需求。區塊鏈透明開放集體參與的特性契合信息安全共享的軍事需求。在作戰領域,區塊鏈的去中心化、可擴展、跨網絡分布、強加密等特點,可有效提升作戰網絡的安全性抗毀性,大大增強作戰體系的彈性韌勁。在軍事管理領域,區塊鏈的機器信任機制,可減少軍事管理過程中人為因素帶來的不確定性、多樣性和復雜性。區塊鏈在軍事領域的應用,各國軍隊更是處于探索階段,加快推進區塊鏈軍事應用,不斷拓展其應用廣度和深度,可采取以下措施。1.加強區塊鏈軍事應用的統籌規劃。2.創新區塊鏈軍事應用模式。3.突破區塊鏈軍事應用技術瓶頸。[2019/11/21]
SMPC(安全多方計算)也是區塊鏈技術從業熟知的一種計算方案,在SMPC網絡中大致的工作流程會有如下3部分組成:
步驟1:將計算的輸入轉換為份額(shares),并分布在SMPC節點之間。
步驟2:進行實際的計算,通常涉及SMPC節點之間的消息交換。在此步驟結束時,每個節點將擁有計算輸出值的一個份額。
步驟3:將結果份額發送到一個或多個結果節點,這些節點運行LSS(秘密分享恢復算法)以重構輸出結果。
想象一個汽車生產線,汽車的構建和制造組件(發動機、車門、后視鏡)被外包給原始設備制造商(OEM)(工作節點),然后有一個裝配線,將所有組件組裝在一起制造汽車(結果節點)。
秘密分享(Secret sharing)對于保護隱私的去中心化計算模型非常重要。這可以防止單個參與方獲得完整的"秘密"(在這種情況下是輸入),并惡意產生錯誤的輸出。SMPC可能是最容易和最安全的去中心化系統之一。雖然目前不存在一個完全去中心化的模型,但從邏輯上講這是有可能的。
聲音 | 解放軍報:嵌入區塊鏈技術可提高軍隊數據信息安全程度:《解放軍報》11月12日發表文章表示,防失泄密是軍隊信息管理的重要任務和目標。嵌入區塊鏈技術的大數據系統,充分運用區塊鏈可追溯、難復制的特性,實現信息不可復制的分享,相較基于傳統網絡的管理模式大大提高了數據信息安全程度。再通過建設分層安全技術體系,能夠進一步提高數據信息安全防護能力,給軍隊信息安全保密工作加上“安全鏈”。[2019/11/15]
像Sharemind這樣的MPC提供商為計算提供MPC基礎設施,但提供商仍然是集中的。如何確保隱私,如何確保網絡(或Sharemind)沒有惡意行為?這就是zk證明和zk可驗證計算的由來。
NMC是由Nillion團隊開發的一種新的分布式計算方法。它是MPC的升級版,其中節點無需通過通過結果交互來進行通信。為此,他們使用了一種稱為一次掩碼(One-Time Masking)的密碼原語,利用一系列稱為遮蔽因子(blinding factors)的隨機數來掩蓋一個Secret,類似于一次性填充。OTM旨在以高效的方式提供正確性,這意味著NMC節點不需要交換任何消息來執行計算。這意味著NMC不會有SMPC的可擴展性問題。
ZK可驗證計算(ZK Verifiable Computation)是對一組輸入和一個函數生成零知識證明,并證明任何系統執行的計算都會是正確執行的。盡管ZK驗證計算是新生事物,但它已經是以太坊網絡擴展路線圖中一個非常關鍵的部分,
ZK證明有各種各樣的實現形式(如下圖所示,根據論文“Off-Chaining_Models”中總結):
(來源:IOSG Ventures, Off-chaining Models and Approaches to Off-chain Computations, Jacob Eberhardt & Jonathan Heiss)
金色財經現場報道 Emotiq首席執行官Joel Reymont:解放區塊鏈需要使用自然語言:金色財經前方記者實時報道,第二屆全球金融科技與區塊鏈中國峰會于4月12日在上海召開,CEmotiq首席執行官Joel Reymont在峰會上表示,智能合約目前存在漏洞,利用非常好的計算效能去尋找系統漏洞和不足,然后對BUG和不足進行修改,有時候作為計算機博士也不一定能做到。如何無障礙的使用區塊鏈,真正解決方案并不是把系統和程序做的越來越復雜,再去做另外一個程序來分析這個程序。要解放區塊鏈,就是要使用自然語言。這個解決方法我們已經用了很多世紀,就如同在法務合同上,幾百年人類用自然語言書寫法律合同,自己本身就可以讀取,自己就可以理解這是什么意思。[2018/4/12]
上面我們對zk證明的實現方式有了基本的了解,那么使用ZK證明驗證計算需要什么條件呢?
首先,我們需要選擇一個證明原語,理想的證明原語生成證明的成本低,對內存的要求不高,并且要易于驗證
其次,選擇一種zk電路,設計用于通過計算生成上述原語的證明
最后,在某個計算系統/網絡中通過提供的輸入對給定的函數進行計算并給出輸出。
開發者的難題 - 證明效率困境
另外一個不得不說的事情就是構建電路的門檻還是很高,讓開發者學習Solidity已經不是一件容易的事情,現在要求開發者學習Circom等來構建電路,或者學習一門特定的編程語言(如Cairo)來構建zk-apps,這似乎是一個遙不可及的事情。
(來源:https://app.artemis.xyz/developers)
(來源:https://www.statista.com/statistics/1241923/worldwide-software-developer-programming-language-communities)
如上面的統計數據顯示,將Web3的環境改造得更適于開發,似乎比將開發人員引入新的Web3開發環境更具可持續性。
如果ZK是Web3的未來,Web3應用程序需要使用現有的開發人員技能來構建,那么ZK電路就需要這樣設計:支持由JavaScript或Rust等語言編寫的算法執行的計算生成證明。
這樣的解決方案確實存在,筆者想到的是兩個團隊:RiscZero和Lurk Labs。兩個團隊都有一個非常相似的愿景,即他們允許開發人員無需經歷陡峭的學習曲線即可構建zk-app。
Lurk Labs還處于早期階段,但該團隊已經在這個項目上工作了很長時間。他們專注于通過通用電路生成Nova證明(Nova Proof)。Nova證明是由卡耐基梅隆大學的Abhiram Kothapalli和微軟研究院的Srinath Setty以及紐約大學的 Ioanna Tziallae 提出的。與其他SNARK系統相比,Nova證明在進行增量可驗證計算(IVC)方面具有特殊優勢。增量可驗證計算(IVC)是計算機科學和密碼學中的一個概念,旨在實現計算的驗證,而無需從頭開始重新計算整個計算。當計算時間長且復雜時,需要針對IVC對證明進行優化。
(來源:IOSG Ventures)
Nova證明不像其他證明系統那樣“開箱即用”, Nova 只是一個折疊技巧,開發者仍需要一個證明系統來生成證明。這就是為什么Lurk Labs構建了Lurk Lang,這是一個LISP實現。由于LISP是一種較低級的語言,它使得在通用電路上生成證明很容易,并且也很容易轉譯成JavaScript,這將幫助Lurk Labs獲得1740萬Javascript開發者的支持。也支持其他通用語言,如Python的轉譯。
總而言之,Nova證明似乎是一個偉大的原始證明系統。雖然它們的缺點是證明的大小隨著計算的大小線性增加,但另一方面,Nova證明有進一步的壓縮空間。
STARK證明的大小不會隨著計算量的增加而增加,因此它更適合驗證非常大的計算。為了進一步改善開發人員的體驗,他們還發布了Bonsai 網絡,這是一個分布式計算網絡,由RiscZero生成的證明進行驗證。這是一個簡單的示意圖,代表RiscZero的Bonsai 網絡的工作原理。
(來源:https://dev.bonsai.xyz/)
Bonsai網絡設計的美妙之處在于計算可以初始化,驗證,輸出全部做到鏈上。所有這些聽起來都像是烏托邦,但STARK證明也帶來了問題——驗證成本太高。
Nova證明似乎非常適合重復計算(它的折疊方案經濟高效)和小型計算,這可能使Lurk成為ML推理驗證的一個很好的解決方案。
(來源:IOSG Ventures)
一些zk-SNARK系統在初始設置階段需要一個可信的設置過程,生成一組初始參數。這里的信任假設是,可信的設置是誠實執行的,沒有任何惡意行為或篡改。如果受到攻擊,可能會導致創建無效的證明。
STARK證明假設低階測試的安全性,用于驗證多項式的低階性質。它們還假設哈希函數表現得像隨機預言機一樣。
兩個系統的正確實施也是一個安全假設。
SMPC網絡依賴于以下幾點:
SMPC參與者可以包括“誠實但好奇“的參與者,他們可以通過與其他節點通信來嘗試訪問任何底層信息。
SMPC網絡的安全性依賴于參與者正確執行協議并不故意引入錯誤或惡意行為的假設。
某些SMPC協議可能需要一個可信的設置階段來生成加密參數或初始值。這里的信任假設是可信設置被誠實執行。
與SMPC網絡相同,安全假設保持不變,但由于OTM(Off-The-Grid Multi-party Computation)的存在,不存在“誠實但好奇“的參與者。
OTM是一種多方計算協議,旨在保護參與者的隱私。它通過使參與者在計算中不公開其輸入數據來實現隱私保護。因此,“誠實但好奇“的參與者不會存在,因為他們無法通過與其他節點通信來試圖訪問底層信息。
有明確的贏家嗎? 我們不知道。但每種方法都有自己的優點。雖然NMC看起來像是SMPC的明顯升級,但該網絡還沒有上線,也沒有經過實戰測試。
使用ZK可驗證計算的好處是它是安全和隱私保護的,但它沒有內置的秘密共享功能。證明生成和驗證之間的不對稱使它成為可驗證外包計算的理想模型。如果系統使用純粹的zk驗證計算,則計算機(或單個節點)必須非常強大才能執行大量計算。為了在保護隱私的同時啟用負載共享和平衡,必須有秘密共享。在這種情況下,像SMPC或NMC這樣的系統可以與像Lurk或RiscZero這樣的zk生成器相結合,以創建強大的分布式可驗證外包計算基礎設施。
當今的MPC/SMPC網絡是中心化的,這一點變得尤為重要。目前最大的MPC提供商是Sharemind,它上面的ZK驗證層可以證明是有用的。去中心化MPC網絡的經濟模型尚未跑通。理論上,NMC模式是MPC系統的升級,但我們還沒有看到其成功。
在ZK證明方案的競賽中,可能不會出現贏家通吃的情況。每種證明方法都針對特定類型的計算進行了優化,并且沒有一個適合所有類型的模型。計算任務的類型有很多種,也取決于開發人員在每個證明系統上做出的權衡。筆者認為基于STARK的系統和基于SNARK的系統以及它們未來的優化在ZK的未來都有一席之地。
IOSG
個人專欄
閱讀更多
金色早8點
Odaily星球日報
金色財經
Block unicorn
DAOrayaki
曼昆區塊鏈法律
最近有圈內的朋友咨詢:幫親友投資虛擬貨幣,是否屬于非法集資?在回答這個問題之前,我們需要了解以下三個問題:(一)個人能否投資虛擬貨幣?(二)能否幫他人投資虛擬貨幣? (三)什么是非法集資? 01.
1900/1/1 0:00:00作者:Jack Inabinet,編譯:Kate, Marsbit在過去的幾年里,以太坊的第二層網絡實現了巨大的增長.
1900/1/1 0:00:00作者:Airdrop Oasis, 加密 KOL;編譯:Felix, PANews6 月 7 日.
1900/1/1 0:00:00來源:Forkast 編譯:hiiro, SevenUpDAO根據美國數字美元基金會的聯合創始人Giancarlo的說法,中央銀行數字貨幣(CBDC)是未來的貨幣.
1900/1/1 0:00:00▌彭博ETF分析師:貝萊德現貨比特幣ETF今年年底會批準金色財經報道,彭博社高級ETF分析師Eric Balchunas談貝萊德的現貨比特幣ETF,Balchunas稱,我將押注于貝萊德.
1900/1/1 0:00:00作者:Louisa Choe,BNB Chain;翻譯:金色財經xiaozou我們很榮幸于6月20日推出opBNB.
1900/1/1 0:00:00