風險提示:防範以"虛擬貨幣""區塊鏈"名義進行非法集資的風險。——銀保監會等五部門
資訊
發現
搜索
登錄
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt
BTC
ETH
HTX
SOL
BNB
查看行情
詳解OlaVM
Sin7y
特邀专栏作者
2022-12-19 10:50
本文約3179字,閱讀全文需要約5分鐘
OlaVM當前進展和下一步規劃

TL;DR

一級標題

一級標題

一級標題

1. 我們正在努力構建第一個基於PE-VM 的ZKVM,通過ZK-friendly 的設計和ZK 算法的改進,使它具備更高的吞吐率;其技術特點如下:

a. 證明快:

i. ZK-friendly: 獲得更小的電路規模,以及精簡的底層約束單元;

ii. 更快的ZK 實現: 對plonky 2 的進一步優化改進;

b. 執行快:

採用並行執行的VM(在Parallel prove 技術背景下,證明生成時間越短,作用越明顯)。

c. 針對目前執行效率最快的ZK 算法,我們完成plonky 2 的電路設計及算法研究,你可以打開鏈接:https://github.com/Sin 7 Y/plonky 2/tree/main/plonky 2/ designs去了解plonky 2 更多的設計,下一步我們將對其進行優化改進,請持續關注。 。 。

一級標題

一級標題

一級標題

我們正在做什麼?

OlaVM 是首個把並行執行的VM 引入的二層的ZKVM,融合兩種方案的技術點,獲得更快的執行速度和更快的證明速度,從而在未來實現更高的系統吞吐率。

在現在的以太坊系統中,造成吞吐率慢的原因主要有兩個:1. 共識的過程:每個節點重複執行交易進行交易的有效性校驗;2. 交易的執行:交易的執行是單線程的。

盡可能快的生成證明

如何獲取高吞吐率?

二級標題

二級標題

二級標題

盡可能快的證明生成(目前最高優先級)

a. Prophet

想要加速證明的生成,其大體可以分為兩個部分:盡可能小的電路規模和盡可能快的算法執行;盡可能快的算法執行又可以分為:算法本身參數的提升(比如選擇更小的域)和外部執行環境的改善(比如採用硬件加速)。

b. Zk-friendly

1. 盡可能小的約束規模

是的,證明生成的消耗是和約束的整體規模n 強相關的,如果能大幅縮減整體的約束規模,則證明的生成的時間則會明顯減少。這就要求,在VM 的設計中,你需要使用盡可能多的設計以減少整體的約束規模。

Prophet 的意思為“預言家”,先“預言”再“校驗“,其主要目的是:針對一些複雜的計算,我們不需要用VM 的指令去實現這些複雜的計算(可能會消耗很多的指令,從而增大VM 的執行軌跡和最終的約束規模);而是利用內置的Prophet 去完成計算,並且把結果發送給VM,然後VM 只是執行對於這個結果的合法性校驗。 Prophet 是一些具備特定計算功能的內置函數,比如除法計算,平方根計算,立方根計算等等,我們會根據實際場景,逐漸豐富Prophets 庫,使得對於大部分複雜計算場景,整體約束的縮減效果達到最大化。

由於Plonky 2 的驚人性能表現,我們暫時以Plonky 2 作為OlaVM 的ZK 後端。我們已經深入分析了Plonky 2 的Gate 設計,Gadget 設計和協議原理,並從中找到了一些優化方向,你可以關注我們的Github Repo: Plonky 2 designs 去了解更多相關的信息。

二級標題

二級標題

一級標題

一級標題

兼容性?

兼容性?

All Together

集成上述所有模塊,整個系統的數據流程圖大概如下圖所示:

Coming Soon

一級標題

一級標題

一級標題

參考

參考

參考

1.OlaVM:https://olavm.org/whitepaper/OlaVM-07-25.pdf

2.Plonkish:https://zcash.github.io/halo 2/concepts/arithmetization.html

3.Cairo VM:https://starknet.io/docs/how_cairo_works/cairo_intro.html#field-elements

4.Plonky 2:https://github.com/Sin 7 Y/plonky 2/blob/main/field/src/goldilocks_field.rs

5.Ingonyama:https://github.com/ingonyama-zk/cloud-ZK

6.Semisand:https://semisand.com/

7.Plonky 2 designs:https://github.com/Sin 7 Y/plonky 2/tree/main/plonky 2/designs

關於我們

關於我們

關於我們

GitHub | Twitter | Telegram | MediumMirror | HackMD | HackerNoon

Layer 2
zkSync