Всем нам известно, что раскрываемость секретного ключа в подписи ECDSA может привести к полному восстановлению Биткоин Кошелька. В наших более ранних статьях мы рассматривали слабости и уязвимости в транзакциях блокчейна, но так же существуют короткие подписи ECDSA которые так же приводят к полному восстановлению Биткоин Кошелька.
Почему же эти подписи ECDSA называются короткими?
Ответ на этот вопрос вы можете получить из обсуждаемой темы: "Самая короткая подпись ECDSA" [The shortest ECDSA signature]
В прошлой нашей статье: "Уменьшение приватного ключа через скалярное умножение используем библиотеку ECPy + Google Colab" мы создали Python-скрипт: maxwell.py который сгенерировал для нас довольно интересный публичный ключ
(0x3b78ce563f89a0ed9414f5aa28ad0d96d6795f9c63 , 0xc0c686408d517dfd67c2367651380d00d126e4229631fd03f8ff35eef1a61e3c)
Как мы знаем значение сигнатуры "R"
это и есть публичный ключ от секретного ключа (Nonce)
Взгляните на Blockchain транзакцию: 11e6b169701a9047f3ddbb9bc4d4ab1a148c430ba4a5929764e97e76031f4ee3
RawTX:
0100000001afddd5c9f05bd937b24a761606581c0cddd6696e05a25871279f75b7f6cf891f250000005f3c303902153b78ce563f89a0ed9414f5aa28ad0d96d6795f9c6302200a963d693c008f0f8016cfc7861c7f5d8c4e11e11725f8be747bb77d8755f1b8012103151033d660dc0ef657f379065cab49932ce4fb626d92e50d4194e026328af853ffffffff010000000000000000016a00000000
Размер этой транзакции всего лишь: 156 байт
Как можно восстановить Биткоин Кошелек через короткие подписи ECDSA?
В криптоанализе блокчейна криптовалюты Bitcoin мы используем собственный Bash-скрипт: btcrecover.sh