Sicurezza e crittografia delle email

Crittografa/Decrittografa messaggi

Aspose.Email offre la funzionalità di crittografare e decrittografare messaggi email usando i certificati X509. Questo articolo mostra come un messaggio esistente o nuovo possa essere caricato e crittografato usando MailMessage. Il Encrypt() e Decrypt() i metodi restituiscono un MailMessage oggetto per gli effetti applicati e da considerare durante la crittografia/decrittografia dei messaggi. Crittografare e decrittografare i messaggi coinvolge i seguenti passaggi:

  1. Crea un nuovo messaggio o caricane uno esistente
  2. Carica un certificato di crittografia usando l’oggetto X509Certificate
  3. Cifra il messaggio usando il certificato
  4. Invia il messaggio o salvalo
  5. Decrittografa il messaggio secondo necessità

Il seguente frammento di codice mostra come crittografare e decrittografare i messaggi.

Verifica la crittografia del messaggio

Aspose.Email MailMessage classe consente di verificare se un messaggio è crittografato o meno. Il IsEncryptedproprietà di MailMessage ti consente di verificare ciò come mostrato nel seguente esempio di codice.

Verifica della firma delle email sicure

Il SecureEmailManager classe consente di verificare la firma di oggetti MailMessage sicuri.

Il SmimeResult classe memorizza i risultati del controllo.

I seguenti metodi della SecureEmailManager classe e un frammento di codice ti permetteranno di processare una firma:

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

Firmare le Email con DKIM

NOTA: La funzionalità è accessibile solo per le versioni della libreria che targettano .NET Framework. Le versioni che targettano .NET Core non hanno questa funzionalità.

Aspose.Email permette di firmare le email con DKIM (DomainKeys Identified Mail). Questo consente a un’organizzazione di prendersi la responsabilità di un messaggio in transito (Maggiori informazioni). DKIM aggiunge una firma digitale alle intestazioni del messaggio email che può essere validata dai destinatari. La chiave pubblica del mittente consente al destinatario di verificare che la firma corrisponda al contenuto del messaggio. Il DKIMSign metodo del MailMessage classe usata per impostare le informazioni crittografiche e di firma per firmare il messaggio. Il seguente frammento di codice mostra come firmare le email con 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);