Como descriptografar um email criptografado S / MIME usando o openssl smime?

3

Por alguma razão, parece que não consigo encontrar uma resposta para esta questão básica. Recebi um email S / MIME criptografado e desejo descriptografá-lo usando openssl smime . No entanto, presumo que não posso fornecer a chave no formato correto. Foi o que eu fiz:

  • Salva a mensagem de e-mail (formato de texto não processado) como smime-ok.txt
  • Exportou minha chave do keychain do OS X como myself.p12
  • Exportou meu certificado público do keychain do OS X como myself.cer

Então eu tentei

openssl smime -decrypt -in smime-ok.txt -recip myself.p12

Mas eu recebo

unable to load certificate
37740:error:0906D06C:PEM routines:PEM_read_bio:no start line:/BuildRoot/Library/Caches/com.apple.xbs/Sources/OpenSSL098/OpenSSL098-64.50.7/src/crypto/pem/pem_lib.c:648:Expecting: TRUSTED CERTIFICATE

Eu também tentei -inkey myself.p12 -recip myself.cer e algumas outras variantes, mas isso não fez diferença. Eu acho que meu arquivo de chaves não é lido ou não lido corretamente, porque eu não sou solicitado para uma senha.

Eu suspeito que eu possa basicamente entender mal como usar openssl smime .

    
por not2savvy 08.01.2018 / 16:51

1 resposta

1

Na verdade, é o caso em que openssl smime espera o formato PEM na entrada -recip , mas o arquivo p12 está no formato PKCS12. Isto é como converter o arquivo p12 em um arquivo pem :

openssl pkcs12 -in myself.p12 -out myself.pem

Depois disso, o seguinte descriptografa o email como esperado:

openssl smime -decrypt -in smime-ok.txt -recip myself.pem
    
por 08.01.2018 / 17:08