Цифровая подпись: зачем она нам? - PullRequest
0 голосов
/ 04 ноября 2018

Я не понимаю что-то, что, вероятно, очень тривиально, но все еще не имеет смысла для меня, зачем нам нужна цифровая подпись, если они могут быть расшифрованы открытым ключом. Согласно этой статье https://www.instantssl.com/https-tutorials/digital-signature.html Алиса пишет сообщение, затем сообщение хэшируется и шифруется с использованием pk. Зашифрованное сообщение отправляется, и Боб расшифровывает его, используя только открытый ключ от Алисы. Они сравнивают хэши и т.д ... Я понимаю все, кроме одного шага: если Боб может расшифровать сообщение только открытым ключом, как это предотвращает расшифровку сообщения кем-либо еще, и, если это не точка цифровой подписи (шифрования), почему мы вообще не потрудимся зашифровать хеш сообщения. Не мог ли Боб просто запустить хеш полученного сообщения и сравнить его с тем, что Алиса отправила ему как хеш?

Ответы [ 4 ]

0 голосов
/ 07 ноября 2018

Дополнительно к другим ответам:
Вы можете подумать: «Если подпись - это просто вложение, я не могу просто удалить ее?» Да, ты можешь. Но он больше не подписан, поэтому в большинстве случаев это уже не действительный документ, а обычный файл. Подпись предназначена только для подтверждения того, что эта точная версия этого файла / документа была подписана / создана этим пользователем. Так что каждый должен иметь возможность убедиться в этом.

0 голосов
/ 04 ноября 2018

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

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


Алиса пишет сообщение, затем сообщение хэшируется и шифруется с использованием pk. Зашифрованное сообщение отправляется, и Боб расшифровывает его, используя только открытый ключ из Алисы.

Я думаю, вы здесь запутались.

  • Если это сообщение отправлено Бобу Алисой, то Алиса использует открытый ключ Боба. Боб может расшифровать это сообщение, используя свой закрытый ключ.

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

Я понимаю все, кроме одного шага: если Боб может расшифровать сообщение только открытым ключом, как это предотвращает расшифровку сообщения кем-либо еще, и, если это не точка цифровой подписи

  • Боб проверяет подпись, используя открытый ключ Алисы. Каждый может проверить. Подписи не содержат сообщения, они содержат хэш сообщения.
0 голосов
/ 04 ноября 2018

Если хэши совпадают, получатель может сказать, что сообщение действительно пришло от нас (или, по крайней мере, от кого-то с закрытым ключом)

Это не правильно. , Соответствующий хэш только подтверждает, что сообщение не изменено, но без подписи B не имеет средств для проверки того, что все сообщение исходит от A

У вас может быть активный злоумышленник Ева, который может создать новое фальшивое сообщение, сгенерировать хеш, зашифровать Боба. Боб не может быть уверен, кто отправил сообщение.

шифрование хеша сообщения

Не совсем, сообщение подписано, не зашифровано.

  • A использует свой закрытый ключ, чтобы применить операцию дешифрования к хешу сообщения и отправить его в качестве подписи
  • B использует открытый ключ A, чтобы применить операцию шифрования к подписи, и результат должен иметь хэш. Теперь B может быть уверен, что подпись исходит от A

    Подписание математически аналогично операции дешифрования, но при реальном использовании существуют различия , главным образом в заполнении

0 голосов
/ 04 ноября 2018

Шифрование и цифровые подписи служат двум совершенно различным целям. Вы их запутали.

Мы хешируем сообщение, шифруем хеш с помощью нашего закрытого ключа, затем отправляем сообщение незашифрованный текст и зашифрованный хэш нашему получателю.

Наш получатель использует наш открытый ключ для расшифровки хэша, сам хэширует текстовое сообщение и сравнивает два хэша.

Если хэши совпадают, получатель может сказать, что сообщение действительно пришло от нас (или, по крайней мере, от кого-то с закрытым ключом).

...