我将在我的.net桌面应用程序中使用电子邮件服务(gmail或yahoo等)。 我将使用电子邮件服务发送错误报告,提交联系表单和采购申请(有用户许可)
我不会将我的登录信息存储在我的应用程序源中。登录信息(即用户名和密码)将以加密形式从Web上删除。然后我的软件会在刮擦后解密它。
没有人可以从源代码中获取登录信息。 (因为它不存在,它将从网上删除)
没有人可以从网上获取登录信息。 (因为它是隐藏的路径,也是我自己的加密形式)
但是我仍然害怕在桌面程序中使用电子邮件服务是安全的,因为像“Avast”这样的一些防病毒软件会监控SMPT端口,并在每个外发电子邮件中添加徽标和标题。所以我们的电子邮件无需登录信息即可阅读。如果Avast可以编辑我们的电子邮件,也可以获取我们的密码。
答案 0 :(得分:1)
但我仍然担心在桌面程序中使用电子邮件服务是否安全,因为某些防病毒软件如“Avast”会监控SMPT端口,并在每个外发电子邮件中添加徽标和字幕。
使用加密连接进行SMTP传输(例如SMTP和SSL)。这可以防止反病毒软件拦截和破译数据。
大多数现代电子邮件托管服务都允许使用SSL进行SMTP连接。
答案 1 :(得分:1)
没有人可以从网上获取登录信息。 (因为它是隐藏的路径,也是我自己的加密形式)
隐藏路径不是存储安全信息的好地方。这类似于将您的房屋钥匙存放在植物盆下。由于用户可以控制客户端计算机,因此他们也可能通过内存转储或其他方式检索它。
您应该在服务器上创建并托管Web服务,而不是直接从桌面应用程序发送邮件。桌面应用程序将向您的Web服务发出Web服务请求,Web服务将处理发送电子邮件。这样,您的电子邮件凭据和发件人/收件人地址将通过您的Web服务安全地控制,不受桌面应用程序,其用户和任何防病毒软件的控制。
您还应该使用certificate pinning通过HTTPS访问您的服务,以确保您的应用仅与受信任的Web服务进行通信,并确保用于您的Web服务的任何凭据都是安全的。您可以为每个安装设置一个私钥,以便使用您的Web服务对每个桌面应用进行身份验证。如果发生任何违规行为,您只需撤销该关键服务器端,而不是将整个电子邮件系统置于风险之中。
答案 2 :(得分:0)
在应用程序内设置PGP加密,它非常安全,信息可以签名,以便接收者可以检查发件人的真实性。