Cos'è il DKIM (DomainKeys Identified Mail)?
Il DKIM, abbreviazione di DomainKeys Identified Mail, è un metodo di autenticazione email che allega una firma crittografica a ogni messaggio in uscita. La firma permette al server ricevente di confermare che l'email è stata davvero autorizzata dal dominio di invio e che il suo contenuto non è stato alterato lungo il percorso.
Definizione
DomainKeys Identified Mail è uno dei tre pilastri della moderna autenticazione email, e lavora insieme a SPF e DMARC. Mentre SPF risponde alla domanda se un messaggio provenga da un server autorizzato, il DKIM risponde a due domande leggermente diverse. Conferma che il messaggio è stato approvato da qualcuno che controlla il dominio di invio, e conferma che nessuno ha manomesso il messaggio dopo l'invio.
Il DKIM ottiene questo risultato con la crittografia a chiave pubblica. Il dominio di invio possiede una chiave privata che viene tenuta segreta sulla sua infrastruttura di posta, e pubblica una chiave pubblica corrispondente nel Domain Name System a disposizione di chiunque. Quando il dominio invia un messaggio, il suo server di posta usa la chiave privata per generare una firma digitale su parti selezionate dell'email e aggiunge quella firma al messaggio come intestazione nascosta. Quando il messaggio arriva, il server ricevente recupera la chiave pubblica dal DNS e la usa per verificare la firma. Poiché solo il detentore della chiave privata avrebbe potuto produrre una firma che la chiave pubblica convalida, un controllo DKIM superato è una prova solida che il messaggio è autentico e integro.
Come funziona
Il DKIM si basa su una coppia di chiavi crittografiche. Una chiave privata viene generata per il dominio e conservata in modo sicuro sul sistema di posta di invio, e la corrispondente chiave pubblica viene pubblicata come record DNS TXT. Quel record si trova in una posizione speciale costruita a partire da un'etichetta chiamata selector, nella forma selector._domainkey.yourdomain.com. Il selector esiste affinché un dominio possa pubblicare più chiavi contemporaneamente, il che è utile per assegnare una chiave separata a ogni servizio di invio e per ruotare le chiavi in sicurezza nel tempo.
Quando il dominio invia un messaggio, il suo server di posta seleziona quali parti dell'email proteggere. Questo include sempre il corpo del messaggio e un insieme scelto di campi di intestazione, comunemente From, To, Subject, Date e altri. Il server calcola un hash del corpo e un hash sull'insieme di intestazioni scelte, poi usa la chiave privata per firmare quei dati, producendo la firma. Tutto questo viene registrato in una nuova intestazione chiamata DKIM-Signature, che viene aggiunta al messaggio. Quell'intestazione riporta il dominio firmatario in un tag d=, il selector in un tag s=, l'elenco delle intestazioni firmate in un tag h=, l'hash del corpo in un tag bh= e la firma stessa in un tag b=.
Sul lato ricevente, il server legge l'intestazione DKIM-Signature, prende il dominio e il selector e cerca nel DNS il record della chiave pubblica corrispondente. Ricalcola poi l'hash del corpo e l'hash delle intestazioni usando esattamente le stesse intestazioni elencate in h=, e usa la chiave pubblica per verificare che la firma in b= corrisponda a quei dati ricalcolati. Se è stata usata la chiave privata corretta e nessun contenuto firmato è stato modificato durante il transito, la firma viene convalidata e il DKIM passa. Se una qualsiasi intestazione firmata o il corpo è stato modificato, gli hash non corrispondono più e il controllo fallisce. Una conseguenza pratica è che la firma copre solo le intestazioni esplicitamente elencate, e resta valida solo finché i sistemi di posta intermedi non alterano le porzioni firmate del messaggio.
Perché è importante per la deliverability delle email
Il DKIM è un segnale di fiducia forte e persistente per i provider di posta. Una firma DKIM costantemente valida dice a un provider che dietro la posta c'è un dominio reale, disposto a risponderne, e questo aiuta quella posta a guadagnarsi un posto in inbox. Altrettanto importante, il DKIM ha una qualità che a SPF manca. Poiché la firma viaggia all'interno del messaggio stesso anziché dipendere dal server che si connette, il DKIM di solito sopravvive all'inoltro delle email, mentre SPF spesso si rompe quando un messaggio viene inoltrato. Questo rende il DKIM il più robusto dei due controlli lungo percorsi di consegna complessi.
Il DKIM è anche un elemento costitutivo del DMARC. Il DMARC passa quando passa SPF oppure DKIM e il risultato si allinea con il dominio From visibile, quindi un messaggio firmato correttamente con DKIM offre a un dominio un percorso affidabile verso l'allineamento DMARC. Dopo i requisiti per i mittenti del 2024 di Google e Yahoo, ci si aspetta che chi invia in massa si autentichi sia con SPF sia con DKIM, e la posta che arriva senza una firma DKIM valida ha molte più probabilità di essere filtrata o rifiutata. Una configurazione DKIM impostata correttamente è passata dall'essere una best practice all'essere un'aspettativa di base per chiunque invii email su larga scala.
Come la gestisce VeriMails
Il DKIM e la verifica email proteggono la deliverability da due direzioni diverse, e un programma email sano ha bisogno di entrambi. Il DKIM autentica i messaggi che invii, dimostrando ai server riceventi che la posta è autentica e non alterata. La verifica email ripulisce il pubblico a cui invii, assicurandosi che ogni indirizzo nella tua lista sia reale e raggiungibile. L'autenticazione senza una lista pulita produce comunque bounce, e una lista pulita senza autenticazione appare comunque poco affidabile, quindi i due lavorano in coppia.
VeriMails si concentra sul lato del destinatario di questa coppia. Ogni indirizzo che invii viene fatto passare attraverso la validazione della sintassi, un lookup MX e DNS, un handshake SMTP dal vivo, il rilevamento dei catch-all, degli indirizzi usa e getta e di quelli role-based, eliminando gli indirizzi non validi che altrimenti produrrebbero bounce e danneggerebbero quella reputazione che i tuoi record DKIM, SPF e DMARC esistono per difendere. Per supportare anche il lato dell'autenticazione, VeriMails offre un generatore DKIM gratuito che crea una coppia di chiavi e il record DNS che devi pubblicare. Puoi verificare una lista tramite la REST API o un caricamento CSV in blocco, con categorie di deliverability chiare per le decisioni di campagna. La verifica parte da $0.0019 per email, con 10.000 crediti a $19 e piani annuali da $12.50/month con fatturazione annuale, e ogni account inizia con 100 crediti gratuiti, senza bisogno di carta di credito, che non scadono mai.
Domande frequenti
Termini correlati
Prova VeriMails gratis
100 crediti gratuiti alla registrazione. Nessuna carta di credito richiesta. Metti in pratica la verifica delle email oggi stesso.
Inizia gratis