Цифровая подпись отличается каждый раз - PullRequest
0 голосов
/ 10 июня 2019

Цифровые подписи зависят от сообщения и секретного ключа. Предположим, что получатель копирует сообщение несколько раз (причина, по которой у нас уникальные идентификаторы), почему подпись будет отличаться (поскольку сообщение и секретный ключ совпадают)?

1 Ответ

0 голосов
/ 10 июня 2019

Биткойн использует ECDSA, и причина, по которой подпись отличается для одного и того же сообщения, а ключ - это случайный одноразовый номер, который генерируется каждый раз при создании подписи.

Подпись ECDSA представляет собой пару (r,s) где r - это координата X в kG, а s = (m + r * x) / k (где k = одноразовый номер, m = хэш сообщения, x = закрытый ключ, G = генератор кривой).

Смотрите также № 3 в https://en.wikipedia.org/wiki/Elliptic_Curve_Digital_Signature_Algorithm#Signature_generation_algorithm

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...