S/MIME 与 PKCS#12 操作详解
1. S/MIME 签名与验证
1.1 程序调用规则
程序调用时,第一个参数为 "sign" 或 "verify" 。若使用签名模式,第二个参数应为私钥,第三个参数为对应的证书,其余参数可作为链证书添加到消息中。在验证模式下,第三个参数应为证书,其余为用于检查签名的额外证书。
1.2 操作流程
使用 create_store 函数抽象表示证书存储的设置过程。根据模式读取适当数量的参数,并将其余参数添加到证书栈中。最后,要么对消息进行签名并发出 S/MIME 消息,要么读取 S/MIME 消息并发出原始的、经过验证的消息。
2. S/MIME 加密与解密
2.1 基本原理
加密需要对方的公钥,解密需要自己的私钥。S/MIME 编码中读取和写入 PKCS#7 对象的函数保持不变,但新增了 PKCS7_encrypt 和 PKCS7_decrypt 函数。
2.2 加密函数 PKCS7_encrypt
PKCS7 *PKCS7_encrypt(STACK_OF(X509) *certs, BIO *in, const EVP_CIPHER *cipher, int flags);
- 第一个参数是收件人的公钥集合,每个公钥将分别用
超级会员免费看
订阅专栏 解锁全文
81

被折叠的 条评论
为什么被折叠?



