「RISC-V」タグアーカイブ

RISC Zeroとは?

RISC Zeroは、
zk-STARKs(Zero-Knowledge Scalable Transparent Argument of Knowledge)とRISC-Vマイクロアーキテクチャに基づいたゼロ知識の検証可能な汎用コンピューティングプラットフォームです。

ゼロ知識証明とは、ある当事者・証明したい人(Prover・以下:プロバー)が確かめたい人(Verifier・以下:ベリファイア)に、詳細を一切明かすことなく、何かが真実であることを納得させる手法です。RISC Zeroの場合、プロバーは特定のコードを正しく実行したことをベリファイアに示すことができますが、その際、コードの出力だけをベリファイアに公開し、入力や実行中の状態は一切明かしません
ゼロ知識性があるため、個人情報などのプロバーの特定情報が漏れることはない。

このコードは、zkVMと呼ばれる特別な仮想マシン上で実行されます。
RISC Zero zkVMは小さなRISC-Vコンピュータをエミュレートしており、RISC-V向けのコンパイラツールチェーンが存在する限り、任意のプログラミング言語で書かれたコードを実行できます。現在、Rust、C、およびC++のSDKサポートが存在します。

処理の概要
証明対象となるコードは、実装された言語からメソッドにコンパイルされます。メソッドは、メソッドのコードを実行する特別なエントリーポイントを持つRISC-V ELFファイルとして表現されます。また、メソッドごとにそのイメージID(ELFファイルの特殊な暗号ハッシュ)が計算され、検証に必要となります。
Executable and Linkable Format (ELF) は実行ファイルおよびオブジェクトファイルのためのファイルフォーマットである。コンテナフォーマットの一種。

次に、ホストプログラムが実行され、zkVM内でメソッドを証明します。zkVM内で動作する論理的なRISC-Vマシンをゲストと呼び、zkVMを実行するプロバーホストと呼びます。メソッドの実行中、ゲストホストは通信できますが、ホストはゲストの実行を変更することはできません。そうすると、生成される証明が無効になります。実行中に、ゲストコードは計算の公式な出力を表すジャーナルと呼ばれる特別な追記専用ログに書き込むことができます。

メソッドが正しく終了すると、正しい実行の証明としてレシートが生成されます。このレシートは、実行中に書き込まれたジャーナルと、シールと呼ばれる不透明な暗号データの2つの部分で構成されます。

ベリファイアは、このレシートを検証し、ログを調べることができます。ジャーナルシール改ざんされていた場合、レシートは検証に失敗します。また、ジャーナルの出力が正しい実行のものでない限り、有効なレシートを生成することは暗号的に不可能です。要するに、レシートは正しい実行のゼロ知識証明として機能します。

プロトコルがゼロ知識であるため、ベリファイアは、ジャーナルに書き込まれたデータやコードの正しい実行から推測されること以外には、ホストとゲストの間でやり取りされる詳細な実行やデータについて何も推測することができません。

RISC-Vとは?

RISC-V(リスク・ファイブ)とは、カリフォルニア大学バークレー校で開発されたオープンで拡張可能な命令セットアーキテクチャ(ISA)です。
ISAはプロセッサ間で共通化された、インターフェースとしての論理的な命令セットは命令セットアーキテクチャ(英: instruction set architecture, ISA)と呼ばれる。
RISC-Vは特にシンプルでモジュラー設計が特徴です。

以下に、RISC-Vの主な特徴を挙げます。

オープンでロイヤリティフリー
RISC-VはオープンなISAで、誰でも無料で使用することができ、ライセンス料がかかりません。そのため、商用や非商用を問わず、誰でもこのISAを利用して独自のプロセッサやソリューションを開発できます。

モジュラー設計
RISC-Vは基本命令セット(RV32IやRV64Iなど)と、それに追加可能なオプションの拡張(例えば、浮動小数点演算やベクトル処理など)から成り立っています。このモジュラー設計により、用途や必要に応じて柔軟にプロセッサをカスタマイズできます。

拡張性と柔軟性
RISC-Vの設計は、開発者が独自の拡張機能を追加できるように意図されています。これにより、特定のアプリケーションやニーズに合わせたカスタムプロセッサを容易に設計できます。

広範なコミュニティサポート
RISC-Vは世界中の企業、研究機関、開発者からの支持を受けており、オープンソースコミュニティによって積極的に開発と改善が進められています。

非営利組織による管理
RISC-Vの仕様は、RISC-V Internationalという非営利組織によって管理されており、この組織は特定の製品やサービスに商業的な利害関係を持たず、中立的な立場で活動しています。

RISC-Vは、従来のプロプライエタリなISAに代わるオープンな選択肢として注目されており、特に組み込みシステム、IoTデバイス、学術研究、さらには高性能コンピューティングの分野においても利用が広がっています。