Мережа Zcash перейшла на Ironwood: як закрили дворічну вразливість із фальшивими монетами

28 липня на блоці №3 428 143 в основній мережі Zcash відбувся запуск оновлення Ironwood. Ключовий елемент апгрейду — впровадження нового пулу приватних транзакцій, покликаного замінити Orchard, у якому наприкінці травня було виявлено критичну помилку.
Вразливість, що ховалася з 2022 року
Проблему виявив інженер з безпеки Shielded Labs Тейлор Горнбі під час аналізу коду за допомогою ШІ-моделі Opus 4.8 від Anthropic. Помилка існувала з моменту запуску пулу в травні 2022 року і теоретично дозволяла непомітно емітувати підроблені ZEC. У тестовій мережі дослідник успішно згенерував монети через робочий код атаки.
Команда закрила вразливість у два етапи на початку червня: спочатку софтфорком, який тимчасово вимкнув транзакції в Orchard, потім хардфорком, який відновив роботу. Ознак реальної експлуатації знайдено не було. Однак архітектура приватного пулу не дозволяє криптографічно довести відсутність фальшивих монет — суми переказів приховані за дизайном.
Як Ironwood вирішує проблему
Оновлення вводить перевірку на межі пулу. Orchard переведено в обмежений режим: нові кошти до нього не надходять, а вже розміщені монети заблоковані для внутрішніх переміщень. Виведення коштів можливе лише через «турнікет» у Ironwood.
На рівні протоколу вбудовано механізм, який гарантує, що зі старого сховища не буде виведено більше ZEC, ніж до нього надійшло. Це дозволяє перевіряти цілісність емісії без доступу до приватних даних транзакцій. Ironwood працює на виправленому протоколі Orchard, пройшов формальну верифікацію та сторонній аудит безпеки.
Що потрібно користувачам
Перехід реалізовано на рівні гаманців: застосунки з підтримкою Ironwood запропонують перенести кошти зі старого сховища. Створювати новий гаманець або змінювати адресу не потрібно — вхідні перекази на існуючі Orchard-адреси автоматично перенаправляються в новий пул. У Zodl міграція вже доступна в ручному режимі, автоматичну опцію обіцяють пізніше. Користувачам без активів у Orchard достатньо оновити застосунок.
Реакція ринку
Запуск апгрейду помітно не вплинув на курс ZEC. Дата розгортання Ironwood була відома заздалегідь — розробники анонсували її ще 9 червня. За останню добу монета подешевшала на 4,3% — до $468. Нагадаю, після розкриття вразливості на початку червня курс ZEC обвалився на 48% — до $302,48.
Думка експерта: Ironwood — грамотний крок, але ситуація підкреслює фундаментальну проблему приватних блокчейнів: приховані дані не дозволяють повністю виключити приховану емісію. Формальна верифікація — єдиний шлях до довіри, але вона не гарантує відсутності майбутніх помилок. Ринок, судячи з млявої реакції, уже заклав ризики в ціну.