Hash OpenSSL消息摘要创建
基本问题是我用“openssl smime”生成一个签名文档并能够验证它,但我的合作伙伴没有(使用不同的软件)。所以我试着深入研究,看看他和我的信息摘要是否相同。但是-我甚至无法找出我的文档中实际(并且正确)使用了什么消息摘要 我有一个名为“cleartext.txt”的文件,其中包含任意文本。那我会的Hash OpenSSL消息摘要创建,hash,openssl,sha256,smime,Hash,Openssl,Sha256,Smime,基本问题是我用“openssl smime”生成一个签名文档并能够验证它,但我的合作伙伴没有(使用不同的软件)。所以我试着深入研究,看看他和我的信息摘要是否相同。但是-我甚至无法找出我的文档中实际(并且正确)使用了什么消息摘要 我有一个名为“cleartext.txt”的文件,其中包含任意文本。那我会的 $ openssl smime -sign -md sha256 -nocerts -inkey as2.key -signer as2.crt -outform PEM < cleart
$ openssl smime -sign -md sha256 -nocerts -inkey as2.key -signer as2.crt -outform PEM < cleartext.txt > signature.txt
$ openssl sha256 cleartext.txt
$ openssl asn1parse -in signature.txt
最后一条语句向我显示了我的证书的详细信息(因此至少这里有一些东西在工作)以及
为什么我用其中一个命令得到“c64df2…”而用另一个命令得到“0e68d5…”?如果我甚至不能在明文上复制哈希值,我怎么能指望我的搭档验证我的签名呢?经过阅读和尝试后找到的解决方案:RFC2049在第4(2)章中要求将明文转换为规范格式,即使用CRLF作为行结尾 openssl smime-sign以静默方式对其输入文件进行此转换,但openssl sha256不会 只要我自己使用CRLF,结果就和预期的一样
SHA256(cleartext.txt)= c64df2df82cc1dab9f9b06d41fab458de976de7e149fe0854fe125a96ef151dd
251:d=8 hl=2 l= 9 prim: OBJECT :pkcs7-data
262:d=6 hl=2 l= 28 cons: SEQUENCE
264:d=7 hl=2 l= 9 prim: OBJECT :signingTime
275:d=7 hl=2 l= 15 cons: SET
277:d=8 hl=2 l= 13 prim: UTCTIME :200107145037Z
292:d=6 hl=2 l= 47 cons: SEQUENCE
294:d=7 hl=2 l= 9 prim: OBJECT :messageDigest
305:d=7 hl=2 l= 34 cons: SET
307:d=8 hl=2 l= 32 prim: OCTET STRING [HEX DUMP]:0E68D5CC9A859736EEE842355C1FD73F3FC9B274657A97F4CAF38AD3344ACBC8
341:d=6 hl=2 l= 121 cons: SEQUENCE
343:d=7 hl=2 l= 9 prim: OBJECT :S/MIME Capabilities
354:d=7 hl=2 l= 108 cons: SET
356:d=8 hl=2 l= 106 cons: SEQUENCE
358:d=9 hl=2 l= 11 cons: SEQUENCE
360:d=10 hl=2 l= 9 prim: OBJECT :aes-256-cbc
371:d=9 hl=2 l= 11 cons: SEQUENCE
373:d=10 hl=2 l= 9 prim: OBJECT :aes-192-cbc
384:d=9 hl=2 l= 11 cons: SEQUENCE
386:d=10 hl=2 l= 9 prim: OBJECT :aes-128-cbc
397:d=9 hl=2 l= 10 cons: SEQUENCE
399:d=10 hl=2 l= 8 prim: OBJECT :des-ede3-cbc
409:d=9 hl=2 l= 14 cons: SEQUENCE
411:d=10 hl=2 l= 8 prim: OBJECT :rc2-cbc
421:d=10 hl=2 l= 2 prim: INTEGER :80
425:d=9 hl=2 l= 13 cons: SEQUENCE
427:d=10 hl=2 l= 8 prim: OBJECT :rc2-cbc
437:d=10 hl=2 l= 1 prim: INTEGER :40
440:d=9 hl=2 l= 7 cons: SEQUENCE
442:d=10 hl=2 l= 5 prim: OBJECT :des-cbc
449:d=9 hl=2 l= 13 cons: SEQUENCE
451:d=10 hl=2 l= 8 prim: OBJECT :rc2-cbc
461:d=10 hl=2 l= 1 prim: INTEGER :28
464:d=5 hl=2 l= 13 cons: SEQUENCE
466:d=6 hl=2 l= 9 prim: OBJECT :rsaEncryption
477:d=6 hl=2 l= 0 prim: NULL
479:d=5 hl=4 l= 256 prim: OCTET STRING [HEX DUMP]:4CBEA622925F2CD899D2B5A0D26F831C0D63DE88FC5CC1E89F8F164E84526E49194AD537426378D6932DA066425A117B9FA96A70E2000F603449095AAF8E0B93D0D4EB26FC2B3D86726F94928882C37ACEF0537555DEB4AF3D63943A05A109D49B941C8131A9734C15BA7418F2D34E6B63B710E975EDE1EB9A71A40C251D6D72A5C802F3CDAE123E5E47413DC414DF8A2B0BB6E225145224C33E64245F6E4BD3EC3A60E0B0D6FAA8F9BE69BFA0B27E4A3326E819EF8A1C13738CA1A02D08F74D22C52ABA84D6FD26BE8EA6461251162CD751DC6DC2A30FB45211AC28B371F5FEDB57C3845DA04C4C0FFC40760C623C574471CECD4681E7755277B8BFD8F31730