> 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/ru/canton-zk-evm/trust-model.md).

# Модель доверия и ограничения

Проверки, органы, предположения о хранении и ограничения раннего выпуска Ostia.

Ostia — это ранний выпуск для локальной тестовой сети. В ней есть один builder, один operator и один confirmer. Код и ZisK 1.3.1-alpha не проходили аудит. tROME — тестовая монета без стоимости. Не используйте этот выпуск для чего-либо ценного.

Эта страница описывает коммит `a84e84e439a5cc669c0ae61facf7c8c995d9d564`. Прочтите полный [проектирование](https://github.com/rome-protocol/canton-zk-evm/blob/a84e84e439a5cc669c0ae61facf7c8c995d9d564/docs/DESIGN.md) и [политика безопасности](https://github.com/rome-protocol/canton-zk-evm/blob/a84e84e439a5cc669c0ae61facf7c8c995d9d564/SECURITY.md).

## Кто что проверяет

| Часть               | Проверка или полномочие                                                                                                                                                                   |
| ------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Гость               | Проверяет блок EVM и отклоняет любую конфигурацию цепочки, отличную от скомпилированных правил Ostia.                                                                                     |
| Сайдкар `проверить` | Проверяет доказательство, закреплённый programVK и rootC, доказанный хэш блока, заголовок и список транзакций.                                                                            |
| Сайдкар `части`     | Проверяет доказательства счёта и хранилища шлюза и сопоставляет упорядоченные приложенные части с доказанным хэшем шлюза.                                                                 |
| Daml `Аванс`        | Проверяет ответы сайдкара, родительский блок, номер следующего блока, лимит газа и контракты, используемые частями. Он урегулирует части и создаёт следующий заголовок и запись блока.    |
| Canton              | Упорядочивает блоки посредством использования единственного контрактного состояния цепочки и совместно фиксирует изменения транзакции. Он отклоняет различающиеся ответы внешнего вызова. |
| Сборщик             | Выбирает транзакции, проверяет видимые ему контракты Canton, получает доказательство и отправляет блок. Он не может сам финализировать блок.                                              |

Один сайдкар работает рядом с каждым подтверждающим участником, включая участника оператора. Каждый сайдкар вычисляет свои ответы исключительно на основе входных данных, отправленных во внешнем вызове. Daml сравнивает их ответы; сама она не выполняет проверку криптографического доказательства. The [README сайдкара](https://github.com/rome-protocol/canton-zk-evm/blob/a84e84e439a5cc669c0ae61facf7c8c995d9d564/sidecar/README.md) и [README Daml](https://github.com/rome-protocol/canton-zk-evm/blob/a84e84e439a5cc669c0ae61facf7c8c995d9d564/daml/README.md) содержат требования к проверкам и полномочиям.

## Что фиксирует доказательство

Закреплённый ключ программы идентифицирует гостя и правила его цепочки. Доказательство включает хэш блока. Проверка его заголовка связывает корень состояния и корень транзакций. Затем доказательства счёта и хранилища связывают зафиксированный хэш части шлюза с этим корнем состояния.

Приложенные части должны иметь те же поля и тот же порядок, что и те, которые зафиксировал шлюз. Удаление части, добавление новой или изменение получателя, суммы, токена или идентификатора приводит к сбою сравнения хэшей. Блок без частей должен доказывать и это отсутствие. Сравнение частей также опирается на устойчивость Keccak-256 к коллизиям.

Корень состояния генезиса в записи цепочки закрепляет код шлюза. Контракт шлюза не имеет владельца, ключа администратора, возможности обновления или приостановки. Участник Canton по-прежнему сохраняет полномочия на хранение токенов, которыми он владеет.

## Полномочия оператора, подтверждающего участника и шлюза

Оператор и шлюз предлагают генезис цепочки, закрепления, лимит газа и builder. Подтверждающий участник принимает предложение. Ожидается, что он сравнит закрепления и код генезиса шлюза со своей собственной сборкой. Предоставленные локальные скрипты предлагают совпадающие значения и немедленно принимают предложение от имени подтверждающего участника.

Оператор, подтверждающий участник и шлюз подписывают `ZkChain`. Они являются корнем доверия цепочки. Для урегулирования депозитов и выводов требуются все трое. Для урегулирования платежей требуются оператор и подтверждающий участник. `Аванс` обеспечивает их совместные полномочия в рамках архитектуры Daml. Один лишь builder не может осуществлять операции урегулирования.

Сторона шлюза хранит токены Canton, обеспечивающие обёрнутые токены в EVM. Она размещена на участнике оператора. Любой, кто управляет этим участником, может перемещать заблокированные токены вне правил вывода. Отсутствие у контракта шлюза ключа администратора не ограничивает способность этой стороны Canton действовать через своего участника.

Регистрация токенов — это ещё одно доверительное решение. Оператор и шлюз предлагают сопоставление между инструментом Canton и обёрнутым токеном EVM, а подтверждающий участник принимает его. Шлюз исполняет код перевода Daml зарегистрированного токена под своей собственной властью. The [README сети](https://github.com/rome-protocol/canton-zk-evm/blob/a84e84e439a5cc669c0ae61facf7c8c995d9d564/network/README.md#the-canton-network) описывает хостинг участников и проверки регистрации.

## Что может остановить блок

Чтобы включить часть, builder нужен доступ на чтение к её запросам, условиям, принятию, распределениям, регистрациям токенов и активам шлюза. Он исключает транзакцию, чьи контракты Canton он не может видеть.

Распределение может быть отозвано после того, как builder проверит его, или после доказательства. Реестр токенов также может отказать в урегулировании по своим собственным правилам. Тогда Canton отклоняет блок, и ничего не фиксируется. Для отказа реестра, который builder не мог предсказать, при следующем запуске требуется `--exclude`; builder не запоминает этот отказ между запусками.

Каждый запуск builder обрабатывает один блок; он не зацикливается на последующих блоках. Builder не ограничивает количество шагов выполнения до доказательства. Если prover не может завершить блок, запуск builder останавливается. The [README сборщика](https://github.com/rome-protocol/canton-zk-evm/blob/a84e84e439a5cc669c0ae61facf7c8c995d9d564/builder/README.md#not-here) фиксирует эти ограничения.

## Что этот выпуск не предоставляет

Локальная сеть не сохраняет состояние между запусками. В ней нет аутентификации Ledger API или TLS, и она предназначена для одной машины. Сеть использует закреплённые снимки Canton 3.6 и снимок компилятора Daml для внешнего вызова. Их версии и хэши находятся в [PINS](https://github.com/rome-protocol/canton-zk-evm/blob/a84e84e439a5cc669c0ae61facf7c8c995d9d564/PINS).

Несколько builder, принудительное включение, публичное развёртывание Canton, конфиденциальность и хранение, требующие большего, чем участник оператора, выходят за рамки этого выпуска. Здесь нет целевых показателей пропускной способности или времени формирования блока. Записанная демонстрация использовала одну и ту же реализацию сайдкара на обоих подтверждающих участниках, на той же машине, что и Canton.

Читатель может повторно проверить доказательства блока, но `BlockRecord` не содержит урегулированных частей. Кнопка Verify в браузере проверяет доказательство, заголовок и транзакции; она не повторяет проверки урегулирования частей Canton.

## Сообщить о проблеме безопасности

Используйте частную систему отчётности GitHub о уязвимостях для `canton-zk-evm`: откройте вкладку Security репозитория и выберите **Report a vulnerability**. Не открывайте публичную issue по проблеме безопасности.

Укажите затронутый компонент, commit, шаги воспроизведения и наблюдаемый результат. Если доказательство или блок являются частью находки, приложите их. The [политика безопасности](https://github.com/rome-protocol/canton-zk-evm/blob/a84e84e439a5cc669c0ae61facf7c8c995d9d564/SECURITY.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/ru/canton-zk-evm/trust-model.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.
