Безопасность и шифрование электронной почты

Шифрование/дешифрование сообщений

Aspose.Email предоставляет возможность шифровать и дешифровать электронные сообщения с использованием X509Certificates. Эта статья показывает, как существующее или новое сообщение может быть загружено и зашифровано с помощью MailMessage. Это Encrypt() и Decrypt() методы возвращают MailMessage объект для применяемых эффектов, которые необходимо учитывать при шифровании/дешифровании сообщений. Шифрование и дешифрование сообщений включает следующие шаги:

  1. Создать новое сообщение или загрузить существующее
  2. Загрузить сертификат шифрования, используя объект X509Certificate
  3. Зашифровать сообщение с использованием сертификата
  4. Отправить сообщение или сохранить его
  5. Дешифровать сообщение по необходимости

Следующий фрагмент кода показывает, как шифровать и дешифровать сообщения.

Проверка шифрования сообщения

Aspose.Email MailMessage класс позволяет проверить, зашифровано ли сообщение. The IsEncryptedсвойство MailMessage позволяет проверить это, как показано в следующем примере кода.

Проверка подписи защищённых писем

Этот SecureEmailManager класс позволяет проверить подпись защищённых объектов MailMessage.

Этот SmimeResult класс хранит результаты проверки.

Следующие методы класса SecureEmailManager класс и пример кода позволят вам обработать подпись:

var eml = MailMessage.Load(fileName);
var result = new SecureEmailManager().CheckSignature(eml);

var certFileName = "cert.pfx";
var cert = new X509Certificate2(certFileName, "pass");
var eml = MailMessage.Load(fileName);
var store = new X509Store();
store.Open(OpenFlags.ReadWrite);
store.Add(cert);
store.Close();

var result = new SecureEmailManager().CheckSignature(eml, cert, store);

Подписать письма с помощью DKIM

ПРИМЕЧАНИЕ: Функция доступна только в версиях библиотеки, ориентированных на .NET Framework. Версии, ориентированные на .NET Core, не имеют этой функции.

Aspose.Email позволяет подписывать электронные письма с помощью DKIM (DomainKeys Identified Mail). Это позволяет организации брать на себя ответственность за сообщение в пути (Дополнительная информация). DKIM добавляет цифровую подпись к заголовкам сообщения, которую могут проверять получатели. Публичный ключ отправителя позволяет получателю убедиться, что подпись соответствует содержимому сообщения. The DKIMSign метод MailMessage класс используется для задания криптографической и подписи информации при подписании сообщения. Следующий фрагмент кода показывает, как подписывать письма с помощью DKIM.

var eml = new MailMessage("sender@gmail.com", "receiver@gmail.com", "Some subject", "Some body text");

string privateKeyFile = "key2.pem";
RSACryptoServiceProvider rsa = PemReader.GetPrivateKey(privateKeyFile);
DKIMSignatureInfo signInfo = new DKIMSignatureInfo("test", "somedomain.com");

var signedEml = eml.DKIMSign(rsa, signInfo);