Zcash — криптовалюта с акцентом на приватность платежей. В отличие от «прозрачного» биткоина, где вся история движения монет видна всем, Zcash позволяет скрывать отправителя, получателя и сумму в так называемых shielded-транзакциях. Техническая основа — доказательства нулевого разглашения (zk-SNARK), которые подтверждают корректность перевода, не раскрывая содержимое.
Zcash сохраняет совместимость с «биткоин-логикой» (UTXO-модель, фиксированный лимит монет, эмиссионный график), но добавляет собственные пулы приватности и типы адресов. За годы развития в сети появились поколения протокола: Sprout → Sapling → Orchard, а также Unified Addresses (UA), которые «склеивают» несколько семейств адресов в один человеко-дружелюбный формат.
Эта страница поможет понять архитектуру и практику: как устроены z-адреса и пулы, где приватность действительно сильна, как не «слить» метаданные, как пользоваться viewing-ключами для выборочного раскрытия и что учитывать с точки зрения комплаенса (KYC/AML) и ончейн-проверок (blockchain-аналитика).
Коротко: чем Zcash отличается от Bitcoin и Monero
- От Bitcoin — тем, что может делать shielded-переводы: данные зашифрованы, но корректность доказана zk-SNARKом. При этом в Zcash есть и прозрачные адреса (t-адреса), совместимые по логике с биткоин-UTXO; пользователь сам выбирает «прозрачный» или «приватный» путь.
- От Monero — тем, что приватность «опциональна», а не обязательна по умолчанию. Monero делает каждую транзакцию приватной за счет кольцевых подписей/стелс-адресов, а Zcash позволяет выбирать режим: t→t (прозрачно), t→z/z→t (частично), z→z (полностью shielded). Это расширяет сферу применения (например, для комплаенса), но требует дисциплины.
Архитектура Zcash: адреса, пулы и доказательства
Адреса и пулы
В Zcash исторически существует несколько семейств адресов/«пулов» приватности:
- Transparent (t-адреса) — работают как в Bitcoin: UTXO видны, суммы и связи прозрачно читаются аналитикой.
- Sprout (старый пул) — первое поколение shielded-адресов; сегодня используется по остаточному принципу.
- Sapling (z-адреса нового поколения) — значительно ускорил и удешевил создание доказательств, упростил мобильные кошельки.
- Orchard (современный пул) — ещё одно поколение, использующее доказательства на базе Halo-подхода; поддерживает Unified Addresses.
Unified Address (UA) — формат, который объединяет сегменты разных семейств (transparent/Sapling/Orchard) в один адрес, чтобы пользователю не приходилось следить, «какой тип» поддерживает кошелёк или платёжный поток. Отправитель выбирает совместимый «кусок» UA и посылает в него — кошельки делают это автоматически.
zk-SNARK в двух словах
В shielded-транзакции Zcash происходит следующее:
- Вместо «обычных UTXO» используются защищённые примитивы — коммитменты к нотам (аналог «монет» внутри частного пула).
- Чтобы не допустить «двойной траты» без раскрытия данных, применяются нулификаторы (nullifiers): доказательство показывает, что «эта нота ещё не тратилась», и одновременно не раскрывает, какая именно.
- Для доказательства корректности входов/выходов строится мерклово дерево коммитментов; доказательство показывает включённость без раскрытия содержания.
- Сами суммы и адреса получателей зашифрованы, но доказательство подтверждает сохранение баланса.
С практической точки зрения важно помнить: приватность достигается только в z→z, а любые «касания» прозрачного пула (t→z, z→t) оставляют метаданные, которые аналитика способна использовать для корреляции.
Эволюция протокола: от Sprout к Orchard и Unified Addresses
Zcash проходил несколько «сетевых апгрейдов», которые улучшали производительность, безопасность и UX:
- Sprout — исходный вариант SNARK-протокола. Ограничения: тяжёлые доказательства, инфраструктура кошельков требовательна к ресурсам, была частная «trusted setup».
- Sapling — ускорение/облегчение доказательств (вплоть до работы на мобильных устройствах), новая схема ключей, улучшенные «viewing keys», более компактные транзакции.
- Orchard — современный пул приватности с использованием «рекурсивных» доказательств нового поколения и обновлённых механизмов адресации. Вместе с ним экосистема перешла на Unified Addresses, где один UA вмещает сегменты для соответствующих пулов.
Ключевая практическая мысль: в новых кошельках предпочтителен пул Orchard. Если ваш контрагент даёт не UA, а «старый» z-адрес, убедитесь, что ваш софт умеет в нужный пул — иначе перевод не пройдёт.
Ключи и выборочное раскрытие: viewing keys и аудит
В shielded-модели приватность не означает «полный мрак». Удержать баланс между частной жизнью и отчётностью помогает механика viewing key:
- Full viewing key (FVK) — позволяет воспроизводить входящие/исходящие платежи и суммы по вашему адресу без возможности тратить.
- Incoming viewing key (IVK) — только для входящих.
- Diversified addresses — из одного корневого ключа можно генерировать «семейство» адресов с разными диверсификаторами; это помогает не «светить» один и тот же адрес в разных контекстах.
Зачем это нужно: комплаенс и аудит. Вы можете по запросу выборочно раскрыть историю конкретному контрагенту/аудитору (банку, бухгалтеру, налоговой в вашей юрисдикции), не публикуя её на весь мир. Это делает Zcash совместимым с корпоративным учётом и требованиями политики «знай своего клиента» (см. KYC/AML).
Транзакционные шаблоны и модель угроз
Несколько типичных сценариев и что в них утекает:
- t→t: полностью прозрачно (как в Bitcoin). Все суммы, входы/выходы и связи видны.
- t→z: вы «заходите» в приватный пул. Факт депозита виден, но «что дальше» — нет. Однако тайминг и величина входа могут использоваться аналитикой для предположений о дальнейшем расходовании.
- z→t: «выход» из приватного пула. Опять же, аналитика может пытаться сопоставить «входной» и «выходной» потоки по времени и суммам.
- z→z: полностью shielded на уровне блокчейна. Здесь ключевой риск — операционный слой: повторное использование адреса, слитые метаданные из интерфейсов/логов, отправка точной суммы, характерной только вашей сделке (fingerprinting).
Практические гигиенические меры:
- По умолчанию — UA + Orchard. Пусть кошелёк сам решает, какой сегмент UA использовать, чтобы не промахнуться пулом.
- Не реюзать адреса; создавать разные «диверсифицированные» адреса под разные контексты.
- Случайные величины «сдачи»: избегать характерных паттернов сумм.
- Отложенный вывод в t-пул: если требуется вывести в прозрачный пул (на биржу, например), не делайте это в тот же блок, что и вход в z-пул.
- Изоляция метаданных: выключайте «телеметрию» у приложений, не публикуйте скриншоты/txid в открытых чатах, шифруйте бэкапы.
Эмиссия и экономика ZEC: что важно знать пользователю
- В Zcash — фиксированная верхняя граница эмиссии по мотивам биткоина. Базовый нарратив: редкая монета с предсказуемым графиком выпуска.
- Вознаграждение за блок периодически сокращается («halving»). Это влияет на инфляцию ZEC и экономику майнинга.
- В первые годы существовал «учредительный» механизм финансирования разработки; со временем он был заменён более нейтральным фондам развития (dev-fund) по решению сообщества. Конкретные доли и адресаты менялись эволюционно, но общий принцип: ядро разработки не голодает, а сеть — не сосредотачивает власть у одной компании.
- Для конечного пользователя ключевое — не детали бухгалтерии фондов, а ликвидность и поддержка ZEC в ваших сервисах: кошельки, биржи, карты, платёжные шлюзы.
Кошельки и инфраструктура: как «посадить» ZEC в реальную жизнь
Полноценные (full) узлы vs «лёгкие» кошельки
- Full node — валидирует всё самостоятельно, хранит весь блокчейн, максимально независим, но требователен к ресурсам.
- Лёгкие кошельки — полагаются на специализированные lightwallet-серверы (индексируют блокчейн и обслуживают выборку доказательств/заметок для клиента). Это отличный вариант для мобильных пользователей, если провайдер сервера заслуживает доверия.
Требования к кошельку для приватности
- Поддержка Unified Address и пула Orchard.
- Экспорт viewing-ключей с возможностью «тонкой» выдачи.
- Корректная работа с «diversified addresses».
- Надёжный бэкап фраз/ключей (офлайн, шифрованно, без облачных автозаливок).
- Отключаемая телеметрия и отсутствие сторонних счётчиков.
Памятка по мобильным кошелькам
- Пин-код/биометрия — «защита от любопытных», а не от злоумышленника: исходите из модели «устройство скомпрометировано».
- Никаких скриншотов с адресами/txid.
- Резервная копия seed — оффлайн, в нескольких местах, без цифровых фотографий.
Приватность и комплаенс: как уживаются viewing-keys и Travel Rule
Zcash не отменяет требований KYC/AML, финансового мониторинга и, где это применимо, Travel Rule для VASP↔VASP. Сценарии:
- Розничный пользователь: храните журналы операций (дата, назначение, контрагент), не теряйте viewing-ключи; при необходимости вы сможете доказать источник средств.
- Бизнес: используйте IVK/FVK для выборочного раскрытия движения средств аудитору/банку; интегрируйте провайдера ончейн-аналитики для проверки прозрачных участков цепочки (в т. ч. t-входов/выходов).
- Биржи и платёжные сервисы: если вы поддерживаете ZEC, заранее определите, в каком режиме (t-только, t↔z, z-полностью) доступны депозиты/выводы. Это уменьшит число «зависаний» и споров при приёме shielded-платежей.
Зрелая позиция: приватность пользователя и регулируемая отчётность не взаимоисключают друг друга. Viewing-ключи предоставляют именно то «тонкое» раскрытие, которое требуется по запросу, без «раздевания» перед всей сетью.
Сравнение с другими приватными технологиями
- Monero — «тотальная» приватность по умолчанию (кольцевые подписи, стелс-адреса, RingCT). Преимущество — отсутствие «прозрачных утечек», сложнее ошибиться пользователю. Недостаток — сопутствующая сложность обмена/листингов в некоторых юрисдикциях.
- Privacy Pools (смотри наш гид) — концепт «комплаенс-совместимой» приватности: пользователи могут доказывать, что их средства не связаны с «плохими» подграфами. Идеи совместимы с философией выборочного раскрытия в Zcash.
- Стелс-адреса в EVM (ERC-5564) — другой подход к приватности на аккаунтной модели: создаются одноразовые адреса для получателя. В Zcash же приватность встроена «в саму монету» через zk-доказательства и пулы.
Распространённые ошибки и как их избегать
- Реюз одного и того же z-адреса — упрощает корреляцию. Используйте диверсификацию адресов.
- Мгновенный t-вывод после z-входа — облегчает сопоставление потоков. Давайте «отлежаться» и дробите суммы.
- Ошибки с пулом — отправка в неподдерживаемый кошельком «сегмент» UA. Всегда проверяйте, что контрагент понимает UA/Orchard.
- Утечка через интерфейс — скриншоты, аналитика приложений, произвольные плугины. Никаких публичных «чекинов» с txid.
- Потеря viewing-ключей — потом будет трудно (или невозможно) доказать законность источника средств.
Базовый чек-лист для первой shielded-операции
- Установите кошелёк с Unified Address и поддержкой Orchard.
- Создайте новый UA для конкретной задачи/контрагента.
- Сохраните seed и viewing-ключи офлайн (минимум два независимых бэкапа).
- Сделайте тестовый перевод малой суммы.
- На крупную сумму — по возможности используйте z→z; если нужен вывод в t-пул/на биржу, не делайте это сразу и не «круглите» суммы слишком очевидно.
- Ведите журнал (даты, контрагенты, назначение, хэши) — это пригодится и для личной дисциплины, и для отчётности.
FAQ
Можно ли полностью скрыть следы с первой же транзакции? Надёжная приватность достигается только при z→z и грамотной операционной дисциплине. Любые касания t-пула и неаккуратность с метаданными ослабляют анонимность.
Зачем Unified Address, если у меня уже есть z-адрес? UA «упаковывает» сразу несколько совместимых «сегментов» и избавляет от несовместимости пулов между кошельками. Это уменьшает число ошибочных переводов и повышает UX.
Насколько «тяжёлые» shielded-транзакции? Современные кошельки строят доказательства заметно быстрее, чем в эпоху Sprout, и поддерживают мобильные сценарии. При этом z-транзакция всё равно тяжелее «прозрачной» — учитывайте это на слабых устройствах.
Можно ли совместить приватность и требования комплаенса? Да. Viewing-ключи позволяют выборочно раскрывать историю конкретным сторонам. Это практикуется бизнесом и облегчает работу с банками/аудиторами (см. KYC/AML).
Почему биржа не принимает мой shielded-депозит? Не все площадки поддерживают z-депозиты/выводы. Проверьте карточку актива: возможно, депозит доступен только на t-адрес (или только определённый пул/сегмент UA).
