# Starkware

By [HugeBing](https://paragraph.com/@hugebing) · 2022-07-03

---

### Starkware 的 zk 技術有甚麼特點? [參考資料](https://medium.com/qed-it/the-incredible-machine-4d1270d7363a)

zk-SNARK 是 zkSync（zero-knowledge succinct non-interactive argument of knowledge）所使用的 zero-knowledge 技術，常常會跟 Starkware 的 zk-STARK（zero-knowledge scalable transparent argument of knowledge）做比較。

zk-STARK 是 Starkware 所開發以及採用的 zk 技術，與 zk-SNARK相比，zk-STARK 因為密碼學設計，不用初始化可信任的驗證裝置，所以不存在需信任參與人的問題。而當 zk-SNARK 開始運作時，必須初始化驗證裝置的參數，這個參數由幾個人去設定，設定的人之間彼此獨立。像 Zcash（採用 zk-SNARK）在開始運作時，也發起了一個[活動](https://z.cash/technology/paramgen/)，就是一群參與人共同設置了驗證裝置的參數，如果要作惡，這幾個參與人就必須同時作惡，才會導致安全性出現問題。

※ 驗證裝置就像考題，如果考題洩漏就有辦法作弊通過考試，zk-SNARK 的考題需要人為設定，而 zk-STARK 則可以自動產生並且無人知道考題內容。

zk-STARK 相較於 zk-SNARK 還有驗證速度更快，以及抗量子運算的優點，但其缺點也很明顯，其驗證的資訊量的大小明顯比 zk-SNARK 大，需要更多儲存空間。

### StarkEx

特定需求的應用可以在 StarkEx 上建立，StarkEx 是許可制的 Layer2 並支援智能合約，採用鏈下計算鏈上證明的方式，大大減少 gas 的成本。

StarkEx 在以太坊上有 4 個部屬，分別是 DeversiFi、Immutable、dYdX 和 Sorare。

### StarkEx 的元件與流程 [參考資料](https://docs.starkware.co/starkex-v4/overview)

StarkEx 有分為鏈上元件和鏈下元件，分別為：

*   鏈下元件
    
    *   維持訂單狀態
        
    *   在系統執行交易
        
    *   傳送狀態更新給鏈上元件
        
*   鏈上元件
    
    *   確認狀態轉換的有效性
        
    *   維持狀態提交和系統資產
        
    *   管理鏈上帳戶
        

![](https://storage.googleapis.com/papyrus_images/94ad7bce8fc6fd2920078d4e36bfa7ba6e46052c39a5b086a9bc261ca7134a13.png)

圖片[來源](https://docs.starkware.co/starkex-v4/overview)

1.  系統中的所有交易都由應用程序執行並發送到 StarkEx 服務。
    
2.  StarkEx 服務對交易進行批量處理並將該批量交易發送到共享證明服務（SHARP），以生成證明該批量交易有效性的證明。
    
3.  SHARP 將 STARK 證明發送給鏈上 STARK 驗證者進行驗證。
    
4.  StarkEx 服務向 StarkEx 合約發送鏈上狀態更新交易，只有在驗證者發現證明有效時才會被接受。
    

### StarkEx 的資料可用性模式 [參考資料](https://docs.starkware.co/starkex-v4/starkex-deep-dive/data-availability-modes)

1.  ZK-Rollup 會將用戶的餘額儲存在鏈上，所以是無需信任的（不必信任任何第三方），但會造成 gas 費用增加。
    
2.  Validium 會將用戶餘額儲存在可信任的委員（節點）上，儲存完成後委員會附上簽章，如此交易在鏈上驗證時，只需要驗證交易以及簽章，不需要在鏈上儲存狀態，因為交易狀態儲存在鏈下（委員），如此可節省 gas 的費用。
    

### StarkNet

StarkNet 是一個無須許可的 layer2 網路，一樣支援採用 Cairo 的智能合約，在 StarkNet 上的應用，可以互相的組合與疊加就像 Ethereum 一樣。

### 官方在 StarkEx 與 StarkNet 差別不同時期有不同想法

#### StarkEx 會成為 StarkNet 的應用之一（2021 年 1 月 26 日） [參考資料](https://medium.com/starkware/on-the-road-to-starknet-a-permissionless-stark-powered-l2-zk-rollup-83be53640880)

StarkEx 可以想像成 Starkware 為了證明其 STARK 和 ZK-Rollup 應用擴展的能力，為某幾個特別應用所做的客製化項目，所以是許可制的，而 StarkNet 則是 STARK 和 ZK-Rollup 的通用型項目，任何應用都可以在上面構建，不需要任何許可，並且可以相互組合與疊加，並且未來 StarkEx 也會成為 StarkNet 的其中一個應用。

#### StarkEx 及 StarkNet 依據應用的需求選擇（2022 年 6 月 2 日） [參考資料](https://medium.com/starkware/starks-starkex-and-starknet-9a426680745a#:~:text=Unlike%20StarkEx%2C%20where%20applications%20are,to%20be%20processed%20and%20proved.)

StarkEx 可能是適合大部分不必與其他應用組合並適合 StarkEx 提供的 API 的應用程序的正確解決方案。StarkNet 可能更適合需要與其他應用同步交互或超出 StarkEx 提供的需求之應用。

StarkEx 是由應用提交交易，而 StarkNet 則是由 StarkNet 排序器（sequencers）批量處理交易並將其發送以進行處理和證明，也就是說 StarkNet 在應用（Cairo 智能合約）部屬好後，就不需要額外維護，不像 StarkEx 的應用還需要提交交易。

### Starkware 的挑戰

Starkware 智能合約語言採用 Cairo 並不是 Solidity，但未來會推出將其他語言轉譯成 Cairo 的功能，所以這個問題會相對減輕，另外 Starkware 不是一個開源的項目，項目的透明性大幅下降，對開發者與社群而言相對不友善。

### 參考資料

[https://docs.starkware.co/starkex-v4/](https://docs.starkware.co/starkex-v4/)

[https://medium.com/starkware/on-the-road-to-starknet-a-permissionless-stark-powered-l2-zk-rollup-83be53640880](https://medium.com/starkware/on-the-road-to-starknet-a-permissionless-stark-powered-l2-zk-rollup-83be53640880)

[https://z.cash/technology/paramgen/](https://z.cash/technology/paramgen/)

[https://starkware.co/starknet/](https://starkware.co/starknet/)

[https://medium.com/qed-it/the-incredible-machine-4d1270d7363a](https://medium.com/qed-it/the-incredible-machine-4d1270d7363a)

[https://medium.com/starkware/starks-starkex-and-starknet-9a426680745a#:~:text=Unlike%20StarkEx%2C%20where%20applications%20are,to%20be%20processed%20and%20proved](https://medium.com/starkware/starks-starkex-and-starknet-9a426680745a#:~:text=Unlike%20StarkEx%2C%20where%20applications%20are,to%20be%20processed%20and%20proved)

[https://hackmd.io/@hugebing/Starkware](https://hackmd.io/@hugebing/Starkware)

**作者：hugebing 協作人：y.w. 審稿人：狸貓（bill）**

### 以上文章內容不構成投資建議

###### tags: `Blockchain Articles`

---

*Originally published on [HugeBing](https://paragraph.com/@hugebing/starkware)*
