鉄鋼の紹介

中級May 27, 2024
RISC ZeroはzkVMのリーディングデベロッパの1人であり、最近、Alloyをベースにしたビューコール証明ライブラリであるSteelをローンチした。これにより、開発者がイーサリアムL1やその他のEVMチェーンとやり取りする方法に大きな変化がもたらされます。Steelは、ゼロ知識証明とRISC Zero zkVMを利用して、開発者がスケーラブルで安全、かつ費用対効果の高い方法でビューコールを実行し、イーサリアムの状態を証明可能な方法で読み取って計算することを可能にします。
鉄鋼の紹介

スティールの紹介:RISC Zeroをイーサリアムに接続する硬化合金

イーサリアムの成功により、分散型アプリケーションのエコシステムが繁栄していますが、スケーラビリティの課題がますます明らかになっています。開発者は、アプリケーションの機能やデータの豊富さを制限するか、過剰なガス料金やガス制限の負担を負うか、難しい選択を迫られています。開発者がこれらの制限を回避する方法があるとしたらどうでしょうか。

RISC ZeroによるAlloyベースのビューコールプルーフライブラリであるSteelは、開発者がEthereum L1またはEVMベースのチェーンと対話する方法に大きな変化をもたらします。Steelは、ゼロ知識証明とRISC Zero zkVMの力を活用することで、開発者がスケーラブルで安全、かつ経済的に効率的な方法で、ビューコールを実行し、イーサリアムの状態を証明可能な読み取りと計算を行うことを可能にします。

ZKの力で、Solidityの利便性。

Steelは、イーサリアムのアプリ開発とゼロ知識技術の間のギャップを埋め、開発者がスマートコントラクトでZKの力をこれまで以上に簡単に活用できるようにします。Steelは、RISC Zero zkVMの機能と組み合わせることで、開発者はEthereum L1またはEVMと同等のチェーン上で、より安全でスケーラブルで効率的なアプリケーションを構築できます。

Steel を使用すると、開発者は次のことができます。

  • SolidityスマートコントラクトをzkVM内で直接実行し、より洗練されたオンチェーンロジックを実現
  • zkVM内の過去のイーサリアム状態にアクセスする
  • 継続を使用したブロックおよびトランザクション サイズの制限なしで計算 する
  • あたかもオンチェーンで実行されたかのように、安全で信頼性の高いオフチェーン計算を確保
  • さまざまなパートナーによって厳密にテストされ、使用されている最初の本番環境対応のzkVMを活用
  • イーサリアム状態に対するプライベート計算
  • オープンソースのコードベースで柔軟性を維持し、ベンダーロックインを排除

シームレスな統合とコスト削減

Steelでは、ビュー呼び出しの実行は、目的のSolidityメソッドを指定するのと同じくらい簡単です。ERC-20トークンの残高を取得する場合でも()、イーサリアムの状態のあらゆる側面にアクセスする場合でも、SteelはRISC Zero zkVMとのシームレスな統合により、セキュリティと効率を確保しながらプロセスを簡素化します。私たちのテストでは、Steelが1回のビューコールで100K以上のSLOAD操作を処理できることが示されており、メインネットでのガス代を数千ドル節約できる可能性があります。これは、Bonsaiを使用して約15分で証明できます。これには少なくとも210Mのガスが必要で、ブロック制限を7倍超えています。

例: ERC20 balanceOf

以下のコードスニペットでは、Steelを使用してイーサリアムにデプロイされたERC-20コントラクトの特定のアドレスのバランスを証明するプロセスを示しています。この例では、開発者がSteelを利用して、zkVMの範囲内でオンチェーンのイーサリアムデータと対話する方法を紹介します。 完全なコードについては、こちらを参照してください

ビュー関数シグネチャの定義

まず、ERC-20 balanceOf 関数シグネチャを sol!マクロ。これにより、Solidityの構文が解析され、SolCallトレイトを実装する対応するRust構造体が生成されます。この構造体は、アカウントアドレスを取得し、関連するERC-20トークン残高を返すbalanceOfメソッドを呼び出すために使用できます。

