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

# Mô hình tin cậy và các giới hạn

Các kiểm tra, thẩm quyền, giả định về quyền lưu ký và giới hạn của bản phát hành sớm Ostia.

Ostia là một bản phát hành sớm trên mạng thử nghiệm cục bộ. Nó có một builder, một nhà vận hành và một bên xác nhận. Mã nguồn và ZisK 1.3.1-alpha chưa được kiểm toán. tROME là một đồng tiền thử nghiệm không có giá trị. Đừng dùng bản phát hành này cho bất cứ thứ gì có giá trị.

Trang này mô tả commit `a84e84e439a5cc669c0ae61facf7c8c995d9d564`. Đọc toàn bộ [thiết kế](https://github.com/rome-protocol/canton-zk-evm/blob/a84e84e439a5cc669c0ae61facf7c8c995d9d564/docs/DESIGN.md) và [chính sách bảo mật](https://github.com/rome-protocol/canton-zk-evm/blob/a84e84e439a5cc669c0ae61facf7c8c995d9d564/SECURITY.md).

## Ai kiểm tra cái gì

| Phần               | Kiểm tra hoặc thẩm quyền                                                                                                                                                                   |
| ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Khách              | Xác thực khối EVM và từ chối một cấu hình chuỗi khác với các quy tắc đã biên dịch của Ostia.                                                                                               |
| Sidecar `xác minh` | Kiểm tra bằng chứng, programVK đã ghim và rootC, băm khối đã được chứng minh, tiêu đề và danh sách giao dịch.                                                                              |
| Sidecar `các phần` | Kiểm tra các bằng chứng tài khoản và lưu trữ của gateway và so sánh các phần đính kèm theo thứ tự với băm gateway đã được chứng minh.                                                      |
| Daml `Tiến hành`   | Kiểm tra các câu trả lời của sidecar, khối cha, số khối tiếp theo, giới hạn gas và các hợp đồng được các phần sử dụng. Nó thanh toán các phần và tạo tiêu đề tiếp theo cùng bản ghi khối.  |
| Canton             | Sắp xếp các khối thông qua việc tiêu thụ hợp đồng trạng thái duy nhất của chuỗi và ghi nhận các thay đổi của giao dịch cùng nhau. Nó từ chối các câu trả lời khác nhau của lệnh gọi ngoài. |
| Trình tạo          | Chọn các giao dịch, kiểm tra các hợp đồng Canton mà nó nhìn thấy, lấy một bằng chứng và gửi khối. Nó không thể tự mình hoàn tất một khối.                                                  |

Một sidecar chạy bên cạnh mỗi bên tham gia xác nhận, bao gồm cả bên tham gia của nhà vận hành. Mỗi sidecar chỉ tính toán câu trả lời của nó từ dữ liệu đầu vào được gửi trong lệnh gọi ngoài. Daml so sánh các câu trả lời đó; nó không tự thực hiện việc kiểm tra bằng chứng mật mã. Phần [README của sidecar](https://github.com/rome-protocol/canton-zk-evm/blob/a84e84e439a5cc669c0ae61facf7c8c995d9d564/sidecar/README.md) và [README của Daml](https://github.com/rome-protocol/canton-zk-evm/blob/a84e84e439a5cc669c0ae61facf7c8c995d9d564/daml/README.md) nêu các yêu cầu kiểm tra và thẩm quyền.

## Những gì bằng chứng xác định

Khóa chương trình được ghim xác định guest và các quy tắc chuỗi của nó. Bằng chứng cam kết với một băm khối. Kiểm tra tiêu đề của nó ràng buộc gốc trạng thái và gốc giao dịch. Sau đó, các bằng chứng tài khoản và lưu trữ ràng buộc băm phần đã ghi nhận của gateway với gốc trạng thái đó.

Các phần đính kèm phải có cùng trường và cùng thứ tự như những phần mà gateway đã ghi nhận. Việc xóa một phần, thêm một phần hoặc thay đổi người nhận, số lượng, token hay id sẽ làm thất bại phép so sánh băm. Một khối không có phần nào cũng phải chứng minh sự vắng mặt đó. Việc so sánh các phần cũng dựa vào khả năng chống va chạm của Keccak-256.

Gốc trạng thái khởi đầu của bản ghi chuỗi cố định mã của gateway. Hợp đồng gateway không có chủ sở hữu, khóa quản trị, khả năng nâng cấp hay tạm dừng. Bên Canton vẫn có thẩm quyền lưu ký đối với các token mà nó nắm giữ.

## Quyền hạn của nhà vận hành, bên xác nhận và gateway

Nhà vận hành và gateway đề xuất chuỗi gốc, các giá trị ghim, mức gas tối đa và trình tạo. Bên xác nhận chấp nhận đề xuất đó. Người ta kỳ vọng nó sẽ so sánh các giá trị ghim và mã gateway gốc với bản build của chính nó. Các script cục bộ được cung cấp đề xuất các giá trị khớp nhau và ngay lập tức chấp nhận đề xuất thay mặt cho bên xác nhận.

Nhà vận hành, bên xác nhận và gateway ký `ZkChain`. Chúng là gốc tin cậy của chuỗi. Các lựa chọn thanh toán cho nạp và rút yêu cầu cả ba. Thanh toán yêu cầu nhà vận hành và bên xác nhận. `Tiến hành` cung cấp thẩm quyền chung của họ theo thiết kế Daml. Riêng trình tạo không thể thực hiện các lựa chọn thanh toán.

Bên gateway nắm giữ các token Canton bảo chứng cho các token bọc trên EVM. Nó được lưu trữ trên bên tham gia của nhà vận hành. Bất kỳ ai chạy bên tham gia đó đều có thể di chuyển các token bị khóa ngoài các quy tắc rút. Việc hợp đồng gateway không có khóa quản trị không hạn chế khả năng hành động thông qua bên tham gia của bên Canton đó.

Đăng ký token cũng là một quyết định tin cậy khác. Nhà vận hành và gateway đề xuất ánh xạ từ một công cụ Canton sang một token bọc EVM, và bên xác nhận chấp nhận nó. Gateway thực thi mã chuyển giao Daml của token đã đăng ký bằng thẩm quyền của chính nó. Phần [README của mạng](https://github.com/rome-protocol/canton-zk-evm/blob/a84e84e439a5cc669c0ae61facf7c8c995d9d564/network/README.md#the-canton-network) mô tả việc lưu trữ bên tham gia và các kiểm tra đăng ký.

## Điều gì có thể chặn một khối

Để bao gồm một phần, trình tạo cần quyền đọc các yêu cầu, điều khoản, chấp nhận, phân bổ, đăng ký token và số dư gateway của nó. Nó loại trừ một giao dịch mà các hợp đồng Canton của nó không thể nhìn thấy.

Một phân bổ có thể bị rút lại sau khi trình tạo kiểm tra nó hoặc sau khi chứng minh. Một sổ đăng ký token cũng có thể từ chối thanh toán theo các quy tắc của chính nó. Khi đó Canton từ chối khối và không có gì được ghi nhận. Đối với một sự từ chối của sổ đăng ký mà trình tạo không thể dự đoán, lần chạy tiếp theo cần `--exclude`; trình tạo không ghi nhớ sự từ chối đó giữa các lần chạy.

Mỗi lần chạy của trình tạo xử lý một khối; nó không lặp qua các khối liên tiếp. Trình tạo không giới hạn số bước thực thi trước khi chứng minh. Nếu trình chứng minh không thể hoàn tất một khối, lần chạy của trình tạo sẽ dừng. Phần [README của trình dựng](https://github.com/rome-protocol/canton-zk-evm/blob/a84e84e439a5cc669c0ae61facf7c8c995d9d564/builder/README.md#not-here) ghi lại các giới hạn này.

## Những gì bản phát hành này không cung cấp

Mạng cục bộ không giữ trạng thái giữa các lần chạy. Nó không có xác thực API Ledger hay TLS và được thiết kế cho một máy. Mạng sử dụng các snapshot Canton 3.6 đã ghim và một trình biên dịch Daml snapshot cho lệnh gọi ngoài. Phiên bản và mã băm của chúng nằm trong [GHIM](https://github.com/rome-protocol/canton-zk-evm/blob/a84e84e439a5cc669c0ae61facf7c8c995d9d564/PINS).

Nhiều trình tạo, việc đưa vào bắt buộc, triển khai Canton công khai, quyền riêng tư và lưu ký đòi hỏi nhiều hơn bên tham gia của nhà vận hành đều nằm ngoài bản phát hành này. Không có mục tiêu về thông lượng hay thời gian khối. Bản demo được ghi lại đã dùng cùng một triển khai sidecar trên cả hai bên tham gia xác nhận, trên cùng máy với Canton.

Người đọc có thể kiểm tra lại bằng chứng khối, nhưng `BlockRecord` không chứa các phần đã được thanh toán. Nút Verify của trình duyệt kiểm tra bằng chứng, tiêu đề và các giao dịch; nó không lặp lại các kiểm tra thanh toán phần của Canton.

## Báo cáo một sự cố bảo mật

Hãy dùng báo cáo lỗ hổng riêng tư của GitHub cho `canton-zk-evm`: mở tab Security của kho lưu trữ và chọn **Báo cáo lỗ hổng**. Đừng mở issue công khai cho một vấn đề bảo mật.

Hãy bao gồm thành phần bị ảnh hưởng, commit, các bước tái hiện và kết quả quan sát được. Đính kèm bằng chứng hoặc khối nếu nó là một phần của phát hiện. Phần [chính sách bảo mật](https://github.com/rome-protocol/canton-zk-evm/blob/a84e84e439a5cc669c0ae61facf7c8c995d9d564/SECURITY.md) xác định phạm vi. Không có chương trình bug bounty.


---

# 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/vi/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.
