以太坊二層百花齊放,解讀StarkNet的擴容之路

老雅痞 發佈 2022-05-24T07:00:24.873738+00:00

2022年5月9日,據官方消息,以太坊二層擴容方案StarkWare宣布,StarkNet Bridge的第一個版本StarkGate Alpha上線主網,用戶可以通過StarkGate Alpha將資產從以太坊主網轉移到StarkNet Alpha。


2022年5月9日,據官方消息,以太坊二層擴容方案StarkWare宣布,StarkNet Bridge的第一個版本StarkGate Alpha上線主網,用戶可以通過StarkGate Alpha將資產從以太坊主網轉移到StarkNet Alpha。

StarkNet簡介

StarkNet是一個運行在以太坊上的無需許可的去中心化Validity-Rollup(也稱為「ZK-Rollup」),它作為以太坊上的L2網絡運行。StarkNet允許任何dApp實現無限規模的計算,而不影響以太坊的可組合性和安全性,這要歸功於其安全且且可擴展性更強的加密證明系統——STARK。StarkNet使用Cairo語言編譯,這是以太坊上第一個生產級的圖靈完備的馮諾伊曼驗證器。Cairo和STARK都是由StarkWare自主開發的,並為團隊所有的生產級應用提供動力。

StarkNet Alpha於2021年6月在公共測試網上發布,並於2021年11月主網上線。在主網部署時,StarkNet已經在類似以太坊的狀態下提供通用計算。在整個開發過程中,StarkWare團隊選擇了一種首先發布最重要功能的策略,其本質上是嘗試與社區共享進化過程。

因此,目前的StarkNet其實還遠未完成。但是,開發人員已經可以藉此創建有意義且複雜的應用程式。如今,有數百名開發人員依賴StarkNet、大量dApp,以及一些外部團隊為StarkNet生態系統開發工具和基礎設施。

自2022年初以來,StarkNet生態系統逐漸已經達到可用性門檻,其已經有能力構建完整且具有一定可用性的dApp。據其團隊稱,接下StarkNet將專注於系統的性能開發,因為在當前狀態下,它僅能夠支持有限的交易流。其團隊希望在2022年下半年初實現TPS至少比以太坊高一個數量級,而成本至少比以太坊低兩個數量級的目標。

Zero Knowledge Proof、Rollup和ZKSTARK

1、零知識證明

雖然區塊鏈為我們帶來了透明度、不變性和去中心化等好處,但隱私的概念卻很少被討論。這就是零知識證明(ZKP)的用武之地——可組合性、隱私性和不變性的組合。

零知識證明是一種加密方案,通過該方案,PROVIDER方(PR)可以向VERIFIER方(VER)證明特定信息的真實性,而無需透露任何額外信息。舉例而言,VER方如果想要從金庫中收集獎勵。則需要以下幾個步驟:

  • PR方秘密生成密鑰(K)
  • VER驗證密鑰(K),允許獲得獎勵
  • ZKP被驗證證實

同樣,如果PR方希望從保險庫中檢索獎勵時則需要:

  • PR方生成密鑰(K)並秘密地從保險庫中檢索獎勵
  • VER方驗證獎勵對應於僅在同一保險庫中可用的獎勵
  • ZKP被驗證證實

總之,其他方的信息和個人數據的詳細信息將總是保持匿名。我們不難發現,ZKP相當重視隱私保護,這種方法的有趣之處在於它非常簡單、安全並具有令人難以置信的可擴展性。因此許多區塊鏈應用程式都選擇它來實現這些優點。

  1. Rollup

以太坊Rollup是以太坊智能合約中交易的鏈下聚合,其通過將以太坊吞吐量從當前的15 tps提高到超過1000 tps來減少費用和擁塞。

ZK-Rollups是正在開發的用於構建2層的選項之一,其通過在單個交易中處理大量轉帳來提高可擴展性。Plasma每次轉帳創建一個交易,ZK-Rollups將數百個轉帳聚合成一個交易。智能合約將解構並驗證單筆交易中的所有轉帳。ZKP方法則被用於公開展示和記錄以太坊區塊鏈上區塊的有效性。

3、ZKSNARK和ZKSTARK

ZKSNARK和ZKSTARK實際上是兩種不同類型的零知識證明。

ZK-Rollup方案由兩種類型的用戶組成:中繼者和交易者。

1、交易者創建他們的轉帳並通過網絡廣播轉帳。智能合約將數據存儲在兩個Merkle樹中:

2、中繼者收集大量轉帳以創建聚合。生成SNARK證明就是中繼者的工作。

SNARK證明是代表區塊鏈狀態改變的哈希值。SNARK證明將轉帳前的區塊鏈快照與轉移後的區塊鏈快照進行比較,並僅向主網絡報告可證明哈希的變化。

在ZK-STARK之前,ZK-SNARK用於創建ZK證明系統,但需要一個或多個受信任方來初始配置 ZK證明系統,這引入了這些受信任方的漏洞,從而危及整個系統的機密性。ZK-STARK通過消除對可信配置的需求來改進這項技術。

