如何使用 openssl 验证文件和 p7s 分离签名?
How to verify a file and a p7s detached signature with openssl?
是否可以验证带有 p7s 分离签名的文件?我正在尝试使用 Openssl 来做到这一点,但我收到了一条关于 openssl 和 unknown option -verify
的默认消息
这是我的命令:
openssl pkcs7 -inform DER -verify -noverify -in file.docx.p7s -out file.docx
是否可以使用 openssl 进行文件验证和 p7s 签名?
--编辑...
只是想让你知道。我得到了一个带有 pdf 文件的 p7s 文件。我想知道如何验证这一点。
终于对p7s文件有了一点了解。这对于保护 e-mail 消息很常见,但是,我可以使用包含 PKCS#7 分离签名和证书的 p7s 文件来确保文件的准确性。
因此,我将我的解释分成几部分,以便于解释我在这里所做的事情。有不对的地方还请指正!
首先,初始配置:
- 创建私钥和证书
openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365
二、创建p7s文件
- 运行 下面的命令使用私钥、证书对 pdf 文件进行签名,并生成一个 p7s 文件,其中包含文件的签名哈希和证书
openssl smime -sign -in test.pdf -inkey key.pem -outform DER -binary -signer cert.pem -out test.pdf.p7s
最后,验证 p7s 文件
- 现在,我必须从 p7s 文件中提取 pkcs7 签名
openssl pkcs7 -inform der -in test.pdf.p7s -out test.pdf.pkcs7
- 之后,我从 pkcs7 文件中提取了证书
openssl pkcs7 -print_certs -in test.pdf.pkcs7 -out test.pdf.pkcs7.cert
- 然后,一起验证pkcs7、证书和文件。只是为了验证该文件是否属于该证书
openssl smime -verify -binary -inform PEM -in test.pdf.pkcs7 -content test.pdf -certfile test.pdf.pkcs7.cert -nointern -noverify > /dev/null
是否可以验证带有 p7s 分离签名的文件?我正在尝试使用 Openssl 来做到这一点,但我收到了一条关于 openssl 和 unknown option -verify
这是我的命令:
openssl pkcs7 -inform DER -verify -noverify -in file.docx.p7s -out file.docx
是否可以使用 openssl 进行文件验证和 p7s 签名?
--编辑...
只是想让你知道。我得到了一个带有 pdf 文件的 p7s 文件。我想知道如何验证这一点。
终于对p7s文件有了一点了解。这对于保护 e-mail 消息很常见,但是,我可以使用包含 PKCS#7 分离签名和证书的 p7s 文件来确保文件的准确性。
因此,我将我的解释分成几部分,以便于解释我在这里所做的事情。有不对的地方还请指正!
首先,初始配置:
- 创建私钥和证书
openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365
二、创建p7s文件
- 运行 下面的命令使用私钥、证书对 pdf 文件进行签名,并生成一个 p7s 文件,其中包含文件的签名哈希和证书
openssl smime -sign -in test.pdf -inkey key.pem -outform DER -binary -signer cert.pem -out test.pdf.p7s
最后,验证 p7s 文件
- 现在,我必须从 p7s 文件中提取 pkcs7 签名
openssl pkcs7 -inform der -in test.pdf.p7s -out test.pdf.pkcs7
- 之后,我从 pkcs7 文件中提取了证书
openssl pkcs7 -print_certs -in test.pdf.pkcs7 -out test.pdf.pkcs7.cert
- 然后,一起验证pkcs7、证书和文件。只是为了验证该文件是否属于该证书
openssl smime -verify -binary -inform PEM -in test.pdf.pkcs7 -content test.pdf -certfile test.pdf.pkcs7.cert -nointern -noverify > /dev/null