【问题标题】:Digitally Signing Email数字签名电子邮件
【发布时间】:2011-01-05 21:52:13
【问题描述】:

我有一个发送客户报表的应用程序。我有几个客户要求对电子邮件(带有 pdf 附件)进行数字签名。我目前正在使用 System.Net.Mail 发送电子邮件。我似乎找不到明确的答案,这可以在 .NET 中完成还是我应该研究第 3 方组件?

【问题讨论】:

    标签: .net email digital-signature system.net.mail


    【解决方案1】:

    查看Mail.dll email component

    IMail email = Mail.Text("This is message body")
      .Subject("Test")
      .From(new MailBox("mail@in_the_certificate.com", "Alice"))
      .To(new MailBox("bob@mail.com", "Bob"))
      .AddAttachment(@"c:\invoice.pdf")
      .SignWith(new X509Certificate2("TestCertificate.pfx", ""))
      .Create();
    
    using (Smtp smtp = new Smtp())
    {
        smtp.Connect("smtp.server.com");
        smtp.Ehlo();
        smtp.Login("user", "password");
        smtp.SendMessage(email);
        smtp.Close();
    } 
    

    您也可以使用 Mail.dll 的模板引擎来创建邮件正文。

    免责声明:请注意,这是我帮助创建的商业产品(尽管价格合理)。

    【讨论】:

      【解决方案2】:

      Here's 一些用于签署消息的代码。不过,使用更强大的第三方组件是有意义的。我们的 SecureBlackbox 产品包括MIMEBlackbox 包,它提供全方位的 MIME 和 S/MIME 操作。

      【讨论】:

        【解决方案3】:

        在 CodeProject 上查看 Peter Everett 的 project。我以前用它来发送加密电子邮件,效果很好。

        【讨论】:

          猜你喜欢
          • 2017-07-11
          • 2018-07-24
          • 1970-01-01
          • 1970-01-01
          • 2021-08-21
          • 2011-11-13
          • 1970-01-01
          • 2013-04-05
          • 1970-01-01
          相关资源
          最近更新 更多