我需要签署二进制file.bin
并将其转换为输出file.p7b
格式。
如何完成任务? (Windows操作系统)我应该在openSSL上使用哪些命令? (或Certutil.exe)
答案 0 :(得分:1)
我对你的问题感到困惑,因为文件扩展名.p7b通常用于仅包含证书(不是签名)的PKCS#7结构,并且更常见的是使用包含签名的PKCS#7结构的.p7s扩展名。但不要紧,文件内容不是文件扩展名。
您没有指定存储签名证书和私钥的位置,因此我们假设您已将PEM编码的X.509签名证书存储在文件" signer.cer"和你的PEM编码存储在文件" signer.key"中的PKCS#1私钥。
您可以使用OpenSSL.exe命令行实用程序对文件进行签名" file.bin"并将存储在DER编码的PKCS#7结构中的签名输出到文件" file.p7b":
openssl.exe smime -sign -binary -in file.bin -signer signer.cer -inkey signer.key -outform DER -out file.p7b
您可以使用以下命令验证签名:
openssl.exe smime -verify -binary -inform DER -in file.p7b -content file.bin -noverify > nul
有关各个选项的详细信息,请参阅OpenSSL SMIME module manual。