暗号化され署名された smime メッセージを受け取ります。復号化は問題ありません。データは正しいようです。
openssl.exe smime -decrypt -in %1 -out %1_signed.txt -inkey myPrivate.pem
しかし、署名段階の検証でエラーが発生します。
openssl.exe smime -verify -CAfile senderCACert.pem -certfile senderCert.pem -in %1 -out %1_plain
Verification failure
7600:error:21071065:PKCS7 routines:PKCS7_signatureVerify:digest failure:./crypto/pkcs7/pk7_doit.c:9
48:
7600:error:21075069:PKCS7 routines:PKCS7_verify:signature failure:./crypto/pkcs7/pk7_smime.c:312:
送信者の両方の証明書 (CA 証明書とクライアント証明書) は問題ありません。
openssl は、改行文字など、ソース メッセージに存在しない特定の記号を復号化中に生成できると思います。または、非標準アルゴリズムを処理することもできます (少なくとも私が知る限り、openssl には非標準の秘密鍵のストレージ形式があります)。
openssl 0.9.8h を使用しています。そして相手側のsmimeメッセージは「webMethods EDI version 6.5」というソフトウェア(EDIメッセージを処理するAS2サーバー)で構成されています。
このエラーの理由は何ですか?
別の smime ツールを試すようにアドバイスしてもらえますか?