Post
Topic
Board Новички
Topic OP
Вопрос про публичные и приватные ключи
by
rpy3uH
on 25/09/2014, 07:10:11 UTC
Итак, открываю bitcoin core. Смотрю пункт меню "Проверить сообщение". Надо ввести адрес, сообщение и подпись.

Подпись имеет длину 88-90 символов, но это base64, получается что в оригинале 64 байта. Правильно, ибо подпись для ECDSA-256 имеет размер 512 бит или 64 байта. Всё сходится. Для того, чтобы проверить подпись надо знать публичный ключ. Bitcoin-адрес это не публичный ключ, это сего лишь специально вычисленный хэш, по этому хешу восстановить публичный ключ невозможно.

Вопрос: откуда программа знает публичный ключ? Как она его проверяет? У меня была гипотеза, что этот ключ она находит в блокчейне, но тут загвоздка: а если этот адрес вообще не фигурирует в блокчейне и не было ни одной транзакции с ним?