В ноябре в Биткоине начнут работать подписи Шнорра. Кошельки, биржи и другие сервисы постепенно будут их внедрять. Разработчикам нужно помнить о такой ошибке, как повторное использование nonce, которая иногда встречается в реализациях ECDSA и позволяет восстановить секретный ключ. Со Шнорром точно такая же история: https://ecc2017.cs.ru.nl/slides/ecc2017-tibouchi.pdf
Эта бага ранее была много где от Playstation3 до blockchain·com, и живет до сих пор в многих блокчейнах.
Пример уязвимого #BTC-адреса:
1CUSKYar1yGBAg3MHWhC3sYhTfBQqc2sTNВ подписях в его двух транзакциях траты
ca8f3a25744ae2859f4a5d219274d9e3ae97c23c201a618c543de76640a97ba6 и
378eb2c5b7dadbba35c79c5a370b48db052a80d44b0e0361b39a9c129c86120eприсутствует одинаковое R:
436c023f2e07cdf9a51e884c35037594c930caf7c2c0d0008ac35d10d4de99fcчто позволяет из остальных данных из транзакций вычислить K:
K = (H1-H2)/(S1-S2)
и секретный ключ:
Sk = (S1*K-H1)/R =
KypfcAANPUhYdxAzwNvHvHu1gcV4Bh6KVhkCNnVGVjHh1Hq11LzRкоторый соответствует адресу
1CUSKYar1yGBAg3MHWhC3sYhTfBQqc2sTN