通話の準備

次に、ターゲットアカウントアドレスでbalanceOfCall構造体をインスタンス化してコールを設定します。また、照会するコントラクトのアドレスと呼び出し元のアドレスの定数を定義します。

Main での呼び出しの実行

main 関数は zkVM で実行され、ゼロ知識証明が生成されます。まず、入力環境を読み取り、次に ViewCallEnv オブジェクトを構築して、現在の状態が予想される状態ルートと一致することを確認します。関連するブロックハッシュと番号にコミットした後、ビュー呼び出しが実行され、残高が出力されます。

仕組み

Steelは、RISC Zero zkVMでSolidityのコード実行を証明するプロセスを、3つの簡単なステップで簡素化します。

  1. プリフライトフェーズ:イーサリアムRPCノードへのビュー呼び出しを行うことで、プリフライトを開始します。これにより、必要なストレージスロットがキャッシュされ、クエリに必要なデータのみがEVMデータベースに入力されます。すべてのストレージスロットは、ビュー呼び出しの実行に基づいて自動的に検出され、フェッチされます。
  2. ストレージ検証:ストレージの整合性チェックを実施し、EVMデータベース内のデータがブロックチェーンの状態ルートと一致していることを確認し、それによってその正当性を確認します。
  3. Solidity Execution:RISC Zero zkVM内のEVMで、指定されたSolidity関数を実行します。

これはストレージプルーフとどう違うのですか?

従来のストレージプルーフでは、開発者はスマートコントラクトが使用するストレージスロットを手動で選択し、スマートコントラクトロジックを再実装する必要があります。steelでは、すべてのストレージスロットがビュー呼び出しの実行に基づいて自動的に検出され、フェッチされます。これにより、開発者の時間を大幅に節約し、実装エラーの余地を減らし、セキュリティの脆弱性の可能性を減らします。

検証済みのブロックハッシュの取得

イーサリアムのスマートコントラクトで検証にブロックハッシュオペコードを使用する場合、検証のコミットメントは、256ブロック以内のブロックハッシュを参照する必要があります。平均ブロック時間が12秒の場合、プルーフの生成を完了し、ブロック内に検証トランザクションが含まれていることを確認するために、約50分の狭い時間枠が設定されます。

256ブロックより古い検証済みブロックハッシュがオンチェーンで必要な場合、いくつかの戦略を使用できます。

  • 必要になるブロックハッシュが事前にわかっている場合(ガバナンスの提案を開始する場合など)、そのブロックハッシュをコントラクト状態に保存できます。
  • 別のアプローチは、RISC Zeroを使用して、クエリされたブロックから最新の256のブロックまでのハッシュチェーンを証明することです。

オンチェーンアプリの未来

私たちは、オフチェーン計算とオンチェーン検証のシームレスな統合がある未来を思い描いています。Steelは、開発者がzkVM内のイーサリアムの全履歴に証明可能な形でアクセスして計算し、データ豊富でより機能的なオンチェーンアプリケーションの次の波を作成できるようにすることで、このビジョンを実現するための当社の貢献です。

鉄鋼を使い始める

Steelは、安価で安全なオンチェーン証明検証とユニバーサルゼロ知識証明に向けたマイルストーンであるzkVM 1.0の立ち上げに対するRISC Zeroの取り組みの重要な要素です。今すぐ Steel を使い始めましょう GitHub リポジトリにアクセスして、Steel をプロジェクトに統合するのに役立つドキュメント、コード例、リソースを入手してください。

免責事項:

  1. この記事は[riscze]からの転載です。すべての著作権は原作者[サンティアゴ・カンポス]に帰属します。この転載に異議がある場合は、 Gate Learn チームに連絡していただければ、迅速に対応いたします。
  2. 免責事項:この記事で表明された見解や意見は、著者のものであり、投資アドバイスを構成するものではありません。
  3. 記事の他言語への翻訳は、Gate Learnチームによって行われます。特に明記されていない限り、翻訳された記事を複製、配布、盗用することは禁止されています。

鉄鋼の紹介