這個新證明解決了舊SNARK證明的最大缺陷之一。這個證明是由StarkWare團隊提出,其改善了無許可區塊鏈的兩個問題:可擴展性和隱私。

STARK通過允許開發人員將計算和存儲轉移到鏈下來提高可擴展性。鏈下服務將能夠生成證明鏈下計算完整性的STARK證明。然後將這些證明送回鏈上,供任何相關方驗證計算。使用 STARK轉移大部分的鏈下計算工作允許現有的區塊鏈基礎設施以指數方式擴展,同時保持計算完整性。

StarkNet上的智能合約:Cairo

StarkNet建立在Cairo程式語言之上,這是以太坊上第一個生產級的圖靈完備的馮諾伊曼驗證器。它實際上是StarkNet生態系統中智能合約的語言。Cairo允許開發人員使用ZKSTARK的強大功能來創建完全可擴展的應用程式。

Cairo是一種用於編寫可證明程序的語言,Cairo程序的執行會產生跟蹤,然後可以將其發送給證明者,證明者會生成由Cairo程序表示的指令或計算的有效性的STARK證明。然後可以由驗證者檢查證明。

如今,大多數dApp都是圍繞智能合約Solidity構建。但這些dApp構建成功後,不可避免地會面臨可擴展性問題。因此,越來越多的dApp開始通過轉向基於證據的L2可擴展解決方案來解決其可擴展性問題。其通過鏈下組件支持業務邏輯的一些更為複雜的部分,並在此基礎上與鏈上智能合約進行通信,這樣既不會放棄安全性,也有利於可拓展性的提高。因為對系統狀態的所有更改都需要經過證據證明(ZKP),且驗證鏈上的證明比完全在鏈上執行業務邏輯要便宜得多。

Cairo使用證明來實現可擴展性的障礙要低得多。因為如果在Cairo編寫邏輯,之後其代碼必須在鏈下得到證明,而一旦證明在鏈上得到驗證後,最終會得到一個可以自信地使用的結果,而這就像它已經在鏈上運行過一樣。

在以太坊上,三種業務是最為昂貴的——計算、傳輸和存儲。

Cairo在一定程度上解決了這三個問題。

SHARP(共享證明者)是Cairo代碼和Solidity智能合約之間的連結。它包含三個主要組件:證明者(鏈下)、智能合約驗證者(鏈上)和事實記錄器合約(鏈上)。

證明者用於跟蹤用戶程序的執行,其需要證明它是有效的,並將這個證明發送給驗證者。在驗證了證明之後,鏈上驗證者採取了更重要的一步,它在事實寄存器中寫入一個事實來證明證明的有效性。這個事實就像一個沒有信任的批准印章,證明了Cairo進行的計算是正確的。而現在剩下的就是dApp的智能合約需要驗證這一事實是否存在,以便依賴於鏈下執行的計算。

L2和L3

以太坊上高昂的交易成本推動了L2的迅猛發展。而由於交易成本大幅降低、對DeFi工具的支持不斷增加以及提供流動性的增加,相信最終用戶日後也將在L2上開展大部分業務。

L2通過降低每筆交易的gas成本和提高交易率來提高可擴展性。同時,L2保留了去中心化、通用邏輯和可組合性的好處。但是,某些應用程式需要特定的定製,可以通過單獨的新層更好地服務,這就讓L3有了存在的必要性。

L3與L2相關,就像L2與L1相關一樣。只要連結的L2能夠支持智能合約驗證者,就可以使用有效性證明來實現L3。當L2也使用提交給L1的有效性證明時,就像StarkNet所做的那樣,它變成了一個瘋狂的遞歸結構,在其中L2證明的壓縮優勢就可以乘以L3證明的壓縮優勢。換言之,如果每一層都實現了1000倍的成本降低,那麼與L1相比,L3就可以實現100萬倍的降低,同時保持相同的安全性。這時人們的交易費用也只需要通常gas費用的一小部分。綜上,我們可以對L3的優勢進行如下總結:

  • 超可擴展性:利用遞歸證明的乘法效應。
  • 由技術堆棧的應用程式設計人員更好地控制
  • 更具確定性的性能和成本
  • 定製的數據可用性模型
  • 更快的功能和技術速度
  • 機密性:ZKP應用於公共L2上的隱私保護交易。
  • 互操作性:獨立的L3將通過L2而不是L1進行交互。L2顯然應該比L1便宜。
  • L3對於L2相當於Polkdot的「金絲雀」網絡Kusama:在向公眾提供之前,可以在L3上測試新的創新。

參考資料:

https://mirror.xyz/0xcF1Bc800C84AdC125f4D565DA41E1740c2461AbB/9wqhZmDzg652Zm0UpXk-UTHnUmb0eEEtiwQHfUwvGVY

https://starkware.notion.site/Projects-Building-on-StarkNet-a33dee55778a4515a9be9bdae02ee682

https://starknet.io/latest-updates/

關鍵字: