Безпека та шифрування електронної пошти

Шифрування/Розшифрування повідомлень

Aspose.Email надає можливість шифрувати та розшифровувати електронні листи за допомогою X509Certificates. У цій статті показано, як можна завантажити існуюче або нове повідомлення та зашифрувати його за допомогою MailMessage. The Encrypt() і Decrypt() методи повертають MailMessage об’єкт для застосованих ефектів і його потрібно враховувати під час шифрування/розшифрування повідомлень. Шифрування та розшифрування повідомлень включає наступні кроки:

  1. Створити нове повідомлення або завантажити існуюче
  2. Завантажити сертифікат шифрування за допомогою об’єкта X509Certificate
  3. Зашифрувати повідомлення за допомогою сертифіката
  4. Надіслати повідомлення або зберегти його
  5. Розшифрувати повідомлення за потребою

Наступний фрагмент коду показує, як шифрувати та дешифрувати повідомлення.

Перевірка шифрування повідомлення

Aspose.Email MailMessage клас дозволяє перевірити, чи зашифровано повідомлення чи ні. The IsEncryptedвластивість MailMessage дозволяє перевірити це, як показано у наступному прикладі коду.

Перевірка підпису безпечних електронних листів

The SecureEmailManager клас дозволяє перевіряти підпис безпечних об’єктів MailMessage.

The 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);