Как проверить подпись ECC с помощью команды OpenSSL?

У меня есть открытый ключ, 192-битный хэш и 384-битная подпись, все в виде шестнадцатеричных файлов .txt, а кривая — prime192v1.

Какие командные строки можно использовать для проверки сообщения с помощью OpenSSL?


person skvery    schedule 28.12.2013    source источник


Ответы (1)


Для справки, ключ EC можно создать с помощью следующей команды:

  • Создайте ключ ЕС:

    $ openssl ecparam -genkey -name prime192v1 > key.pem
    
  • Извлеките открытый ключ:

    $ openssl ec -in key.pem -pubout > pub.pem
    

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

  • Рассчитайте хэш (используйте хэш-функцию по вашему выбору):

    $ openssl dgst -sha256 -binary message.txt > hash.txt
    
  • Подпишите хэш закрытым ключом:

     $ openssl pkeyutl -sign -inkey key.pem -in hash.txt > sig.txt
    
  • Проверяем подпись открытым ключом:

     $ openssl pkeyutl -verify -in hash.txt -sigfile sig.txt -inkey key.pem
     Signature Verified Successfully
    
person f9c69e9781fa194211448473495534    schedule 10.09.2020