我正在尝试在C#中创建x-pkcs7-signature s / mime消息。我一直在试验Mimekit,只能制作pkcs7消息。
有谁知道我需要做什么来创建x-pkcs消息或者给我一些例子?
此致
答案 0 :(得分:0)
使用S / MIME签名邮件有两种不同的方法:
application/[x-]pkcs7-mime; smime-type=signed-data
application/[x-]pkcs7-signature
要签署第一条路,请执行以下操作:
var signer = new MailboxAddress ("", "signer@example.com");
var signed = ApplicationPkcs7Mime.Sign (signer, DigestAlgorithm.Sha256, entity);
另一种方式是这样做的:
using (var ctx = new WindowsSecureMimeContext ()) {
var signer = new MailboxAddress ("", "signer@example.com");
var signed = MultipartSigned.Sign (ctx, signer, DigestAlgorithm.Sha256, entity);
}
在这两种情况下,您还可以使用MimeKit.Cryptography.CmsSigner
代替MailboxAddress
。如果您知道证书的指纹,也可以使用SecureMailboxAddress
。