我想在发送之前对电子邮件进行加密和签名。我查看了Indy组件帮助/演示,看起来Indy不支持电子邮件加密。
Indy是否支持发送加密和签名的电子邮件?如果是这样,我该怎么做?
否则,是否还有其他Delphi组件/库?
答案 0 :(得分:1)
此时,Indy本身并不支持加密和签名电子邮件。
通过一些手动工作,使用PGP的第三方库等可以进行加密。
签名更加困难,因为Indy在发送电子邮件时会采用动态方式。签名涉及在发送之前对电子邮件字段和数据进行采样,内存中的内容不一定是通过网络传输的内容,这使得签名变得困难,但并非不可能。
但是,Indy可以本地加密到电子邮件服务器的套接字连接,但电子邮件本身仍然是纯文本,除非由接收者或中间网关加密。确实有第三方解决方案来发送安全电子邮件。例如:
Send Email with Digital Signature in Delphi - S/MIME
StreamSec
(可以在Indy之上使用S / MIME)