#dusk $DUSK @Dusk

DuskVM: なぜRust/WASMが重要なのか。

なぜブロックチェーンは、EVMに単に依存するだけでなく、RustとWebAssemblyを選ぶのでしょうか?

DuskVMは、開発者に対してDusk L1上でネイティブな実行経路を提供するという意図的な選択を反映しています。

DuskVMのコントラクトはRustで書かれ、WebAssembly(WASM)にコンパイルされて、L1上で直接実行されます。これにより、アプリケーションと基盤ネットワークの間に別の互換レイヤーを挟むのではなく、Dusk自身の実行モデル、トランザクションモデル、プロトコルコントラクト、そしてL1プリミティブへのアクセスがコントラクトに提供されます。

Rustベースのモデルは、開発者の作り方にも影響します。DuskVMコントラクトは、DuskのForgeフレームワークが必要なエクスポートを生成することで、wasm32-unknown向けにコンパイルされたno stdのRustライブラリとして構築されます。コントラクトの状態は、成功した呼び出しの間は保持される一方、失敗した呼び出しでは状態変更がコミットされません。

WASMが特に重要なのは、同じRustのソースから、オンチェーンのコントラクト成果物と、ウォレット、エクスプローラー、SDKで使用されるオフチェーンのデータドライバ成果物の両方が生成されるためです。

Duskのドキュメントでは、この環境はプロトコルレベルのロジック、Duskネイティブのトランザクションモデル、プライバシー、ゼロ知識の機能、そしてL1の機能へ直接アクセスを必要とするアプリケーション向けに位置付けられています。

@Duskにとって、Rust/WASMは単なる開発者の好みではありません。これは、ネイティブなブロックチェーン機能により深くアクセスできるよう、アプリケーションへの基盤を強化するためのネットワーク戦略の一部です。

アプリケーションがブロックチェーンの中核となるプロトコルへのより深い統合を求めるにつれ、ネイティブ実行はますます重要になっていくのでしょうか?