> 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/tr/canton-zk-evm/prover-host.md).

# Prover sunucusu

İspatlayıcının ana makine gereksinimleri, kalıcı işçisi ve sabitlenmiş guest derlemesi.

Prover, bir GPU işçisiyle ZisK'i çalıştırır. Koordinatör ve işçi, PLONK anahtarı zaten yüklenmiş halde istekler arasında çalışmaya devam eder. Her blok için, oluşturucu girdi gönderir ve sarılmış bir kanıt alır.

Bu sayfa commit'i açıklar `a84e84e439a5cc669c0ae61facf7c8c995d9d564`. Tamamını oku [prover README](https://github.com/rome-protocol/canton-zk-evm/blob/a84e84e439a5cc669c0ae61facf7c8c995d9d564/prover/README.md) ve [ölçümler](https://github.com/rome-protocol/canton-zk-evm/blob/a84e84e439a5cc669c0ae61facf7c8c995d9d564/docs/METRICS.md).

## Ana makine gereksinimleri

Yükleyici, Linux x86-64'i hedefler ve `apt`, `sudo`, yüklü bir NVIDIA sürücüsü ve yaklaşık 100 GB boş disk alanı ile. Sistem paketlerini yükler ve bellek kilitleme sınırlarını değiştirir.

2026-10-03 benchmarkı, 96 GB GPU belleğine sahip bir NVIDIA RTX PRO 6000 Blackwell Server Edition, AMD EPYC 9B45 üzerinde 48 vCPU ve 176 GiB ana makine RAM'i kullandı. Ubuntu 22.04.5 üzerinde 580.178.04 sürücüsüyle çalıştı. Bu teknik özellikler test edilen makineyi açıklar; prover'ı çalıştırmak için gereken asgari donanımı belirlemezler.

Benchmark, 22.9 GiB emülatör paylaşılan belleği kaydetti. Yalnızca PLONK wrap, 30.054.767.337 baytlık bir GPU gereksinimi bildirdi; bu yaklaşık 28.0 GiB'dir. En yüksek GPU bellek kullanımı 93.2 GiB idi, ancak prover karta büyük bir arabellek boyutlandırır. Bu tepe değer, arabellek tahsisini yansıtır ve tüm prover'ın minimumda ne kadar GPU belleğine ihtiyaç duyduğunu göstermez. Her sayının kapsamı için [Ölçümler](/tr/canton-zk-evm/measurements.md) bakın.

## Derle ve çalıştır

Betikler, içindeki sürümleri kullanır [PINS](https://github.com/rome-protocol/canton-zk-evm/blob/a84e84e439a5cc669c0ae61facf7c8c995d9d564/PINS). Prover, ZisK 1.3.1-alpha, Node 20.20.2 ve snarkjs 0.7.6 kullanır. Explorer'ın Node sürümü ayrıdır.

| Betik                   | Ne yapar                                                                                                                          |
| ----------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| `prover/install.sh`     | Yükleyicinin sabitlenmiş sağlama toplamını kontrol edin, ardından GPU derlemesini, ispat anahtarını ve PLONK kurulumunu yükleyin. |
| `prover/build-guest.sh` | Misafir ELF'ini derleyin ve SHA-256'sini, programVK'sını, rootC'sini ve kurallar karmasını yazdırın.                              |
| `prover/start.sh`       | PLONK anahtarı yüklenmiş halde koordinatörü ve bir GPU işçisini başlatın.                                                         |
| `prover/make-input.sh`  | Kaydedilmiş bir bloğu, yürütme tanığını ve genesis'i prover girdisine dönüştürün.                                                 |
| `prover/prove-one.sh`   | Bir girdiyi kanıtlayın, kanıtı `cargo-zisk`ile doğrulayın ve sarılmış kanıtı onaltılık olarak yazın.                              |

`ZISK_COORDINATOR_URL` koordinatörü seçer. Varsayılanı aynı makinedeki koordinatördür. `network/up.sh` misafiri derler ve yerel ağın bir parçası olarak prover'ı başlatır; bunu yapmak için şu sırayı izleyin. [Yerel olarak çalıştırın](/tr/canton-zk-evm/run-it-locally.md) bu sıra için.

Oluşturucunun varsayılanı `prover/prove-one.sh` içinden `CZE_PROVE_CMD`. Bu komut bir girdi dosyası ve çıktı klasörü alır ve `wrapped-proof.hex`bırakmalıdır. Yerel `cargo-zisk` denetimi, zincirin sabitlenmiş programVK ve rootC'sini zorunlu kılmaz. Onaylayıcıların sidecar'ları bu sabitlemeleri zorunlu kılar. Şuna bakın [oluşturucu ayarları](https://github.com/rome-protocol/canton-zk-evm/blob/a84e84e439a5cc669c0ae61facf7c8c995d9d564/builder/README.md#settings).

## Misafir anahtarını yeniden üretin

Derleme betiği sabit bir derleme klasörü kullanır ve hâlâ bir derleme yolu içeren bir ELF'i reddeder. Her seferinde yalnızca bir misafir derlemesi çalıştırın, çünkü her derleme bu paylaşılan klasörü boşaltır.

2026-10-04 tarihinde, bir kullanıcı tarafından tek bir makinede ardışık olarak derlenen iki yeni checkout aynı ELF ve programVK'yı üretti. Derlemeler 133 sn ve 126 sn sürdü. Derlemeyi başka bir kullanıcı olarak veya başka bir makinede yeniden oluşturmak için, ortaya çıkan programVK'nın kaydedilen değerle eşleştiğini doğrulayın. `network/up.sh` derlemenin sabitleri farklıysa durur.  [misafir README](https://github.com/rome-protocol/canton-zk-evm/blob/a84e84e439a5cc669c0ae61facf7c8c995d9d564/guest/README.md#building) derlemeyi ve sınırlarını açıklar.

## Kanıt çıktısı

İletim biçimi 1.344 bayttır: 768 bayt PLONK kanıtı, 32 bayt programVK, 32 bayt rootC ve 512 bayt açık değerler. `prove-one.sh` hex biçimini ve `cargo-zisk-dev export-solidity-calldata tarafından üretilen JSON'u yazar`.


---

# 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/tr/canton-zk-evm/prover-host.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.
