良いこの記事で説明されている、次の手順を試しました。
- 署名された電子メールを保存し、p7s部分を抽出して
Test.p7s
$ openssl asn1parse -in Test.p7s
私にしてください:$ dd if=Test.p7s of=Test.bin bs=1 count=677 skip=4557
$ openssl asn1parse -in Test.bin
結果:
0:d=0 hl=2 l= 87 prim: priv [ 5 ]
Error in encoding
140297479046808:error:0D07207B:asn1 encoding routines:ASN1_get_object:header too long:asn1_lib.c:157:
私がしたいのは、メッセージダイジェストが生成されるハッシュと一致することを確認することだけです。
$ openssl dgst -sha256 < mail.txt
例えば。
答え1
openssl smime -sign -in index.xml -out index.cms -inkey ./certs/Sign_Key.key -signer ./certs/Sign_Key.crt
openssl smime -verify -in index.cms -CAfile ./certs/Sign_Key.crt -out index.csm.xml
openssl dgst -binary-sha256 index.xml openssl base64 |