Что такое подписи Шнорра и как они используются в биткоине?
Что такое подписи Шнорра?
Подписи Шнорра ― схема цифровых подписей, предложенная в 1991 году немецким криптографом Клаусом Петером Шнорром.
В 2020 году она включена в BIP-340 в качестве альтернативы Elliptic Curves Digital Signature Algorithm (ECDSA). Предложение имплементировано в сети биткоина в ноябре 2021 года.
Что такое цифровая подпись?
Цифровая подпись ― это математическая схема для проверки двух ключевых характеристик цифрового сообщения: подлинности (отправлено конкретным пользователем) и целостности (не изменялось в процессе передачи).
С помощью цифровых подписей протокол биткоина подтверждает привязку закрытого ключа к конкретному публичному адресу. Сатоши Накамото подчеркнул их важность в white paper первой криптовалюты:
«Определим электронную монету как последовательность цифровых подписей. Очередной владелец отправляет монету следующему, подписывая хеш предыдущей транзакции и публичный ключ будущего владельца и присоединяя эту информацию к монете. Получатель может проверить каждую подпись, чтобы подтвердить корректность всей цепочки владельцев».
Какие цифровые подписи используются в биткоине?
Изначально первая криптовалюта использовала только ECDSA — алгоритм с открытым исходным кодом, широко применявшийся в 2008 году. Выбор Сатоши Накамото связан с тем, что ко времени публикации white paper биткоина подписи Шнорра не прошли стандартизацию.
В 2014 году на форуме Bitcointalk заговорили о необходимости внедрения подписей Шнорра в протокол биткоина, а через шесть лет Питер Велле, Йонас Ник и Тим Раффинг стандартизировали их в BIP-340.
Имплементация подписей Шнорра произошла 14 ноября 2021 года в рамках обновления Taproot на высоте блока #709 632. С тех пор они используются наряду с ECDSA.
В чем преимущества подписей Шнорра перед ECDSA?
Авторы BIP-340 выделяют три основных преимущества подписей Шнорра:
- Доказуемая безопасность. Подписи Шнорра невозможно подделать при атаке по выбранному сообщению (SUF-CMA) с использованием модели случайных оракулов с достаточно сложной ECDLP. Безопасность ECDSA основывается на более сильных допущениях.
- Негибкость. Подписи Шнорра являются доказуемо негибкими. Гибкость ECDSA означает, что злоумышленник может создать действительную подпись для открытого ключа и сообщения, не имея доступа к секретному ключу.
- Линейность. С помощью подписей Шнорра несколько взаимодействующих сторон могут создать действительную подпись для суммы своих открытых ключей.
Последнее преимущество позволяет реализовать более простую мультисиг-схему вроде Musig2 путем агрегации подписей.
«При использовании подписи Шнорра мультисиг-транзакция выглядит как транзакция с одной подписью, что повышает конфиденциальность отправителей и усложняет жизнь ончейн-аналитикам. Последние не могут сразу привязывать транзакции к одному человеку или группе людей», ― комментируют представители биткоин-миксера Mixer.Money.
Они отмечают, что подписей Шнорра недостаточно для обеспечения анонимности:
«Слабая приватность остается проблемой биткоина. Сообщество восприняло Taproot как обновление для повышения конфиденциальности, однако единственным изменением стала невозможность выявления мультиподписи средствами блокчейн-аналитики. Схема Шнорра не скроет отправителя и получателя монет. Для этого по-прежнему нужно использовать биткоин-миксеры или CoinJoin-решения».
В 2024 году разработчики последних столкнулись с беспрецедентным давлением со стороны регуляторов. По мнению Mixer.Money, оно может привести к снижению количества пользователей и негативно сказаться на технологии.
Представители сервиса рекомендуют обратить внимание на решения, способные скрывать сам факт микширования монет. Например, в режиме «Полная анонимность» Mixer.Money отправляет пользователю «чистые» монеты с крупных бирж, чтобы исключить вероятность получения своих же активов, либо биткоинов сомнительного происхождения.