Протокол атестації ZAP1
ZAP1 — це open-source протокол атестації для Zcash. Він записує структуровані події життєвого циклу в дерево Меркла BLAKE2b і закріплює корінь дерева ончейн через захищені memo Orchard. Докази можна перевірити публічно. Дані подій залишаються приватними.
Як це працює
Оператори реєструють типи подій (розгортання, платежі, перекази тощо) і надсилають їх до екземпляра ZAP1. Кожна подія створює хеш-листок за допомогою BLAKE2b-256 із розділенням доменів. Листки накопичуються в дереві Меркла. Коли досягається порогове значення, корінь дерева кодується як memo ZAP1:09 і закріплюється в Zcash у захищеній транзакції.
Будь-хто, хто має хеш листка, може перевірити весь шлях від листка до кореня й до ончейн-якоря, не покладаючись на довіру до оператора.
Ключові властивості
- Незалежність від застосунку: будь-який оператор Zcash може визначати власні типи подій і рядки персоналізації
- Збереження приватності: корисні дані подій хешуються перед закріпленням. Ончейн потрапляють лише хеші.
- Незалежна верифікація: для перевірки потрібні лише пакет доказів і доступ до блокчейна. Довіра до оператора не потрібна.
- Сумісність із ZIP 302: ZAP1 поступово зближується з partType ZIP 302 для корисного навантаження атестації
Що вже існує
- Референсна реалізація (Rust, ліцензія MIT)
- SDK для верифікації на crates.io (Rust + 83KB WASM)
- JavaScript SDK на npm
- Універсальний декодер memo (розпізнає ZAP1, ZIP 302 TVLV, текстові, бінарні та порожні memo)
- Набір перевірки відповідності з 29 перевірками API і 14 перевірками протоколу
- Дизайн порогового підпису FROST 2-of-3 для багатосторонньої трансляції якорів
- Чернетка ZIP PR #1243 на розгляді
- 4 mainnet-якорі з 14 листками станом на березень 2026 року
Архітектура
Code-highlight
Your app --> ZAP1 API --> Merkle tree --> Zcash anchor
| |
event types shielded memo
(DEPLOYMENT, etc) (ZAP1:09:{root})
Кожен оператор запускає власний екземпляр ZAP1 зі своїми ключами, деревом Меркла та якорями. Між операторами немає спільного стану.
Де дізнатися більше