對話Scroll聯創:Scroll與ZK同行
原文來源:Scroll CN

Scroll Talk 是Scroll CN 主理的一檔播客節目。我們會透過不同的形式,和Scroll 團隊,Scroll 生態專案方對話,幫助大家更了解Scroll。
本集節目,我們請到了Scroll 的聯合創始人Ye Zhang,和他一起來聊聊關於Scroll 和ZK 的話題,包括zkEVM 的設計與取捨,證明系統的選擇,硬件加速的證明者網絡,以及ZK 的未來。
開場
FF: 哈嘍大家好,歡迎大家來到Scroll Talk,今天很高興邀請到了Scroll 的聯合創始人張燁,之前我們Scroll CN 也發布過許多關於張燁的採訪和演講。然後這應該是第一次和Ye 面對面的交流,然後首先非常感謝Ye 的到來。在整個零知識證明社區,Ye 現在的影響力都非常的大,但我們還是想讓Ye 先來做個簡單的自我介紹。
Ye:哈嘍哈嘍,感謝Scroll CN 安排這次採訪,然後也一直感謝Scroll CN 在中文社群裡面所做的貢獻,包括翻譯品質都很高,然後幫助我們在中文社群中有很大的影響力。簡單做一個自我介紹,大家好,我叫張燁,然後是Scroll 的共同創始人之一,我主要做的方向是偏零知識證明相關的研究。我之前集中在三個方向。
第一個方向是零知識證明的硬件加速,大概5 年前開始開始做這個方向,因為5 年前大家用零知識證明最大的一個瓶頸就是產生證明非常的慢。比如說像Zcash 這樣的應用為一個交易產生證明要很長的時間,可能是10 分鐘甚至更長。然後這就導致說零知識證明不能被很多系統採用,因為證明效率太低。所以我的第一個研究方向就是如何透過GPU,FPGA 和ASIC 硬件去加速證明產生。
第二個方向就是偏零知識證明後端的這些密碼學和數學。因為零知識證明是一個非常複雜的密碼協議,涉及了多項式等大量數學。然後我主要的研究工作就是讀一些大量的論文,看看怎麼能優化現有的一些算法,會比較偏理論一些。
第三個方向的話就是更偏應用層面,就是怎麼去給zkEVM 設計架構,設計電路,怎麼能給zkEVM 產生證明。
總的來說大概涵蓋了三個方向,零知識證明的硬件加速,零知識證明的理論算法,以及零知識證明的相關應用。
然後在Scroll 的話,我主要聚焦在一些偏研究類的工作,包括零知識證明相關的研究,協議設計層面的研究,然後還有一些整個公司的相關策略。
FF:謝謝Ye,然後我們知道你一直在做ZK 的研究,那是有什麼樣的契機讓你選擇創立Scroll,然後一直在ZK 領域深耕,這裡面是什麼動機一直激勵你一直往前走下去?
Ye:這是一個很不一樣的故事。現在大多數人聽過零知識證明或學習ZK,都是因為大家意識到區塊鏈有零知識證明的需求,但其實我學習的過程是相反的。我其實是相反過來,是先被ZK 吸引,然後發現ZK 可以用在區塊鏈裡。我是在本科的時候,跟實驗室的一個高年級的學長,一起在做一些硬件加速算法相關的研究。然後當時最火的其實是在做AI 加速,但是我對AI 其實不是很感興趣,我覺得他這個調參的過程沒有一個可以讓我理解的數學模型,就是為什麼這個參數通過訓練會是這個結果。我比較喜歡一些確定性較強的數學,就是我能知道事情發生的機率。所以我會天然的更喜歡密碼學數論這套東西,然後當時就發現了零知識證明的這個算法,然後又發現了他有非常大的硬件加速的需求。所以我開始做相關的研究,後來在我研究加速算法的過程中,我發現這個算法本身的魅力會比硬件加速更大,因為它裡面涉及了很多非常巧妙的一些多項式的構造,還有一些協議的構造等等。如果你真的深入去看任何一個零知識證明的協議,你會發現它真的非常巧妙,透過多項式的設計,去編碼程式。然後再經過一些多項式的點去驗證多項式的一些性質,最後把它壓縮成一個非常非常小的證明,整個數學構造非常的巧妙。所以我最初進入零知識證明這個行業完全是被他數學構造的魅力給吸引,然後後期才發現說我研究的這個東西剛好可以解決區塊鏈現在本質上遇到了最大的問題,就是擴容。
然後我後來又意識到了整個以太坊的生態非常的繁榮,而且它有一個非常好的開源社區,跟我自己的個人信仰會更契合一些,它整個研究的氛圍,擁抱開源的態度,以及追求學術嚴謹的風格,也讓我徹底被它吸引,同時又意識到了整個區塊鏈它不是一個懸空的故事,而是一個真實的能解決很多人生活中問題的架構。它可能是下一代的金融基礎設施,很多人真的需要透明度,需要抗審查性。所以我覺得區塊鍊是有真實的應用場景的,然後同時我的技術可以解決這個問題。
在21 年年初的時候是一個最好的時間節點,因為零知識證明的效率已經提升了2-3 個數量級。當一個科技有2-3 個量級提升的時候,其實是會有巨大的機會,無論是創業機會也好,或是其他新的一些機會。因為之前不能解決的問題現在可以解決。當時覺得zkEVM 其實是一個最大的機會,當時沒有很多人做,或是說沒有很多人做出來。然後我們有一個非常好的契機,再加上有這樣技術的積累,能去解決這樣的問題,所以我們就開始去做Scroll。
其實之前我讀博士也是在做零知識證明這個方向。但我意識到一個問題,就是你在業界,比如說在Scroll,你也是能有很大的彈性去做ZK 的相關研究,而在學校你必須得跟一個導師去合作,然後你可能只能在一個方向上研究。
但是在Scroll 的話,你可能有更大的靈活性,因為你首先解決的問題是一個真實的行業的問題,所以你解決了這個問題以後,它的影響力會更大。然後第二個,你不會只限於博士研究的一個方向,你可以透過一些Grant,透過一些別的方式去跟更多的人合作。所以的話。其實在Scroll,我在做同樣的事情,只是在業界的話會更有影響力,解決最真實的問題,而且合作的範圍會更廣。所以我覺得這條路對我來說會比讀博更有魅力。
ZK 科技發展與未來
FF:明白謝謝Ye,能理解是ZK 背後數學迷人的魅力,然後吸引你一直在做相關的研究。聽到下來主要的一個突破點,應該就是兩三年前,是不是ZK 有類似今年像ChatGPT 橫空出世,有非常大量的突破。
Ye:對對對,我覺得是這樣的,但它不像ChatGPT 是個爆點,然後突然引爆了所有。它是一個很多層因素疊加的過程,例如說我之前一直在研究的硬件加速方向,它可以把零知識證明的效率提升10 到100 倍;然後再加上一些多項式對電路的新的表示形式,比方說透過更高階的自訂門( Custom Gate ) 和查找表( Lookup Table)就可以更有效率的表示,又把開銷降低10 倍;然後還有一些遞歸證明( Recursive Proof ) 可以把很多證明聚合起來,又節省了驗證那塊的許多成本。所以我覺得這三點加起來才會導致說有一個巨大的效率提升。
最後當然結果是效率提升,但是它不像ChatGPT 是一個突然爆火的東西,而是一個有密碼學專家的努力,有很多硬件工程師的努力的結果。
FF:既然我們有談到AI,那Ye 你是怎麼看待現在ZK 和AI 的結合,包括現在Worldcoin 已經發布了,用的是ZKML 的技術,你覺得在ZKML 的交叉領域,會和ZK,AI 兩一個各自領域有什麼樣的差異。
Ye:我覺得現在確實有很多人在做ZKML,但我覺得這個方向還是挺早期的,它有一些應用場景,比如說識別照片是不是真的是透過你的相機拍的,沒有復雜的PS;可以證明音頻是不是某個人的;可以證明微軟是否在提供相同的模型給每個人,因為在你給模型一個輸入的話,然後它返回給你一個輸出的時候,你無法確定它是不是不同的人會換不同的模型。會有這樣一些小的應用場景,但我還沒有看到特別大的一個剛需,為什麼ZKML 一定會是一個像AI 那麼廣泛的應用。
因為比如說像ChatGPT,其實擁有模型的大多數公司是有絕對實力的,它不需要一定要向你證明說我一定要用的這個模型,而且你也無法要求他去做這個事情。我覺得除非發生在一個市場,有10 家ChatGPT 這樣的公司,然後ChatGPT 不想去做,那其他公司有一家願意去做。有這樣需求的一波使用者群體就會選擇這個公司提供的服務。但現在它整個市場是一個只有少數的公司能做ChatGPT 這樣的模型,然後他們就沒有一個很強的動機或激勵去幫助你做這樣的事情。所以我覺得這條路還挺長的,再加上很多像照片或音頻,還有很多沒有解決好的問題,你可能也需要一些硬件去能把這個系統給搭建起來。
整體我覺得還是有挺長的路要走的,當然我覺得ZKML 會在流動性管理上有一些新的玩法策略,然後可能會有一些小的用例,更大的應用場景還是挺需要時間的檢驗,去找一個市場匹配的產品。而ZKML 它其實是不能證明訓練的過程是對的,它只能證明一個影響因子是對的,所以這就更進一步的局限它能做的事情,我覺得還是有一定的路要走。
大多數ZKML 的公司,現在也正在開發工具。我知道有些ZKML 公司在想辦法,能把TensorFlow 或Pytorch 寫的代碼直接轉成ZK 的電路,直接產生證明,這可能是個有趣的方向。先從DSL,SDK 開始,然後鼓勵大家去有新的創新,都是還很早期的。我覺得最後可能還是會發展成還是像通用計算的ZK 化,只是更適合ML 的一些演算法庫,比如說一些矩陣乘法或者卷積之類,會更有利於這樣的一些應用,而不是僅僅就ZKML ,我覺得還是會有很長的路要走。
然後這塊做的比較前沿的有Daniel Kang,是UIUC 的一位教授,我們之前有邀請他來Scroll 的ZK Symposium 上面做過一次演講,所以如果大家對這個方向感興趣的話,可以去看下我們的這個系列。
https://www.youtube.com/watch?v=Co5gNoHnMhs&list= PLrzRr 7 okCcmbAlgYpuFjzUJv 8 tAyowDQY &index=14
FF:好嘞,謝謝Ye。然後聽下來感覺ZKML,還是比較早期,現在都是一些比較小的建設方向,涉及到通用計算的話也還比較早,可能得到後期市場化非常成熟,大家有隱私需求的時候,ZKML 才會有它的用武之地。從ZK 的大範圍來看,之前Vitalik 發表了一段言論,大致的意思是ZK 和區塊鍊是同等重要的概念,你是怎麼看待這一觀點的?
Ye:我覺得確實是這樣的,因為ZK 真的解決了很多區塊鏈解決不了的問題,它是一個非常完美的結合。區塊鏈解決不了擴容的問題,ZK 可以把運算壓縮,解決擴容的問題。區塊鏈永遠是公開透明的,它解決不了隱私的問題,ZK 可以去隱藏訊息,可以去解決隱私的問題。所以我覺得ZK 和區塊鍊是一個天然的非常好的結合。
再加上現在ZK 對通用運算的支援也非常的迅速,所以我覺得它是有非常大機會的。比如說從隱私方面,像是隱私交易,隱私池,包括一些鏈上撲克,你不希望發牌一發到鏈上以後,別人看到你的牌,就可以通過零知識證明隱藏信息。像是這類隱藏資訊的遊戲,你只能透過ZK 在區塊鏈上實現。隱私這塊的話,ZK Identity 也是一個很有趣的小方向,非常有前景,怎麼讓十億用戶去用區塊鏈,那可能我們需要將一些現有的身份系統ZK 化,然後大家才願意去放一些信息在上面。
然後擴容性相關的話,比如說像各種Rollup 去壓縮計算,各種協處理器去壓縮一些計算,最後把證明放到鏈上,這樣的話是一個鏈上和鏈下非常不錯的結合。
還有一些非常有趣的小方向都很有前景,有些團隊在建造一些ZK 跨鏈橋,或是ZK 硬件去提供服務。但我覺得距離特別成熟,還是要花幾年的時間。無論從開發者SDK 的方便程度,還是從ZK 的效率,安全性方面還是有很長一段路要走。
FF:明白,謝謝Ye,聽你的描述,ZK 和區塊鏈相當於是一個互補的關係,那除了剛才提到的這些應用場景,從效率和公平的角度來看,你覺得這項技術創新對現實世界會帶來哪些改變?
Ye:我覺得我可以把任何的計算變成不信任的,這是一個非常強的特性。你可以把任何計算丟到一個不可信的平台上,然後讓它回你一個結果,產生一個證明,證明它的結果是正確的。這就可以保證你的計算正確性和可驗證性。然後其他就像我說的有身份,隱私,擴容性等等各種各樣的應用。
FF:明白,謝謝Ye,就是說ZK 它可能會對通用計算的有一個加持,不管是說提供隱私也好,還是可信程度也好,都是非常有前景的方向,如果不做的Scroll,讓你在ZK 領域二次創業,你會選擇哪個賽道和方向呢?
Ye:這是一個很艱難的問題,我覺得首先zkEVM 絕對是最大的一個方向,因為它是承載了以太坊流量入口,一定是最大的一個。如果讓我一定要選其他的方向的話,我個人是挺看好做協處理器的,能把非EVM 的計算,也做得非常有效率並且能夠驗證。另外一種的話偏身份協議,我覺得建立一個很好的身份系統是一個非常難的事情,而且它能解決很多現實生活的一些問題,尤其是之前去非洲的時候,看到了很多由於金融基礎設施不太成熟導致的各種問題,所以我覺得身份會是一個很大的方向。
然後如果是我個人一定要選的話,我覺得如果體量不是很大,我覺得身份的機會很大,然後如果是一個很強大的工程團隊,一定要做更複雜的事情,我覺得這個ZK 的協處理器會是比較好的方向,只是現在這個賽道已經太多人了。所以我覺得身分會是一個還沒有大眾普及的賽道,而且我覺得它不光是一個需要技術,而且需要商業策略的方向。你要思考你要跟哪些商業夥伴合作,能不能直接把他們大量的數據ZK 化,這樣可以更快速地去擴大你的用戶群體,技術可能是一個更小的問題。
如果你是一個很有創新能力的人的話,你也可以去嘗試ZK 遊戲的方向,遊戲需要你有很好的設計,把需要隱藏的資訊ZK 化。但ZK 不是萬能的工具,它無法解決所有隱私問題。它會需要證明者知道某些資訊的。所以我覺得這個遊戲需要設計的非常巧妙,才可以把ZK 用到極致。如果你是一個很有想法,很喜歡玩遊戲的人,想清楚你的遊戲邏輯,然後創造一個很有趣的ZK 遊戲也是一個很有趣的方向。
FF:謝謝Ye。你剛剛提到三個方向,第一個是協處理器,類似Axiom 在做的方向;第二個是身分的方向,可以理解Worldcoin 在做的事情,是其中一個特別的例子;第三個應該就是遊戲,對一般使用者來說會是日常會接觸到的方向。然後Ye 你剛才提到你剛從非洲回來,那我們順便想問一下你這次去非洲,推廣傳播ZK 的技術包括以太坊,有什麼收穫嗎?
Ye:這次還是很獨特的經驗。先簡單介紹一下背景,今年2 月的時候,Vitalik 和以太坊基金會的Aya 還有其他一些人去了非洲的4 個國家。他們大概可能有接近一個月的時間,跟非洲的社區舉辦一些活動,然後去見一些非洲的創始人,去了解一下在這片大陸上的情況。因為以太坊其實在非洲的社區還是比較小,所以他們就去那裡了解現在社區的一些狀態。現在社群需要什麼,去傳播以太坊的這個價值。他們當時得出了結論,就是說以太坊還是有點貴。
他們希望安排一次Layer 2 之行,能把以太坊的Layer 2 帶到非洲來。因為非洲那邊的人,他們不可能用得起以太坊,就只能透過Layer 2 去進入以太坊的世界。所以今年大概四、五月的時候吧,也是透過Vitalik 介紹和當初他們旅行的這個組織者約瑟夫認識,看有沒有一個機會說能組織一次Layer 2 之旅。聊完以後,我們就覺得自己的價值觀非常一致。因為Scroll 的一部分價值觀,就是我們想把真實的使用者和用例帶到區塊鏈裡面,所以我們覺得非常激動,可以去了解非洲的一些真實需求。
去了那邊以後會發現真的很不一樣,讓我對發展中國家和新興國家的真實用例更有信心。因為其實在去非洲之前,包括我現在接觸的很多人都還在質疑,就是說區塊鍊是不是一個真實的需求。它是不是只是一個騙局,只是大家發代幣的工具。我覺得能說出這樣言論的人,其實是因為無論在中國,亞洲其他地方,還是在西方美國歐洲,大家對區塊鏈的理解就是巨鯨,流動性挖礦。他們不是生活真的需要區塊鏈,而是他們只是覺得說上面有一些可以讓他獲得更多利潤的工具,有的時候他的財產可能放在上面會比較安全。它不是一個特別剛需的工具。
我們去的兩個國家是肯亞和尼日利亞,我們會很清楚的感受到,那邊大家的日常生活是真的需要區塊鏈作為一個平台。一個非常明顯的例子,在非洲相鄰的兩個國家之間要做轉帳是沒有辦法透過銀行直接轉帳的,需要繞很大一圈才能到達。因為它們的金融基礎設施真的做的很差,完全無法建立全球的支援系統,
所以他們是真的首先需要一個支付的工具,而區塊鏈僅僅作為一個支付工具也是非常有用的,真的能改變他們的生活。因為他們如果到其他的鄰近國家是需要區塊鏈的支付媒介的。很多人就說區塊鏈能做什麼,只是全球支付系統,聽起來只是一個很單一的用途。但其實全球支付系統可以解決非常多人的需求,尤其是在那些金融基礎建設不是那麼完善的一些國家。但因為你可能在中國,美國,歐洲,那裡的基礎建設非常的完善,你平常完全不會擔心這樣的問題。
第二件事就是他們的通貨膨脹非常的高。他們的貨幣可能從我們去到現在,通貨膨脹率已經有10% 了。想像一下,你手裡人民幣或美元過一個月以後就貶值10% ,理財可能一年才漲3 ~ 4% ,然後物價一直在上漲。這很影響他們的生活,然後穩定幣是一種讓他們獲取到美元的方式,他們需要美元,因為美元通貨膨脹率比較低,所以他們希望獲得美元,但他們又不可能拿到美元,因為他們不可能在美國銀行開戶。所以他們其實是買美元穩定幣,然後去持有一些鏈上的資產,他們獲得USDT,是預防惡性通貨膨脹的一個非常重要的方式。可能大家在中國持有人民幣就可以,只有買加密貨幣的時候才需要USDT。但是他們是真實生活中都需要的,他們會頻繁地進行OTC 交易,在真的使用的時候去轉化成他們自己的貨幣。所以我覺得這是一個很大的應用場景,在這些國家和其他很多地方,他們真的有這種需求。
然後第三個事情,因為他們金融基礎設施的不健全,導致了他們在藉貸時候,信用評級和身份非常的不完善。因此他們藉錢,例如說借100 美元也需要可能一個月的時間,還需要各種審批,因為各種金融機構之間的資訊不流通。所以這就導致了說,借貸作為銀行或是很多金融機構的一個非常大的業務,在他們這兒非常不完善。所以我覺得這也是一個巨大的機會。
在非洲這片土地上是有很多真實的需要區塊鏈的應用場景。比如說如果有一個很好的身份系統去解決他們這些問題,能給他們提供鏈條上的一些借貸或其他的一些服務,我覺得會是一個非常有價值的東西。這是讓我第一次感受到了,你的技術是真的在改變這個世界很多角落的人的生活,這是一件很重要的事。
Scroll 的一部分價值觀就是我們要讓下十億人進入以太坊。大家會常常吐槽BSC 非常的不去中心化,以太坊非常去中心化,但以太仿就是貴。然後BSC 上就是有很多真實的用戶就是在玩,因為有幣安,然後非洲讓我第一次見識到的,有很多人真的在用幣安去做支付,因為它很簡單,很易用。我們是希望能把這部分的真實用戶帶回來以太坊,這個是我們的一部分使命,我們是想把下十億用戶通過Layer 2 降低費用後帶回更無需信任的以太坊。因為如果你把錢一直放在中心化交易所裡面,是有可能會出現一些問題的。所以我們是希望可以放到一個Layer 2 上,然後繼承以太坊的安全性,這是一個很好的機會。
想像在未來,加密在日常生活中發揮著至關重要的作用,區塊鏈獲得了現實世界的採用,特別是在新興經濟體。
土耳其的孩子可以透過Scroll 上的穩定幣在炎熱的夏天購買雪糕,只需點擊一次即可將加密貨幣兌換成土耳其里拉。
阿根廷的一位老人可以在Scroll 上獲得政府的福利和補貼,減少了詐騙行為,並保證了資金的公平分配。
菲律賓商人可以在幾秒鐘內透過Scroll 進行跨境匯款,而不需要經過許多中間人服務。
肯尼亞的農民可以透過Scroll 上透明的信用評分系統獲得貸款,解決了信任問題,並提高了流動資金的利用率。
這些事情都將在同一時間發生,包括機構上鍊,政府發行穩定幣,以及不同地區法律合規的放鬆。
我們相信下一個十億的用戶必然來自真正需要加密貨幣的地方。 Scroll 旨在將這些用戶帶入加密生態系統,並解決現實世界中的問題,如金融包容性、社會協調和個人主權。
另外第二點,Scroll 的價值觀是我們不會做大量的這種市場宣發和去不同的地方推銷自己。我們希望真實的把一些教育資源,把一些研究資源能帶到非洲這片土地上或其他相似的地區,怎麼能讓他們更快的去學習這個領域,而且不僅僅是Scroll,而是整個區塊鏈的教育。有一些計畫也在非洲做過一些策略,但是他們基本上就是隨意的撒錢發很多的Grant,但其實這樣的社區發展起來就非常的短期,它不是一個非常價值驅動的社區。我們希望透過我們做一些非常正確的事情,把這些教育資源帶到非洲,了解當地真實的需求再進行客製化,看看我們能提供哪些幫助,而不是只是撒錢。我們真的在意這些地方的人,在意這些地方的社區,這是我們很關心的事。我覺得這個其實對現在的許多應用也是一樣,現在很多應用就是從一個鏈部署到一個鏈,再部署到另一個鏈,永遠都是同一波空投獵人,或者說同一波西方用戶。如果我們真的能做到整個使用者群體的多樣化,對於在我們鏈上的應用生態來說也是一個巨大的加成。能吸引到不同地方的人去嘗試體驗你的應用,這也是我們在思考的一個很大的方向。
zkEVM
FF:非常感謝Ye 為我們分享了那麼多關於非洲的一些見解。我聽下來可能發展中國家確實是一個非常大的機會,因為他們已經缺失了我們現在這一代已有的基礎設施,反而會讓它成為一張白紙,可以有非常多新的基礎設施直接應用到他們的實際生活當中。然後Scroll 也可以藉助這個市場把區塊鏈帶給下一個十億用戶。
所以我們就想具體來談談Scroll 在開發的zkEVM。關於zkEVM 分類也是一個老生常談的話題,但我們都知道這是一個關於效能和相容性取捨的問題。然後,Scroll 是一直在和PSE 團隊一起建立Type 1 的zkEVM,這是最相容的一個取捨狀態。我們想問的是,隨著zk 技術的發展,這個取捨有沒有可能被打破,或是未來效能這一端提升後,大家會不會不約而同的選擇相容性更強的方向。
Ye:先聊聊我們的技術棧,我們從最開始2021 年年初的時候,就開始和以太坊基金會的ZK 團隊,也就是PSE 團隊一起在建立Type 1 的zkEVM。然後整個程式碼庫大概有一半的貢獻是在我們這邊,一半的貢獻在PSE 那邊,還有一些可能零星的貢獻者是從社群來的。所以我們一直是非常的擁護這種社群開源開發的氛圍,也一直堅持去為以太坊貢獻代碼,然後整個這個項目的目的是為了建構一個Type 1 的zkEVM,將來真的能用在以太坊的Layer 1 上,能夠改變以太坊的路線圖,給以太坊構建未來,不是說僅僅為我們自己構建,這部分是一個社區版本的Type 1 的zkEVM,由我們,PSE,還有其他的一些社區貢獻者一起在建造。所以說不是全部是我們的功勞,而是說大家的功勞。
然後我們Scroll 自己的話,是需要有主網,需要一個產品功能完善,審計更完善的一個版本。然後根據我們現在的評估就是Type 1 的這個證明開銷是Type 2 的10 倍,所以我們認為說即使你要建立一個Type 1 的zkEVM,你也是需要從一個階段過渡過去,你需要去測試你的架構,所以我們覺得最好的方式是先做一個Type 2 的版本,然後而以太坊的整個架構也在不斷的更新,當你有了一個足夠性能的Type 1 以後,以太坊的架構已經變了,然後你可能又得改。所以我們覺得其實Type 1 和Type 2 的差異主要體現在儲存是不是共用同一組。所以我們目前主要聚焦在先把一個Type 2 做到產品可用的狀態,現在的程式碼庫是從我們合作的這個社群版本衍生出來的。我們改變了它的存儲,並且設計了相應的一些其他模組,優化了GPU 的證明器,優化了其他很多東西,最後在我們的GPU 證明器上把證明時間壓縮到大概接近10 分鐘。這是一個非常非常有效率的zkEVM。但我們仍然會持續的幫助以太坊去建構一個Type 1 的zkEVM,去看它怎麼能變得更穩健,去建構以太坊的未來。所以我們的使命是自己在建立一個高效,產品可用且全面審計的Type 2 的zkEVM。同時,我們也正在幫助以太坊建造一個Type 1 的zkEVM。
因為我們覺得現在性能還是有很大差距,需要實際測試,所以我們還是先聚焦在一個Type 2 的zkEVM,而且它完全不會影響任何的兼容性,因為基本上所有的合約,所有的工具,比如Foundry,Remix,Hardhat 等等的工具是完全相容的,不需要任何的插件。而且我們馬上上線的測試網或主網是支援Paring 等等的預編譯合約,相容性做的非常的好,只是說我們覺得要進入到下一個階段仍然需要很長時間的努力。同時我們認為沒有證明一定不能算是一個安全的Layer 2 ,zkEVM 或說zkRollup,我們是很堅持安全性的原則的。
關於我們的開發狀態基本上已經很完善了,所有的opcode 甚至連push 0 ,我們可能是唯一一個支援push 0 的zkRollup,甚至不僅是zkRollup,是所有的Rollup 裡面第一個支援push 0 的,並且我們是唯一支援Paring 並且可以驗證Paring 的一個zkRollup。這是我們自己開發進度和相容性的情況,而且我們審計已經在進行當中,大家可以看看我們的Sepolia 的這個博客。
然後關於各家對這個相容性的發展方向,我個人的猜測是大家最後還是會往相容性更強的方向發展,除了Starkware。因為它上面有Kakarot 去支援zkEVM,它自己是不會考慮另一個方向的。它應該是Cario 語言一條路走到黑。而現在zkSync 上線以後,我們從開發者那裡獲得的回饋是還需要很多的程式碼更改,他們還是不相信它的安全性。因為對合約而言最重要的就是安全性,你效率再高,如果說需要改代碼,需要重新審計,代價就一定是開發者這一端。這一定不是一個非常永續的發展方向。所以我們覺得一定要做到非常相容,讓開發者不修改自己的程式碼,這是非常非常重要的。我覺得大家還是會朝這個方向努力。
但我不覺得Type 1 是一個很精確的概括方式。我每次只是說以太坊等效,EVM 等效,還是語言層面相容。因為我覺得這是一個更直覺更直接的概括方法,因為它沒有一個準確的定義。 Vitalik 只是模糊地給了一個分類的方式,我覺得都是可以改的,我覺得很難說把一個公司的願景根據你現在的階段定義下來。就像我們的願景是我們先在Type 2 上線我們的測試網和主網,然後實戰測試,性能測試之後,再去考慮其他的升級,持續去幫助以太坊構建Type 1 的zkEVM,這是我們的一個方式。用Type 1 ,Type 2 很不準確,因為這是一個很階段性的目標。
整體來說,我覺得如果你要做zkEVM 的話,一定是要朝著相容性發展,因為現在證明技術真的提升地非常的多,能把zkEVM 做的非常非常的快,所以我覺得沒有必要去因為兩三倍的一個效率,去犧牲相容性。甚至我覺得能不能更快都是一個問題,所以我覺得還是會朝著相容性更好的方向發展。
FF:明白謝謝Ye,Scroll 一直是在保持相容性的情況下提升效能。其他家可能選擇不同的取捨方案,但可能最終大家都會走向以太坊相容,除了Starkware。但是從使用者角度的話,其實他們更直覺的感受應該主要是兩個方面,一個是速度,一個是成本。速度方面,出塊時間方面,Scroll 一直穩定在3 秒左右,原先Polygon 在10 幾秒,最近也降到3 秒多,Linea 目前也是在3 秒左右。想問下, 3 秒出塊時間這個是由什麼決定,是排序器的性能決定的嗎,因為現在大家都是中心化排序器,常見的Alt L1的出塊時間會更短,而且他們是走共識層。這塊有什麼考慮或是什麼瓶頸嗎?
Ye:我們現在設計的3 秒,其實也可以把它縮短的更快。我們現在定義在3 秒,是在一個測試階段,是根據我們現在證明者的量。因為你如果說縮小到更短的話,你是需要更多的證明者,去及時證明區塊。縮的太短以後,你可能數據上鍊成了更大的瓶頸。而且現在zkRollup 普遍真實的吞吐量也沒有像到幾千那麼高,它真實的需求可能就幾十。所以說其實你太快出塊也沒有太大的用處,中心化的排序器是可以做的很快,但這也是一個中間的過渡期,取決於證明者的體量,取決於鏈上傳數據的瓶頸。
其實你可以預估最大的吞吐量是多少,然後倒推出來幾秒出塊,幾秒鐘出塊也是一個取捨。比如說3 秒出一個空間大小為10 million 的區塊和30 秒出一個空間大小為100 million 的區塊是一樣的。如果單看出區塊時間的話,你可以幾毫秒出一個只有一筆交易的區塊,例如Arbitrum 之前一段時間我記得一個區塊只有一筆交易,然後出塊速度特別快。我不知道現在的狀態。所以我覺得看區塊的容量有多大,更好的一個方法可能是Gas / s,就是你每秒能處理多少Gas,這是一個比較好的衡量方法,比吞吐量,出塊時間要更科學一點。這完全取決於你的瓶頸是上鍊還是證明者,不完全只是因為中心化排序器的效率問題,有很多重因子的影響。
第二個就是大家去中心化以後,也取決於去中心化的方案。如果你走共識協議,共識又會分為需要許可的共識和無需許可的共識。例如BFT 可能會更快,但如果要走最長鏈可能會很慢。所以這個都是Rollup 各自理念的選擇,有些為了更快的最終確認,為了使用者體驗,有一些可能就覺得要更去中心化,可能會放棄這部分出塊時間的優勢。
FF:明白,謝謝Ye,其實出塊時間還是各自鏈的取捨所決定。那成本方面的話,我們也想問一下,現在zkSync 還有Polygon zkEVM 都已經上主網了,我們看到他們的Gas 費其實相對OP Rollup 還是要高一些。但zkSync 和Polygon zkEVM 可能是兩個不同的情況,zkSync 是互動的人太多了,所以Gas 價格上漲,Polygon zkEVM 是互動的人太少,所以導致他們平攤L1的交易手續費高了,所以自然而然Gas 費就高了。 Scroll 目前在測試網絡交易手續費還是非常低的,想問下上主網了之後,是怎麼考慮解決這兩個問題的。
Ye:大家可以去看一下我們Sepolia 的博客,我們描述了很多做的一些優化,裡面有很多技術性的概括。我們在Goerli 測試網之後又做了非常大量的優化。 Sepolia 的博客上面有一個圖,就是在講我們是怎麼去壓縮證明。具體而言,我們把之前一個區塊對應一個證明,變成了Batch, Chunk,Block 三層結構,可以先把block 證明聚合出來一個證明,又再把這個證明給聚合出來。我們最後聚合了兩高層,然後兩大樓層裡面又有兩層聚合來壓縮證明和驗證。我們做了非常多的工作來去減小這個驗證成本。我們也在看更好的遞歸證明的算法。另一個事情就是我們透過控制頻率,包括出塊的頻率和上鍊提交資料的頻率,也在跨鏈橋那塊做了大量的優化,最後把Gas 成本又降低了50% ,這個也可以在博客裡面看到。
然後之後還是會有很多的優化方向,比如說我們最近在研究EIP 4844 以後,怎麼把我們的跨鏈橋升級,利用blob 去更進一步地降低我們的Gas 費。後面我們也會有部落格文章專門介紹這個。而我覺得還有一個很大的方向,為什麼現在zkEVM 還是比OP 貴,就是因為所有的ZK 專案都在聚焦ZK,怎麼把zkEVM 做出來做好。這個技術本身已經非常非常的複雜了,所以我們還沒有到深度優化的階段。但是OP 不一樣,OP 他們上線這麼長時間,一定是要注意成本的。所以我覺得還是優化ZK 的團隊才剛著手開始做,比如說像鏈上資料壓縮,將鏈上放的資料變少,但不是說把資料放在其他地方,之前比如說我們要把原始資料放在主鏈上,但現在我們可以放一個壓縮過的數據,不過這個數據還是能恢復出來,我們只是要在ZK 電路裡面證明說這個數據等同於之前沒有壓縮過的數據然後去用。現在的ZK 團隊可能大部分都沒有做這個事情,當把這個事情再做完以後,可能成本又會進一步的壓縮非常非常的多,所以還是有很多機會通過一些ZK 友好的壓縮算法把這部分的成本壓下來。只是說現在大家聚焦的都是怎麼把zkEVM 做全做好,做得性能更高,但成本這部分會成為下一個很重要的話題。
FF:明白,謝謝Ye。我理解一個可能是透過聚合證明的方式把這個成本打下來,一個就是未來透過DA 層的一些取捨把成本進一步的壓縮。那就想問Scroll 在解決成本和速度方面,Scroll 有沒有可能也會像Starknet 一樣採用L3的方案,最新融資的Kakarot 是用Cario 語言寫的EVM。想請教下Ye,在Scroll 上有可能再搭建一個EVM 嗎,類似現在L1-L2的架構,或者是像Kakarot 一樣用合約寫一個EVM?
Ye:關於Layer 3 的話題,我們目前的重點還是我們自己的開發,怎麼去做一個容易用完整的系統,而不是盲目的去追求這些飄在空中的敘事。因為我們覺得如果大家想建造Layer 3 的話,只要fork Scroll,然後部署在Scroll 上,因為我們代碼也是開源的,大家fork 部署也很方便。就像我之前說的,我們覺得每個人都在講Layer 3 的故事,但是支持Layer 3 尤其是基於SNARK 的Layer 3 ,是需要支持Pairing 這個預編譯合約的。但現在除了我們以外,沒有看到任何一個其他的zkRollup 是支援Pairing 這個預編譯合約並且支援驗證Pairing 的。相當於你缺了最重要的一環,但還是要講一個更遠的故事。我們希望說做更多的事情,而不是說光講一個故事。
其實這一點,你可以看哪一條鏈上的ZK 應用更多也看得出來。我們鏈上有非常多原生的ZK 應用,因為我們支援了支援了Pairing。你講故事是一方面,但你實際上能不能支持是另一方面。在我看來Scroll 很容易支持,可以fork,部署,驗證。 Scroll 的Layer 3 很容易搭建,而且只有我們能支援基於SNARK 的ZK Layer 3 。
然後第三點就是Kakarot 是很不一樣的設計。 Kakarot 是一個Starkware 上的應用,它不是一個Layer 3 ,之後有可能會往Layer 3 發展,但它現在就是一個Cario 寫的程序,用的還是Starknet 自己的排序器。這個不像是在Scroll 上再搭建一個Layer 3 ,更像是在Scroll 上用Solidity 寫了一個EVM,然後用戶去發交易給這個EVM 去執行。
FF:明白,謝謝Ye,最近還有一個敘事是,zkSync 剛剛推出了他們zk Stack,可以一鍵發L3,L2。之前像是包括Op 和Arbitrum 都有推自己的一套解決方案,想問下Ye,Scroll 是怎麼看待現在RaaS,zkRaaS 這個賽道,Scroll 會不會也推出自己的一套解決方案。
Ye:我個人覺得說,這確實不是我們現在的重心,而且大家想用Scroll Stack 或者SDK,直接Fork 就好了,我們也沒有必要起一個時髦的名字讓大家一定要用。它不是我們目前的一個重點,但是大家如果想用的話很容易用。這是第一個原因。
而且我個人覺得,比如說像OP Stack 現在是最受歡迎的。但現在的一些爭論是說這個框架講的故事是說每個模組都很靈活,但實際上有多靈活,能不能支持零知識證明,Arbitrum 的證明。這個標準是很值得商榷的,還是需要很長的時間檢驗才能去確定什麼是一個好的技術堆疊標準。我比較相信,Scroll 的價值觀是和社群一起建設,如果要建造這樣一套標準,一定是透過社群的方式去建構。例如提前跟Arbitrum,Optimism,zkSync 和Polygon 一起去推一個標準,只有這個方式才能讓所有的Layer 2 保持統一。不然的話,Arbitrum 一定不會為了OP Stack 改自己的Stack,然後讓這個介面相容。各家還是在推各家的Stack,永遠不是互相相容的。這樣的話Stack 就是自己的一個fork,而不是一個真的有彈性的框架。
再加上OP Stack 是一個沒有完全成熟的框架,它裡面沒有證明,作為最關鍵的一環它缺失了。這樣的話,大量Fork 的鏈都會覺得自己是條Layer 2 ,但是沒有一個人能達到Layer 2 安全性的標準。用Layer 2 是因為大家相信以太坊的安全性,但沒有Layer 2 能達到以太坊的安全性,因為沒有一個Layer 2 有證明。我覺得這個推的特別廣,其實對於加密領域不是個好事情。大家只看重敘事,而不是重視真實的安全。我覺得我們證明系統還沒有成熟的階段,是不想透過大量的營銷手段去推市場化,去吸引大家的資金。當我們覺得框架的成熟度到了再去推是比較合適的。這是第二個原因為什麼我們沒有把它當作一個重點。
第三個原因是,我們自己經營過一個完整的zkRollup。我們知道跑一套這樣的東西有多複雜。你需要考慮合約的可升級性,你需要考慮排序器的穩定性,你需要考慮自己的證明者網絡和模型,有非常非常多這樣複雜的事情。我覺得有能力運作這套Stack 的團隊,或是有需求的應用是少數的。我們不覺得說,大部分的團隊有能力去運作自己的Rollup,還沒到能去維護這樣一個系統的時候。如果說之後有一條Layer 2 被Rug Pull,或者說會出現重大的問題的時候,對於Layer 2 整個領域來說也不是一個好事。總體來說,推行Layer 2 Stack 是一個好的方向,但是如果一旦出現了事故,Layer 2 變成一個MEME 的話,這個不是我們希望看到的。
最後一個原因,就是互通性的問題。不同的應用程式跑自己的鏈,他們之間的互動就不是那麼無需信任。我覺得這是一個很大的問題,就是在割裂一個本來就具有互通性的系統。我們Scroll 目前的重心就是要做那個預設的Layer 2 ,去吸引獲得最大的網絡效應,捕捉一些具有互通性的,有安全性需求的應用場景。這對我們來說是目前最重要的事情,不排除以後可能會考慮相關的一些方向。但目前說這個還是有點早,我們還在看它的需求,看一些沒有解決的關於互通性的一些問題。
ZK 硬件加速與證明者網絡
FF:明白,謝謝Ye。聽下來就感覺Scroll 是在用一個非常務實的方式去推進自己的Layer 2 ,不會專注於去講一個趨勢性的敘事。那Ye 你剛才也提到了其實Layer 2 本身現在的發展重心要更多地解決問題比如說性能瓶頸的問題,而不是在現在需要去講框架的時候。我們也知道Ye 之前有發表過一篇可以說在硬加速領域最重量級的論文,PipeZK。所以我相信Scroll 在硬加速方面應該遠遠甩開其他競爭對手。我想問的是,現在在硬件加速方面,Scroll 現在有什麼最新進展,Ye 可以透露下嗎。包括現在的合作模式和技術升級?
Ye:我再補充一點背景,我們是第一個研究硬體加速方向的團隊。除了PipeZK 以外,我們還有GZKP。我們研究過FPGA,ASIC 和GPU 的加速,所以我們在硬體加速這個方向是很有專業性的。然後目前來說有很多合作的夥伴,像Cysic,他們偏向於用ASIC 支持證明者網絡。但我們自己不會做IPGA 和ASIC,因為FPGA 和ASIC 是一個很需要專業團隊,專業技能的領域。我們自己在內部沒有辦法有這樣一個團隊去做這樣的事情,我們內部團隊還是聚焦在GPU 的一個方案,我們在寫一些CUDA(註:CUDA® 是NVIDIA 專為圖形處理單元(GPU) 上的通用計算開發的平行運算平台和程式設計模型),去做一個更快版本的GPU 證明者。我們是寫軟件的,我們的初衷是,希望更多的人能去跑我們的GPU 代碼,而不是說我們自己要做一個非常厲害的ASIC,去壟斷這個市場。我們還是在鼓勵這個市場不是變成一個零和遊戲,而是一個公平競爭的市場,大家競爭成為最快的性能最好的證明者,有ASIC 的,FPGA 的,還有GPU 的。然後我們自己會發一個版本,大家用我們這個GPU 算法已經可以成為我們的一個證明者,然後我們現在GPU 的效能已經優化的非常非常好,能比CPU 的證明者快大概10 倍左右。我們還在不斷的去迭代它的性能,去思考下一代的這個證明系統的選擇。
就具體的合作模式而言,我們也還在探索,現在已經有很多硬件公司承諾說會加速我們的這個Stack,對我們來說是,看到社群在做這個事情,我們會非常的欣慰。 ***我們自己會站在一個比較中立的角度去告訴他們怎麼跑我們的基準測試,怎麼去給他們一些教育,一些幫助,而不是說我們喜歡誰,誰就是一個贏家。我們現在在想可能會推一些證明者競賽之類,激勵大家越來越快證明。在我們主網剛上線的時候不會採用一個完全去中心化的一個證明者網絡,因為我們覺得整個系統還是需要再次在主網上檢驗,我們測試網可能已經跑了大半年,但是還是需要主網的一些檢驗才會進一步地去中心化,我們已經有幾個比較好的提案去討論我們怎麼去中心化我們的證明器和排序器,我們可能會先通過一些競賽慢慢得去中心化這樣的方式去推進。
FF:好的,謝謝Ye,剛聽下來可能Scroll 會更專注於軟件優化方面,硬件方面的話會跟其他公司合作。就剛剛提到的去中心化證明者這一塊,社群裡面大家對於Scroll 的證明者網絡都非常在意。我印象裡Scroll 應該是第一個提出要去中心化證明者。因為有許多以太坊POW 轉POS 之後出現的閒置的GPU,Scroll 的證明者網絡對雙方而言都是一個很大的一個機會。在這裡,就想代表社群問一下,未來想要參與Scroll 的證明者網絡,GPU 有什麼特殊的要求,或是有什麼需要適配的地方。這個大概能測試會是什麼時候。
Ye:我們目前證明者的要求的話,是一個CPU 加兩卡或四卡GPU 的要求。其實我們對GPU 的要求比較低,應該是只要8 GB 內存的1080 都可以跑我們的證明者。但對CPU 的現在要求比較高,應該還是在200 GB 的CPU 內存以上,所以還是一個代價比較高的證明者。在這一點上,沒有任何一家zkEVM 能把它自己的CPU 成本降低到200 GB 以內。這是一個最大的問題,也是我們在看的一個方向,能不能把一個zkEVM 的區塊切小,然後去分段證明等等。
FF:那如果說社群的開發者和參與者,想要測試的話,大概什麼時候能測試這個證明者。
Ye:我們的CPU 證明者是完全開源的,大家可以隨時去跑CPU 證明者。然後等主網上線以後,我們還會繼續去優化我們的GPU 的證明者版本,去適合更多的不同的GPU 的型號。所以我覺得可能大概在那個時間點,大家可以去嘗試自己跑一跑證明者。但如果真的開放出來,大家能接進證明者網絡裡面去的話,我覺得還是要一段時間的,因為你得有一個支持網絡的系統才行。我們目前整個系統的設計是去中心化的,但是需要設計具體的激勵模型,懲罰模型等等這些事情。所以真的接到網絡裡還需要一段時間,但如果只是跑的話現在就可以跑,你可以運行自己的證明者,因為證明者的代碼都是開源的。
FF:好嘞,謝謝Ye,也非常期待就是未來證明者網絡的上線。聊到證明者網絡的去中心化,其實裡面會牽涉到非常多的協調問題。然後Scroll 現在有沒有什麼可選的方案可以透露一下,因為我們有研究看過別的鏈,包括像Polygon 他們應該走的是一個POE ( Proof of Efficiency ) 的方案,類似於無需許可的提交證明,最快的證明者會勝出。也有像Mina 和Nil 一樣走類似證明市場的方案? Scroll 在這方面有沒有什麼自己創新性的方案呢?
Ye:我們現在整個網路去中心化的話,比較確定的是我們會有一個***證明器排序器分離(Prover Sequencer Separation, PSS) 的方案,以太坊Layer 1 叫Proposer Builder Separation ( PBS )。我們會確定說排序器和證明器會是兩個分開的角色,但是具體兩邊的設計會是一個很長期的問題,因為如果你把證明器設計完,再設計出排序器的時候,就會發現有問題。所以從長遠來看,證明者可能會影響排序器,排序器可能影響證明者。要涉及例如交易手續費多少留給排序器,多少留給證明器的激勵模型。我們有很多套方案,但是還沒有確定要採用哪一套。
我們目前的理念偏向於避開最快的證明器永遠勝出,因為如果說你的系統依賴於最快的證明器,那麼社區裡其他人跑了一個證明器,發現跑不過最快的那個證明器,長時間沒有獎勵可能就走了,整個系統就會依賴那個最快的證明器。當你依賴最快那個證明器的時候,它可能就沒有動力去繼續升級它的證明器。當它一走的時候,你的系統會出現單點故障,所以我們會盡可能想辦法避開這樣的設計。 *** 但具體設計的話,我們之後會慢慢地去公開各種提案,然後我們會從裡面選一個,也會和社區討論,聽社區的意見,但現在還比較早期。
FF:明白,聽下來可能Scroll 方案會更偏向於避開最快證明者,希望就是證明者之間是一種自由競爭的一個狀態,這樣會激勵這個網絡能長久的會發展下去。
Ye:對,不是最快的證明者一直贏。
證明系統
FF:這樣的話我覺得是最好的,能讓更多的社群的參與者能夠進來。那接下來我們就聊聊證明系統,其實大家現在想到ZK,還是會想到兩類證明系統,一類是STARK,一類是SNARK。然後Ye 你之前在演講中也說過,現在證明系統也是模塊化的趨勢,那是不是意味著這樣的分類就不適用了,之後我們談到證明系統,就得按它前後端分別用的是什麼組件來劃分。然後談到STARK,也不再是Starkware 所獨有的一個證明系統。印象裡STARK 是抗量子攻擊的,未來是不是SNARK 也可能有這樣的特性。
Ye:對,我覺得SNARK 和STARK 確實是差別很小,它只是一個多項式承諾( Polynomial Commitment )元件的差別。 STARK 獨有的這個元件叫做FRI。 SNARK 現在也可以抗量子。如果你一定覺得這很重要的話,像是Plonky 2 之類的就是抗量子的,我們使用的Halo 2 證明系統換成FRI 的話也是抗量子的。所以我覺得這不是一個特別明顯的區分,而且我覺得抗量子這個事情不是目前最大的一個考量。大家用FRI 也不是為了抗量子,大部分是因為它產生證明比較快,效率可能對證明系統來說更重要。 FRI 確實是一個未來很重要的一個方向,它可以把你的Proof 做得很快,但同時它驗證成本也很高,所以你需要不斷地遞歸把成本降低下來。這也是我們在探索的方向。
證明系統確實是非常模塊化的,我們希望推行的是一個社區的標準,大家都可以用同一套證明系統,然後這個框架可以支持FRI,支持STARK,SNARK,這是我們希望看到的。
FF:明白,謝謝Ye。我們在這可能會問的更細節一些。 Scroll 現在的兩層證明系統都採用的是Halo 2 ,我們很好奇的是,從取捨角度沒有最優只有最合適的,是不是意味著對於zkEVM 而言,Halo 2 就是最適合的證明系統。
Ye:我覺得不是的,因為Halo 2 它其實是一套程式碼框架。其實當我們在用Halo 2 的時候,我們更多是把Halo 2 作為一個證明系統的模組化框架。 Halo 2 裡面你可以加KZG 就變成了PLONK,加FRI 就變成了STARK,可以加各種元件變成各種新的證明系統。這是Halo 2 的一個解釋,具體到某一個證明系統,是需要加上其他很多描述性的陳述。
對於zkEVM 而言,現在有很多方向都很有前景,一種像我們現在使用的Halo 2 加KZG 是最傳統的,安全模型也是經過時間檢驗的。另外一個方向就是Halo 2 加FRI,或是用Plonky 2 或STARK 的方式去做zkEVM,效率也很高。根據Polygon 的數據,他們的這個證明系統效率也很高,所以我們也在看這個方向。差異主要在於它不依賴橢圓曲線,可以導致節省很多橢圓曲線有限域的一些計算,這是它非常快的一個很重要的原因。另外對於FRI 而言,他們可以用Goldilocks(64 位)的小域讓zkEVM 更快。
另一個大的方向是Folding,像Hypernova,Supernova,Paranova 等等各種各樣的Nova 證明系統。原理上,FRI 比Plonk 快主要是因為它的域不一樣,它的有限域表示元素會更小更快。然後Folding 主要原理是當你需要證明100 個相同的程序的時候,如果用其他的證明程序,你可能需要產生100 個證明,或者把100 個程序放在一起然後產生一個大證明。用Folding 以後你可以把這100 個程式經過很小的代價折在一起,然後只證明最後折過的那一個就可以。所以它可以減少一部分證明者需要的成本,這是讓它非常快的一個原因。這個方向也很有前景,但是還是有很多沒有解決的問題。例如不同程式之間的查找表,包含它沒有一個很成熟的開發框架,讓大家去開發基於NOVA 的程式。大家也還在觀察到底是不是適用,它的效率有多高。我覺得一個比較大的可能性,它對於證明很多Keccak,ECDSA 這樣重複性的電路而言是非常有效率的。這是一個很好的方向,例如說階段性地先把一部分換成Folding 或FRI,去盡可能地把性能至關重要的部分先替換掉。但這裡面有很多問題,像是你還是要跟剩下的部分連結起來,還要考慮整個系統的稽核安全等等。
所以我覺得這還是一個需要仔細對比的方向。我們內部做了大量的基準測試,怎麼去建造一個系統,它可以更公平的去比較Folding 還是FRI 好。我們在這個事情上做了很多工作,會有很多基準測試的結果,也會有文章可以討論我們的結論。為什麼我們覺得下一代的證明系統需要朝這個方向演進。
FF:我這邊追問一下,關於Folding 是不是有點類似用遞歸的方式,在電路上面進行一層聚合。然後我們之前講到的證明聚合的話,是指在證明這個層面上做了一些聚合。
Ye:是的,是這樣一個大概思路。但它還是跟遞歸很不一樣,因為它真的能把要證明的東西線性組合起來,然後只證明一次。結果上看有點相似,但是實際上還是會有很多差別。
細節上,舉一個不是特別生動形象的例子。比如說你現在有100 份作業要寫,傳統的證明方法是說一份的寫過來。遞歸有點像是100 個人,每個人都寫一份,最後想辦法把它們怎麼整合在一起。 Folding 更像是一個人拿了一個長長的筆,這個筆有100 個觸頭,他寫一個就寫了100 個。有點像這個感覺,他有點偷懶的想法,然後把任務壓縮到了一起,只寫一遍。
遞歸的話,他不減少工作量,他還是要寫的,只是最後想辦法給聚合到一起,比如說100 個人寫完以後疊在一起,然後老師只批一次或者怎麼樣。
FF:那Folding 有可能就像我們之前用複寫紙,下面墊了100 張,就寫了所有的作業。
Ye:對對,有這種感覺,但也沒有那麼神奇,它還是有一些成本的。例如複寫紙你寫100 張的時候,最底下那個痕跡也會比較淺。
FF:那我們應該可以期待Scroll 未來證明系統上會有一些升級。說到升級證明系統的話,我們看之前的架構,Geth 客戶端是會將執行踪跡遞交給證明者,這一部分看上去不是強綁定的關係,所以證明系統這塊是不是也是類似於一個元件,升級證明系統就類似升級組件。
Ye:是的。
FF:另一個趨勢是去年Barry Whitehat 提出的lookup singularity,包括a16z最近推出了Lasso 和Jolt 也是一個針對Lookup 做了非常大的優化和升級,想問下Ye 是怎麼看待這個趨勢方向的?
Ye:我覺得這也是一個很有前景的方向。它們的核心思想是說做一些非常巨大的查找表。比如說之前查找表可能是2 的十幾次方,二十幾次方。現在他們可以做2 的一百多次方的查找表。我覺得這是一個很有趣的方向,但怎麼去只用查找表搭造電路,是一件挺有挑戰的事情。他們的構想是,把查找表做的非常便宜,以後大家就只用查找表就可以證明各種限制。但實際上因為先前的查找表Caulk, Baloo, Cq,大部分的都只能證明固定的查找表,但不能證明動態的查找表。我還沒有具體去看他們新的架構能不能支援動態查找表。如果能支援動態查找表,是一個非常好非常厲害的一個設計,才能適用到zkEVM 裡面。所以我覺得還是需要再觀察個一兩個月,看多少的電路部分可以用查找表代替,再去看它的效率。我們已經開始看這個方向了,正好今天早上還在分享了查找表的這篇論文,但zkEVM 的那篇論文還沒有分享,估計這一兩周可能就會有我們自己的一些結論。
Scroll 的願景與價值觀
FF:好嘞,謝謝Ye 和我們分享了這麼多關於證明系統方面的一些最新進展。然後我們這次的Talk 的主題是Scroll 與ZK 同行,那麼目前來說Scroll 披露的主網上線時間應該是Q3和Q4,所以我們最希望Ye 做一個美好的期許,在可預見的未來,你希望Scroll和ZK 可以發展到什麼樣的理想狀態。
Ye:我們預計在Q3~Q4(註:實際上線時間2023.10.17)的時候會上線主網。我們的願景是讓下十億用戶透過Scroll 進入以太坊生態。我們也一直堅持開源,和社群共建,保持中立的原則。我們會比較相信Layer 2 作為擴容技術,它不光是要技術擴容,去繼承以太坊的安全性,去增加tps,更重要的是要繼承以太坊那些良好的品質。比如說以太坊相信去中心化,相信中立性。很多事情以太坊不會做,以太坊不會去搞一些活動支持大家去做一些瘋狂的事情,但很多Layer 2 現在已經做了,例如非常瘋狂的市場宣傳。
所以我希望Scroll 在未來的發展過程中能始終堅持自己的信念和價值觀。以太坊不會做的事情我們就不會做,我們希望成為大家預設的以太坊擴容層。現在所有Layer 2 其實都在朝著和以太坊不那麼一致的方向發展。他們會有自己的市場策略,會有自己上線的目標,而我們希望成為僅存的和以太坊保持高度一致的Layer 2 。因為我們覺


