После того как я отправил подписанное письмо S/MIME в страховую компанию, их обменный сервер забрал мой сертификат S/MIME, и их ответ был зашифрован S/MIME. Раньше они использовали мой открытый ключ PGP для шифрования отправленных мне сообщений, которые я смог расшифровать. Они никогда не подписывали свои собственные сообщения.
Несмотря на то, что сертификат и закрытый ключ S/MIME установлены в Thunderbird и Apple Mail, ни один из них не может расшифровать сообщение. (Thunderbird не может расшифровать сообщение.Отправитель использовал один из ваших сертификатов для шифрования этого сообщения. Несмотря на это, Thunderbird не смог найти сертификат и соответствующий закрытый ключ.)
Сообщения, которые я получаю от других организаций, использующих мой сертификат S/MIME для шифрования, могут быть расшифрованы с помощью Thunderbird и Apple Mail, в том числе самостоятельно отправленные тестовые сообщения и сообщения из swiftmail/PHP.
Закрытый ключ находится не на смарт-карте, а хранится в программном модуле безопасности Thunderbird и брелке Apple.
Вот некоторые из заголовков писем незашифрованной электронной почты, которую я получил от страховой компании:
Content-Transfer-Encoding: BASE64
Content-Disposition: attachment; filename=smime.p7m
Content-Type: application/pkcs7-mime; name=smime.p7m;
smime-type="enveloped-data"
...
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-ms-exchange-transport-fromentityheader: Hosted
...
MIME-Version: 1.0
Расшифровка вручную, как предложено в разделе Как дешифровать испорченное сообщение S/MIME, отправленное Outlook? также не удается:
$ openssl smime -decrypt -in msg.eml -inkey privatekey.pem -out decrypted.txt
Error decrypting PKCS#7 structure
140735747326920:error:06065064:digital envelope routines:EVP_DecryptFinal_ex:bad decrypt:/BuildRoot/Library/Caches/com.apple.xbs/Sources/libressl/libressl-22.50.2/libressl/crypto/evp/evp_enc.c:529:
Как найти, что не так, на чьей стороне?
Редактировать:
$ openssl smime -pk7out -in msg.eml | openssl asn1parse
0:d=0 hl=4 l=27205 cons: SEQUENCE
4:d=1 hl=2 l= 9 prim: OBJECT :pkcs7-envelopedData
15:d=1 hl=4 l=27190 cons: cont [ 0 ]
19:d=2 hl=4 l=27186 cons: SEQUENCE
23:d=3 hl=2 l= 1 prim: INTEGER :00
26:d=3 hl=4 l= 457 cons: SET
30:d=4 hl=4 l= 453 cons: SEQUENCE
34:d=5 hl=2 l= 1 prim: INTEGER :00
37:d=5 hl=3 l= 172 cons: SEQUENCE
40:d=6 hl=3 l= 151 cons: SEQUENCE
43:d=7 hl=2 l= 11 cons: SET
45:d=8 hl=2 l= 9 cons: SEQUENCE
47:d=9 hl=2 l= 3 prim: OBJECT :countryName
52:d=9 hl=2 l= 2 prim: PRINTABLESTRING :GB
56:d=7 hl=2 l= 27 cons: SET
58:d=8 hl=2 l= 25 cons: SEQUENCE
60:d=9 hl=2 l= 3 prim: OBJECT :stateOrProvinceName
65:d=9 hl=2 l= 18 prim: PRINTABLESTRING :Greater Manchester
85:d=7 hl=2 l= 16 cons: SET
87:d=8 hl=2 l= 14 cons: SEQUENCE
89:d=9 hl=2 l= 3 prim: OBJECT :localityName
94:d=9 hl=2 l= 7 prim: PRINTABLESTRING :Salford
103:d=7 hl=2 l= 26 cons: SET
105:d=8 hl=2 l= 24 cons: SEQUENCE
107:d=9 hl=2 l= 3 prim: OBJECT :organizationName
112:d=9 hl=2 l= 17 prim: PRINTABLESTRING :COMODO CA Limited
131:d=7 hl=2 l= 61 cons: SET
133:d=8 hl=2 l= 59 cons: SEQUENCE
135:d=9 hl=2 l= 3 prim: OBJECT :commonName
140:d=9 hl=2 l= 52 prim: PRINTABLESTRING :COMODO RSA Client Authentication and Secure Email CA
194:d=6 hl=2 l= 16 prim: INTEGER :7F9285XXXX...
212:d=5 hl=2 l= 13 cons: SEQUENCE
214:d=6 hl=2 l= 9 prim: OBJECT :rsaesOaep
225:d=6 hl=2 l= 0 cons: SEQUENCE
227:d=5 hl=4 l= 256 prim: OCTET STRING [HEX DUMP]:0068E5XXXX...
487:d=3 hl=4 l=26718 cons: SEQUENCE
491:d=4 hl=2 l= 9 prim: OBJECT :pkcs7-data
502:d=4 hl=2 l= 29 cons: SEQUENCE
504:d=5 hl=2 l= 9 prim: OBJECT :aes-256-cbc
515:d=5 hl=2 l= 16 prim: OCTET STRING [HEX DUMP]:CF1A61XXXX...
533:d=4 hl=4 l=26672 prim: cont [ 0 ]