中級May 27, 2024
RISC ZeroはzkVMのリーディングデベロッパの1人であり、最近、Alloyをベースにしたビューコール証明ライブラリであるSteelをローンチした。これにより、開発者がイーサリアムL1やその他のEVMチェーンとやり取りする方法に大きな変化がもたらされます。Steelは、ゼロ知識証明とRISC Zero zkVMを利用して、開発者がスケーラブルで安全、かつ費用対効果の高い方法でビューコールを実行し、イーサリアムの状態を証明可能な方法で読み取って計算することを可能にします。
鉄鋼の紹介

スティールの紹介:RISC Zeroをイーサリアムに接続する硬化合金

イーサリアムの成功により、分散型アプリケーションのエコシステムが繁栄していますが、スケーラビリティの課題がますます明らかになっています。開発者は、アプリケーションの機能やデータの豊富さを制限するか、過剰なガス料金やガス制限の負担を負うか、難しい選択を迫られています。開発者がこれらの制限を回避する方法があるとしたらどうでしょうか。

RISC ZeroによるAlloyベースのビューコールプルーフライブラリであるSteelは、開発者がEthereum L1またはEVMベースのチェーンと対話する方法に大きな変化をもたらします。Steelは、ゼロ知識証明とRISC Zero zkVMの力を活用することで、開発者がスケーラブルで安全、かつ経済的に効率的な方法で、ビューコールを実行し、イーサリアムの状態を証明可能な読み取りと計算を行うことを可能にします。

ZKの力で、Solidityの利便性。

Steelは、イーサリアムのアプリ開発とゼロ知識技術の間のギャップを埋め、開発者がスマートコントラクトでZKの力をこれまで以上に簡単に活用できるようにします。Steelは、RISC Zero zkVMの機能と組み合わせることで、開発者はEthereum L1またはEVMと同等のチェーン上で、より安全でスケーラブルで効率的なアプリケーションを構築できます。

Steel を使用すると、開発者は次のことができます。

  • SolidityスマートコントラクトをzkVM内で直接実行し、より洗練されたオンチェーンロジックを実現
  • zkVM内の過去のイーサリアム状態にアクセスする
  • 継続を使用したブロックおよびトランザクション サイズの制限なしで計算 する
  • あたかもオンチェーンで実行されたかのように、安全で信頼性の高いオフチェーン計算を確保
  • さまざまなパートナーによって厳密にテストされ、使用されている最初の本番環境対応のzkVMを活用
  • イーサリアム状態に対するプライベート計算
  • オープンソースのコードベースで柔軟性を維持し、ベンダーロックインを排除

シームレスな統合とコスト削減

Steelでは、ビュー呼び出しの実行は、目的のSolidityメソッドを指定するのと同じくらい簡単です。ERC-20トークンの残高を取得する場合でも()、イーサリアムの状態のあらゆる側面にアクセスする場合でも、SteelはRISC Zero zkVMとのシームレスな統合により、セキュリティと効率を確保しながらプロセスを簡素化します。私たちのテストでは、Steelが1回のビューコールで100K以上のSLOAD操作を処理できることが示されており、メインネットでのガス代を数千ドル節約できる可能性があります。これは、Bonsaiを使用して約15分で証明できます。これには少なくとも210Mのガスが必要で、ブロック制限を7倍超えています。

例: ERC20 balanceOf

以下のコードスニペットでは、Steelを使用してイーサリアムにデプロイされたERC-20コントラクトの特定のアドレスのバランスを証明するプロセスを示しています。この例では、開発者がSteelを利用して、zkVMの範囲内でオンチェーンのイーサリアムデータと対話する方法を紹介します。 完全なコードについては、こちらを参照してください

ビュー関数シグネチャの定義

まず、ERC-20 balanceOf 関数シグネチャを sol!マクロ。これにより、Solidityの構文が解析され、SolCallトレイトを実装する対応するRust構造体が生成されます。この構造体は、アカウントアドレスを取得し、関連するERC-20トークン残高を返すbalanceOfメソッドを呼び出すために使用できます。

通話の準備

