下面是如何用openssl smime签名的消息? 根据文档
openssl smime -sign -in in.txt -text -out mail.msg -signer mycert.pem \ -inkey mykey.pem -certfile mycerts.pem
但是,为什么有一个-signer密钥 – 不是一个足够用于消息签名的在密钥中传递的-inkey ? 是不是只是一个通常的非对称encryptionscheme,我的私钥用于消息签名,而我的证书(即与我的私钥相对应的签名公钥)是否用于我的对方encryption消息?
据我所知,这是第二方来validation你的签名 – 如果它没有这个证书。
这比这更复杂一点。
实际上,您可以使用随机密钥对消息进行签名,而不需要证书标识,但validation方会立即使其失效。
您需要具有正确标志的证书才能创build合法签名。 如果它是一个透明的签名(wrap),接收方将不需要你的证书来读取消息内容或者评估消息的完整性,但是它仍然需要它来build立真实性。