> For the complete documentation index, see [llms.txt](https://docs.rome.builders/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.rome.builders/ja/rome-zk-evm/verification-key.md).

# 検証鍵

チェーン固有のバッチゲストをビルドし、そのZisK検証鍵の登録を依頼します。

各チェーンには独自のバッチゲストがあります。ゲストにはチェーンのジェネシスと手数料受取先が含まれます。バッチデータと実行を確認し、その後、Solana の決済で検証される公開値をコミットします。ゲストの `programVK` 証明対象のプログラムを識別します。

パーミッションレスなチェーンは、空の検証キー登録簿で登録されます。Rome がそのチェーン用のキーを追加するまで、最終ルートを投稿できません。チェーン権限者は、登録トランザクションにキーを含めることはできません。これは Solana devnet 上での v0.3.0 の手順です。

## ゲストをビルドする

送信元 `deploy/rollup` v0.3.0 のチェックアウトでは、リリース設定を使用します `ROME_ZK_TAG=v0.3.0`, `ROME_ZK_GUEST_TAG=v0.3.0` および `ZISK_RELEASE=1.3.1-alpha`. 実行 `./rollup init` まず、ジェネシスとチェーン ID がレンダリングされるようにします。リクエストを送信する前に、チェーンが登録済みである必要があります。次に実行します:

```sh
./rollup guest-build
```

このコマンドは、ZisK ツールチェーンを含むイメージをビルドし、それらのタグで rollup とゲストのソースをクローンし、あなたのジェネシスからゲストをビルドして、それにあなたのチェーン ID が含まれていることを確認します。ゲスト ELF の SHA-256 を出力します。生成されたメタデータには、そのハッシュ、ジェネシスのハッシュ、チェーン ID、ZisK リリースとそのスキーム番号が記録されます。このリリースでは、その最後の2つの値は `1.3.1-alpha` および `2`.

計算するには `programVK` ローカルでは、ビルドには対応する ZisK の証明鍵と約36 GB の RAM が必要です。その手順には約40秒かかります。その手順を省略するか鍵がない場合、ビルドは `ProgramVkNotComputed`。プローバーは、これなしのメタデータを拒否します `programVK`。対応する鍵で計算するか、証明を開始する前に Rome に依頼してください。

これらのタグで同じ genesis をビルドする 2 台のマシンは、同じ ELF ハッシュになります。genesis が変わればゲストも変わり、チェーン登録後に genesis を変更することはできません。ビルドは、チェーン ID があなたのチェーンの ID と異なる genesis（`ChainIdMismatch`）と、1つを超えるアカウントに残高を与える genesis（`GenesisFundedAccountLimit`).

## Rome に登録を依頼してください

次を使用します [検証キー要求フォーム](https://github.com/rome-protocol/solana-zk-evm/issues/new?template=vkey-request.yml). チェーン ID、チェーン権限者の公開鍵、およびチェーンを登録したトランザクションの署名を用意してください。ゲストタグと、生成されたメタデータ：ELF ハッシュ、ジェネシス ハッシュ、 `programVK`, `zisk` および `スキーム`。レンダリングされた genesis を添付または貼り付けてください。genesis が担保付き残高を宣言する場合は、対応する資金済み vault を用意してください。 `./rollup check` キー待ちの項目を除いて合格する結果。

Rome は、そのタグと genesis からゲストを再ビルドします。チェーン ID、genesis、ELF ハッシュ、および `programVK` をあなたのリクエストと照合し、その後、対応する ZisK リリースの下にキーを登録します。Rome は、キー登録トランザクションの署名を issue 上で返します。キーは記録された有効化スロットで使用可能になります。そのスロット以降に `./rollup check` 。プローバーをオンにすると、 `検証キー` チェックは合格するはずです。デポジット対応キーのチェックも合格するはずです。

Rome は **完全なリクエストを 2 営業日以内に**登録します。リクエストが不完全な場合、Rome は不足しているものを返答します。2 営業日は、リクエストが完全になった時点から始まります。

タイミングが重要なのは、回収ウィンドウはチェーンを登録した時点ではなく、そのキーが有効になった時点で始まるからです。v0.3.0 devnet のウィンドウは 6,480,000 スロット、約30日です。そのウィンドウが終わるまでにルートが投稿されなければ、誰でもチェーンを回収でき、その 5 SOL のデポジットは treasury に送られます。Rome の registry authority は、216,000 スロットの最小値に従ってグローバルなウィンドウを変更できます。

有効化後、証明器に対応するゲスト、メタデータ、ZisK の証明鍵を与え、オンに `PROVER=on`、次に実行します： `./rollup init`, `./rollup up` および `./rollup check`。証明は、このチェーン用に登録された有効なキーを使用しなければなりません。後で別の ZisK リリースへ移行するには、別のゲストビルドと別の登録済みエントリが必要です。参照 [リリース](/ja/rome-zk-evm/releases.md).

完全なリクエスト項目とオペレーター手順は [v0.3.0 で devnet 上で実行](https://github.com/rome-protocol/solana-zk-evm/blob/v0.3.0/docs/RUN-ON-DEVNET.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.rome.builders/ja/rome-zk-evm/verification-key.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