次に、ターゲットアカウントアドレスでbalanceOfCall構造体をインスタンス化してコールを設定します。また、照会するコントラクトのアドレスと呼び出し元のアドレスの定数を定義します。

Main での呼び出しの実行

main 関数は zkVM で実行され、ゼロ知識証明が生成されます。まず、入力環境を読み取り、次に ViewCallEnv オブジェクトを構築して、現在の状態が予想される状態ルートと一致することを確認します。関連するブロックハッシュと番号にコミットした後、ビュー呼び出しが実行され、残高が出力されます。

仕組み

Steelは、RISC Zero zkVMでSolidityのコード実行を証明するプロセスを、3つの簡単なステップで簡素化します。

  1. プリフライトフェーズ:イーサリアムRPCノードへのビュー呼び出しを行うことで、プリフライトを開始します。これにより、必要なストレージスロットがキャッシュされ、クエリに必要なデータのみがEVMデータベースに入力されます。すべてのストレージスロットは、ビュー呼び出しの実行に基づいて自動的に検出され、フェッチされます。
  2. ストレージ検証:ストレージの整合性チェックを実施し、EVMデータベース内のデータがブロックチェーンの状態ルートと一致していることを確認し、それによってその正当性を確認します。
  3. Solidity Execution:RISC Zero zkVM内のEVMで、指定されたSolidity関数を実行します。

これはストレージプルーフとどう違うのですか?

従来のストレージプルーフでは、開発者はスマートコントラクトが使用するストレージスロットを手動で選択し、スマートコントラクトロジックを再実装する必要があります。steelでは、すべてのストレージスロットがビュー呼び出しの実行に基づいて自動的に検出され、フェッチされます。これにより、開発者の時間を大幅に節約し、実装エラーの余地を減らし、セキュリティの脆弱性の可能性を減らします。

検証済みのブロックハッシュの取得

イーサリアムのスマートコントラクトで検証にブロックハッシュオペコードを使用する場合、検証のコミットメントは、256ブロック以内のブロックハッシュを参照する必要があります。平均ブロック時間が12秒の場合、プルーフの生成を完了し、ブロック内に検証トランザクションが含まれていることを確認するために、約50分の狭い時間枠が設定されます。

256ブロックより古い検証済みブロックハッシュがオンチェーンで必要な場合、いくつかの戦略を使用できます。

  • 必要になるブロックハッシュが事前にわかっている場合(ガバナンスの提案を開始する場合など)、そのブロックハッシュをコントラクト状態に保存できます。
  • 別のアプローチは、RISC Zeroを使用して、クエリされたブロックから最新の256のブロックまでのハッシュチェーンを証明することです。

オンチェーンアプリの未来

私たちは、オフチェーン計算とオンチェーン検証のシームレスな統合がある未来を思い描いています。Steelは、開発者がzkVM内のイーサリアムの全履歴に証明可能な形でアクセスして計算し、データ豊富でより機能的なオンチェーンアプリケーションの次の波を作成できるようにすることで、このビジョンを実現するための当社の貢献です。

鉄鋼を使い始める

Steelは、安価で安全なオンチェーン証明検証とユニバーサルゼロ知識証明に向けたマイルストーンであるzkVM 1.0の立ち上げに対するRISC Zeroの取り組みの重要な要素です。今すぐ Steel を使い始めましょう GitHub リポジトリにアクセスして、Steel をプロジェクトに統合するのに役立つドキュメント、コード例、リソースを入手してください。

免責事項:

  1. この記事は[riscze]からの転載です。すべての著作権は原作者[サンティアゴ・カンポス]に帰属します。この転載に異議がある場合は、 Gate Learn チームに連絡していただければ、迅速に対応いたします。
  2. 免責事項:この記事で表明された見解や意見は、著者のものであり、投資アドバイスを構成するものではありません。
  3. 記事の他言語への翻訳は、Gate Learnチームによって行われます。特に明記されていない限り、翻訳された記事を複製、配布、盗用することは禁止されています。
今すぐ始める
登録して、
$100
のボーナスを獲得しよう!