讓我們談談 Starknet 的一個超能力:Sierra。 當你建立一個基於 ZK 的區塊鏈,並使用基於 ZK 的虛擬機進行通用計算(就像 Cairo 對於 Starknet 一樣),你會面臨一個問題:如何讓虛擬機既安全又友好於 ZK? 這個問題涉及非確定性。我來解釋一下: 如果序列器/證明者可以「猜測」某些條目並神奇地填入它們,zkVM 的效率會大大提高。 問題是這為各種攻擊留下了空間:惡意用戶可能會發送一個無法輕易猜測的交易,而惡意的序列器/證明者可以選擇不猜測正確的值,以傷害用戶。 解決方案是什麼? - 一個選擇是消除非確定性。但這會損害效率。 - 另一個選擇是使用博弈論方法,允許其他序列器懲罰攻擊者,同時激勵某些序列器包含良好的交易。 - 第三個選擇是建立一個安全的中間表示(我們稱之為:Sierra)。 Sierra 允許恰到好處的非確定性,以便所有猜測都可以被填入。 在此過程中,擁有這個工具可以解決其他有趣的問題,例如將燃料計量作為編譯過程的一部分。 總結: 在 Cairo 的底層,這個最佳智能合約語言中,有一顆寶石,一種超能力,允許安全且高效的基於區塊鏈的 ZK 運行。 只有在 Starknet,今天的未來科技。