3

По какой-то причине я не могу найти ответ на этот основной вопрос. Я получил зашифрованное письмо S/MIME и хочу расшифровать его с помощью openssl smime . Однако я предполагаю, что не могу предоставить ключ в правильном формате. Вот что я сделал:

  • Сохранено сообщение электронной почты (текстовый формат) как smime-ok.txt
  • Экспортировал мой ключ из брелка OS X как myself.p12
  • Экспортировал мой открытый сертификат из цепочки для ключей OS X как себе myself.cer

Потом я попробовал

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

Но я получаю

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

Я также попытался -inkey myself.p12 -recip myself.cer и еще несколько вариантов, но это не имело значения. Я предполагаю, что мой ключевой файл не читается или не читается должным образом, потому что мне также не предлагается пароль.

Я подозреваю, что я могу в принципе неправильно понять, как использовать openssl smime .

1 ответ1

1

Фактически, случай, когда openssl smime ожидает формат PEM при -recip , но файл p12 имеет формат PKCS12. Это, как преобразовать файл p12 в файл pem

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

После этого следующее расшифровывает письмо, как и ожидалось:

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .