I forgot the -nodes
flag when making the pem
. This includes the private key.
openssl pkcs12 -in certfile.p12 -nodes -out certfile2.pem
This pem
can be used for signing.
У меня есть сертификат клиента в Chrome, который я использовал для входа в StartSSL. Я экспортировал его помощью pk12util
в certfile.p12
. Теперь я хочу использовать его для подписи с S / MIME.
Я преобразовал p12
файл в pem
.
Сначала я проверяю, что сертификат будет работать для этой цели:
$ openssl verify -purpose smimesign -verbose -CAfile ca-bundle.crt certfile.pem certfile.pem: OK
Теперь я пытаюсь подписать:
$ echo "lol" | openssl smime -sign -CAfile ca-bundle.crt -signer certfile.pem unable to load signing key file 3074062600:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:703:Expecting: ANY PRIVATE KEY
Если я использую оригинальный p12
файл, он тоже не работает, но с другим сообщением об ошибке:
$ openssl verify -purpose smimesign -verbose -CAfile ca-bundle.crt certfile.p12 unable to load certificate 3074066696:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:703:Expecting: TRUSTED CERTIFICATE
Что я должен сделать, чтобы я мог подписывать сообщения с бесплатными сертификатами StartSSL?
I forgot the -nodes
flag when making the pem
. This includes the private key.
openssl pkcs12 -in certfile.p12 -nodes -out certfile2.pem
This pem
can be used for signing.