使用c#.net签署带证书的电子邮件

时间:2014-03-27 13:03:11

标签: c# .net email certificate

我正在尝试使用"来自证书"发送电子邮件。我正在使用Framework 4.0,并在C#X509Certificates类中。

SmtpClient sc = new SmtpClient(mSMTPServer, mSMTPPort);
sc.EnableSsl = true;
sc.ClientCertificates.Add(new X509Certificate(certificatePath, certPassword)); 
sc.Send(mail);

我面临的问题是证书未附加或使用电子邮件签名"来自"部分。任何人都可以帮助我,我是如何使用C#.NET和Framework 4.0从电子邮件中签名的?

2 个答案:

答案 0 :(得分:0)

我建议您查看MimeKit,以便对您的电子邮件进行数字签名。

然后,一旦您收到签名的电子邮件,就可以使用MailKit的SmtpClient类发送它,该类与System.Net.Mail.SmtpClient非常相似。

System.Net.Mail.SmtpClient.ClientCertificates不用于签名消息,它们仅用于通过SSL对服务器进行身份验证。

答案 1 :(得分:0)

更新:请看这个链接:

http://www.codeproject.com/Articles/41727/An-S-MIME-Library-for-sending-and-Signed-Encrypted

仅用于签名,将参数传递给加密为空。