Агрегирование подписей - горячая тема для большинства разработчиков биткоина, работающих над поиском путей улучшения этой глобальной децентрализованной сети.
Проанализировав имеющиеся варианты, разработчик Грегори Максвелл пришел к выводу, что использование схемы аутентификации Шнорра для объединения входных данных в пакеты может уменьшить размер транзакций в сети Биткоин примерно на 40%. Это особенно полезно, когда у транзакции есть несколько входов, что существенно увеличивает размер. Для сравнения: размер простой транзакции с одним входом и одним выходом обычно составляет 250 килобайт. Однако в настоящее время большинство транзакций имеют несколько входов, что увеличивает размер, в среднем, до 500-600 килобайт. Применение агрегирования подписей позволит уменьшить его до 300-360 килобайт, что повысит пропускную способность сети в долгосрочной перспективе.
Изменение алгоритма биткоина
По умолчанию, в биткоине сейчас используется так называемый алгоритм цифровых подписей на основе эллиптических кривых (ECDSA). Главная команда разработчиков рассматривает возможность его смены. Предлагаемый на замену алгоритм - схема аутентификации Шнорра - представляет собой усовершенствованную версию ECDSA. Он тоже использует цифровые подписи на основе эллиптических кривых, но улучшает работу в целом и дает ряд преимуществ в плане выравнивания транзакций.
Вместо того, чтобы создавать и проверять хэш для каждого входа транзакции по отдельности, схема аутентификации Шнорра выявляет суть каждой транзакции и минимизирует количество ресурсов, необходимых для ее безопасной и корректной записи в блокчейн. Кроме того, этот алгоритм позволяет проводить агрегирование нескольких подписей в одну, которая будет действительна для всех владельцев кошелька с мультиподписью. Разработчики назвали такую схему Native MultiSig.
Учитывая рост количества кошельков с мультиподписью и числа транзакций, не удивительно, почему разработчики так стремятся улучшить этот аспект биткоина. Использование одного ключа вместо нескольких экономит время и энергию. Это уменьшает размер пакетов данных, что, в свою очередь, увеличивает пропускную способность сети в долгосрочной перспективе.
Еще одним важным преимуществом является повышение конфиденциальности. Сейчас выполнение транзакции с мультиподписью является видимым и прозрачным, то есть список подписантов доступен всем. При использовании агрегирования подписей по схеме аутентификации Шнорра подробности транзакции скрываются, а весь набор данных аналогичен тому, который характерен для обычных транзакций с одним открытым ключом.
Уязвимость схемы аутентификации Шнорра
Транзакции с мультиподписью, в которых для скрытия от публики данных о владельцах использовался алгоритм Шнорра, удавалось взломать с помощью метода так называемой отмены, при котором злоумышленник проникает в систему, имитируя открытый ключ участников транзакции. При этом он мог фактически контролировать счет с мультиподписью, используя всего одну из подписей. Этот вопрос продолжает изучаться, и уже представлено решение, устраняющее возможность такого развития событий.
Заключение
Агрегирование подписей по схеме Шнорра может значительно улучшить протокол биткоина и обеспечить сокращение размера транзакций на 15% (для транзакций с одним входом) - 40% (для транзакций с мультиподписью, несколькими входами и несколькими выходами).
Уязвимость к атакам методом отмены устранена, а других проблем безопасности пока не выявлено. Поэтому можно ожидать, что уже очень скоро алгоритм Шнорра будет принят в качестве стандарта для сети Биткоин. Главная команда разработчиков уже объявила об этом в своем блоге. Другие источники также подтверждают, что схема Шнорра очень хорошо совместима с биткоином.