Больше не нужно искать — необходимые
обучающие материалы и подсказки всегда под рукой

29 августа разработчики Zakura анонсировали открытый комплект криптографических и протокольных библиотек для экосистемы Zcash. Как заявляют авторы, Zakura Common способен в ряде сценариев сократить время подготовки конфиденциальной транзакции в кошельке с более чем трех секунд до менее 200 миллисекунд.
Уточняется, что ускорение касается не подтверждения транзакции в блокчейне, а вычислений, которые устройство пользователя выполняет перед отправкой в сеть.
Для использования этих оптимизаций обновление протокола Zcash не требуется. Библиотеки распространяются под двойной лицензией MIT/Apache 2.0 и могут применяться разработчиками кошельков в действующей сети.
Генерация доказательств и библиотеки
По итогам собственных испытаний Zakura отдельные элементы нового стека показали следующее ускорение:
— формирование доказательств — более чем в 14 раз на мобильных устройствах и более чем в 5 раз на настольных компьютерах;
— хеширование Sinsemilla — более чем в 21 раз;
— пробная расшифровка (trial decryption) — более чем в 1,5 раза;
— проверка zk-SNARK — в 4–8 раз.
Авторы связывают достигнутый результат не с одной крупной оптимизацией, а с изменениями сразу в нескольких компонентах. Часть решений опирается на известные подходы из криптографии и разработки компиляторов, другие были созданы специально для Zcash.
Основная разработка собрана в монорепозитории zakura-core/common, который включает модифицированные версии librustzcash и ряда других библиотек на Rust.
Отдельно команда развивает zakura-core/wallet-libraries — набор модулей для приватных кошельков и сторонних интеграций. В перспективе туда планируется добавить инструменты PIR (Private Information Retrieval), позволяющие запрашивать данные, не раскрывая серверу, какой именно элемент интересует пользователя.
Первоначально в анонсе Zakura 1.3.0 упоминалась как будущая версия, но уже 29 августа разработчики опубликовали релиз v1.3.0.
В том же объявлении команда сообщила о переходе Zakura на Zakura Common и рекомендовала сторонним разработчикам кошельков заменить прежние библиотеки librustzcash на новый стек. По данным Zakura, на него также перешел проект Tachyon.
Масштабирование Zcash
По утверждению команды Zakura, сеть на базе ее узлов уже справляется с предложенным для NU7 целевым интервалом между блоками в 25 секунд. Соответствующий ZIP 218 предусматривает сокращение интервала с нынешних 75 до 25 секунд. При сохранении сопоставимого уровня защиты от отката фактическое снижение задержки может оказаться немного меньше трехкратного.
Также предложение включает ограничения на количество операций в приватных пулах Sapling и Orchard. По расчетам авторов, это уменьшит максимальный объем данных для синхронизации легких кошельков на 37% — с 271 до 169 МБ в сутки, а число пробных расшифровок — с 4,8 млн до 2,3 млн.
Расчетная пропускная способность Orchard при этом возрастет с 2,9 до 6,6 транзакции в секунду.
Напомним, 28 июля в Zcash активировали обновление после обнаружения критической уязвимости в Orchard. Апгрейд ограничил прежний пул и запустил новый приватный Ironwood.
Популярные новости: