Wat is DKIM en hoe werkt het?
DKIM (DomainKeys Identified Mail) is een e-mailauthenticatiemethode waarmee de afzender elk uitgaand bericht cryptografisch kan ondertekenen. De ontvangende mailserver verifieert deze handtekening met een publieke sleutel die in de DNS van de afzender is gepubliceerd. Een geldige DKIM-handtekening bewijst twee dingen: het bericht komt daadwerkelijk van het opgegeven domein, en het bericht is onderweg niet gewijzigd.
In tegenstelling tot SPF, dat het verzendende IP-adres toetst aan een toegestane lijst, werkt DKIM door een digitale handtekening aan het bericht zelf te koppelen. Daardoor blijft DKIM-verificatie geldig bij het doorsturen van e-mail, waar SPF vaak faalt omdat het IP-adres van de doorsturende server niet in het oorspronkelijke SPF-record staat.
Het formaat van een DKIM DNS-record begrijpen
Een DKIM-record is een DNS TXT-record dat wordt gepubliceerd op een specifiek subdomein: selector._domainkey.yourdomain.com. De selector is een label dat u kiest — veelgebruikte waarden zijn mail, google, s1 of default. De recordwaarde begint met v=DKIM1; k=rsa; p= gevolgd door uw base64-gecodeerde publieke sleutel.
De privésleutel blijft geheim op uw mailserver of wordt beheerd door uw e-mailserviceprovider. De publieke sleutel is wat u in DNS publiceert. Ontvangende servers gebruiken de publieke sleutel om handtekeningen te verifiëren die met de privésleutel zijn gemaakt — het klassieke patroon van cryptografie met publieke sleutels.
Waar u uw publieke DKIM-sleutel vindt
Uw publieke DKIM-sleutel wordt gegenereerd door uw e-mailprovider wanneer u DKIM-ondertekening inschakelt. Hier vindt u deze bij de meest gebruikte providers:
- Google Workspace: Beheerconsole → Apps → Google Workspace → Gmail → Authenticate email. Genereer een nieuwe sleutel en kopieer de TXT-recordwaarde.
- Microsoft 365: Exchange-beheercentrum → Protection → DKIM. Schakel DKIM in voor uw domein en kopieer de CNAME-records (Microsoft gebruikt CNAME's, geen directe TXT-records).
- Mailchimp: Account → Domains → Verify a domain. Mailchimp levert de DKIM TXT-recordwaarde die u aan uw DNS toevoegt.
- SendGrid: Settings → Sender Authentication → Domain Authentication. SendGrid genereert het volledige DKIM TXT-record voor u.
- Zelf gehost (Postfix, Exim): gebruik opendkim-genkey om een sleutelpaar te genereren. Het bestand met de publieke sleutel bevat de TXT-recordwaarde.
Best practices voor DKIM
Gebruik waar mogelijk een sleutellengte van 2048 bits — 1024-bitsleutels worden als zwak beschouwd en kunnen door sommige mailsystemen worden gemarkeerd. Roteer uw DKIM-sleutels periodiek (minstens jaarlijks) om de blootstelling te beperken als een sleutel ooit wordt gecompromitteerd. Houd de oude sleutel na rotatie nog een paar dagen in DNS, zodat berichten onderweg nog geverifieerd kunnen worden.
DKIM alleen beschermt de zichtbare From-header niet. Om uw e-mailauthenticatie af te ronden, voegt u een DMARC-beleid toe dat DKIM-resultaten afstemt op het From-domein. Een schone e-maillijst telt ook — zelfs geauthenticeerde e-mail belandt in spam als deze herhaaldelijk bounced. Gebruik e-mailverificatie om ongeldige adressen te verwijderen, of verifieer grote lijsten met bulkverificatie van e-mail.