Author

Topic: ecdsa bitcoin адрес (Read 162 times)

legendary
Activity: 2450
Merit: 2190
April 10, 2018, 12:24:52 AM
#3
Бонус: вообще-то публичный ключ можно воссоздать по подписи сообщения. Но это ресурсоемкая операция,
не факт, что Сатоши про нее знал, поэтому в исходном биткойне это не предусмотрено, а разработчики
впоследствии решили что скорость работы важнее, чем экономия байтов на диске. Можете погуглить на эту тему
"ecdsa recover public key"
Всё верно. Можно ещё добавить, что обычно публичный ключ (то есть координаты X и Y точки на эллиптической кривой ECDSA secp256k1) воссоздаётся при проверке подписанного Bitcoin-message. При этом могут использоваться recovery flags.
sr. member
Activity: 770
Merit: 305
April 04, 2018, 12:49:16 PM
#2
Вопрос такой, вот биткоин создает используя ecdsa, приватный и публичный ключ.
После чего публичный ключ хешируется  и является адресом.

тогда, как нода проверяет подпись сообщения, ей же нужен публичный ключ, а у нас только хеш от ключа?

В двух словах: при трате биткойнов с адреса в транзакцию записывается и подпись, и публичный ключ
Сперва проверяется что публичный ключ соответствует адресу (своему хэшу), а потом проверяется, что
подпись сообщения сделана именно нужным приватным ключом.

Вот я вам примерчик могу показать, чтоб сразу понятно было.
Берем простенькую транзакцию
https://blockchain.info/tx/c46e908dd1b48d718c6bb9457da7099e7c32b13f59362ed3dfc348ea809d4644?show_adv=true
Там внизу расшифровка входов и выходов
Длинная строчка 304402202fbc6ad846593b57... - это подпись
Длинная строчка 04561db13f22e2c51c09507f3... - это публичный ключ адреса 1AF4s8Rte...

Бонус: вообще-то публичный ключ можно воссоздать по подписи сообщения. Но это ресурсоемкая операция,
не факт, что Сатоши про нее знал, поэтому в исходном биткойне это не предусмотрено, а разработчики
впоследствии решили что скорость работы важнее, чем экономия байтов на диске. Можете погуглить на эту тему
"ecdsa recover public key"
member
Activity: 202
Merit: 27
Atom foundation
April 04, 2018, 10:33:41 AM
#1
Вопрос такой, вот биткоин создает используя ecdsa, приватный и публичный ключ.
После чего публичный ключ хешируется  и является адресом.

тогда, как нода проверяет подпись сообщения, ей же нужен публичный ключ, а у нас только хеш от ключа?

Jump to: