Мне трудно проверить цифровую подпись, созданную с использованием закрытого ключа RSA. Когда я пытаюсь расшифровать подпись, я правильно вижу дайджест sha256, однако проверка подписи завершается неудачно. Я делаю что-то не так ниже:
Вот мой ввод и его дайджест sha256:
$ echo -n hello | sha256sum
2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824 -
Расшифровка с использованием открытого ключа показывает мне тот же дайджест:
$ openssl rsautl -inkey /tmp/pub.key -pubin -in /tmp/signature.bin | hexdump
0000000 f22c ba4d b05f 0ea3 e826 2a3b b9c5 9ee2
0000010 161b 5c1e a71f 5e42 0473 6233 8b93 2498
0000020
У меня такой же ввод в файле, ровно 5 символов.
$ cat /tmp/in.txt
hello$ wc -c /tmp/in.txt
5 /tmp/in.txt
Ошибка проверки цифровой подписи:
$ openssl dgst -sha256 -verify /tmp/pub.key \
-signature /tmp/signature.bin /tmp/in.txt
Verification Failure
Любые идеи приветствуются. Заранее спасибо.
Версия OpenSSL - 1.1.0g