OpenSSL将内容类型为“应用程序/ EDI”的smime消息视为文本并更改换行符
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OpenSSL将内容类型为“应用程序/ EDI”的smime消息视为文本并更改换行符相关的知识,希望对你有一定的参考价值。
我收到内容类型为“Application / EDI”的smime消息。它是非标准的mime类型,内容应该被解释为二进制。但是,验证签名期间的OpenSSL会将其视为文本并将换行符从“ n”更改为“ r n”(根据内容类型“text”的规范需要)。因此摘要变得错误并且验证失败。
有没有办法让openssl不改变原始消息中的任何内容?参数'-binary'不适用于任何版本(我尝试过0.9.7,0.9.8,1.0.0)。
答案
好的,回答我自己的问题。
我将输入数据拆分为两个单独的文件,内容和签名删除不必要的元数据。之后我将mime类型的签名更改为application/pkcs7-mime
,并且使用此命令验证成功:
openssl.exe smime -verify -inform SMIME -CAfile caCert.pem -certfile cert.pem -in signature.txt -content content.txt
将-inform
更改为PEM的变体也可以,但签名必须没有Content-xxx
标题
以上是关于OpenSSL将内容类型为“应用程序/ EDI”的smime消息视为文本并更改换行符的主要内容,如果未能解决你的问题,请参考以下文章