DKIM uitgelegd: wat het is, hoe het werkt en hoe je het opzet
Complete DKIM-gids — check je DKIM-record, begrijp selectors, genereer keys en fix authenticatiefouten. Inclusief gratis DKIM checker tool.
Elke dag gaan miljarden e-mails over het internet. Zonder een manier om te verifiëren dat een bericht echt komt van het domein dat het beweert, kunnen aanvallers het "From"-adres vervalsen en zich voordoen als vertrouwde merken. DKIM (DomainKeys Identified Mail) lost dit probleem op door aan elke uitgaande e-mail een cryptografische handtekening te koppelen, zodat ontvangende mailservers kunnen verifiëren dat het bericht niet is gemanipuleerd en daadwerkelijk afkomstig is van jouw domein.
In deze gids leggen we precies uit hoe DKIM werkt, doorlopen we het setup-proces stap voor stap en bespreken we de meest voorkomende fouten waar mensen over struikelen.
Wat is DKIM?#
DKIM is een e-mailauthenticatiestandaard gedefinieerd in RFC 6376. Hiermee kan een verzendend domein verantwoordelijkheid nemen voor een bericht door het te ondertekenen met een digitale handtekening. De ontvangende server kan vervolgens de publieke sleutel van de verzender opzoeken in DNS en de handtekening verifiëren.
Kort samengevat beantwoordt DKIM één vraag: Is deze e-mail echt verzonden door het domein in de handtekening, en is het bericht onderweg gewijzigd?
DKIM voorkomt op zichzelf geen spam of phishing. In plaats daarvan biedt het een bouwsteen die andere systemen, met name DMARC, gebruiken om beleidsbeslissingen te nemen over niet-geauthenticeerde mail.
Hoe DKIM werkt: het ondertekeningsproces#
DKIM leunt op public-key cryptografie. Dit gebeurt er als een e-mail wordt verzonden vanaf een DKIM-enabled domein:
1. Sleutelpaar genereren#
De domeineigenaar genereert een RSA- (of Ed25519-)sleutelpaar:
- Private key: Veilig opgeslagen op de mailserver. Deze sleutel ondertekent uitgaande berichten.
- Public key: Gepubliceerd als TXT-record in DNS. Ontvangende servers gebruiken deze om handtekeningen te verifiëren.
2. Bericht ondertekenen#
Wanneer een e-mail de verzendende mailserver verlaat, voert de DKIM-module het volgende uit:
- Canonicaliseert de headers en body: DKIM normaliseert whitespace en line endings zodat kleine opmaakwijzigingen onderweg de handtekening niet breken. De twee canonicalisatie-modes zijn "simple" (strikt) en "relaxed" (tolerant voor whitespace-wijzigingen).
- Hasht de body: Een SHA-256 hash van de gecanonicaliseerde body wordt berekend. Deze hash komt in de
bh=(body hash) tag van de signature header. - Ondertekent geselecteerde headers: De module selecteert specifieke headers om in de handtekening op te nemen (From, To, Subject, Date en andere). Hij berekent een hash over deze gecanonicaliseerde headers plus de DKIM-Signature header zelf (zonder de
b=waarde), en versleutelt die hash met de private key. - Voegt de DKIM-Signature header in: De resulterende handtekening, samen met metadata, wordt als
DKIM-Signatureheader aan de e-mail toegevoegd.
3. Handtekening verifiëren#
Wanneer de e-mail bij de ontvangende server aankomt:
- De server haalt de
DKIM-Signatureheader eruit. - Hij leest de
d=(domein) ens=(selector) tags om te bepalen waar de public key te vinden is. - Hij vraagt DNS om een TXT-record op
{selector}._domainkey.{domain}. - Hij gebruikt de public key om de handtekening te ontsleutelen en vergelijkt die met zijn eigen hash van de headers en body.
- Komen de hashes overeen, dan slaagt de DKIM-check. Zo niet, dan faalt hij.
Anatomie van een DKIM-Signature header#
Hier is een voorbeeld van een DKIM-Signature header:
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=example.com; s=google;
h=from:to:subject:date:message-id;
bh=2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=;
b=AuUoFEfDxTDkHlLXSZEpZj79LICEps6eda7W3deTVFOk...
De belangrijkste tags zijn:
- v=1: DKIM-versie (altijd 1).
- a=rsa-sha256: Het ondertekeningsalgoritme. RSA met SHA-256 is het meest gangbaar.
- c=relaxed/relaxed: Canonicalisatiemethode voor headers/body. "relaxed/relaxed" is het meest vergevingsgezind en breed aanbevolen.
- d=example.com: Het ondertekenende domein. Dit is het domein dat verantwoordelijkheid neemt voor het bericht.
- s=google: De selector. Deze vertelt de verifier welke public key opgezocht moet worden.
- h=from:to:subject:date:message-id: De lijst headers die in de handtekening zijn opgenomen.
- bh=...: De Base64-gecodeerde hash van de gecanonicaliseerde body.
- b=...: De Base64-gecodeerde handtekening zelf.
DKIM-selectors begrijpen#
Een selector is een label dat verwijst naar een specifieke public key in je DNS. Het volledige DNS-lookuppad is:
{selector}._domainkey.{domain}
Bijvoorbeeld: als je domein example.com is en je selector google, dan vraagt de ontvangende server:
google._domainkey.example.com
Waarom bestaan selectors?#
Selectors maken het mogelijk dat een domein meerdere DKIM-keys tegelijk heeft. Dat is handig voor:
- Key rotation: Je kunt een nieuwe key publiceren onder een nieuwe selector, je mailserver bijwerken om daarmee te ondertekenen, en daarna het oude DNS-record verwijderen — allemaal zonder gat in de authenticatie.
- Meerdere maildiensten: Als je e-mail verstuurt via Google Workspace, SendGrid en Mailchimp, kan elke dienst zijn eigen selector en sleutelpaar hebben. Google gebruikt misschien
google, SendGrids1, en Mailchimpk1. - Testen: Je kunt een test-key onder een aparte selector deployen voordat je productieverkeer omschakelt.
Veelgebruikte selector-namen per provider#
Verschillende e-mailproviders gebruiken verschillende default selectors:
| Provider | Veelgebruikte selectors |
|---|---|
| Google Workspace | google |
| Microsoft 365 | selector1, selector2 |
| SendGrid | s1, s2, sendgrid |
| Mailchimp | k1, k2, k3 |
| Zoho | s1, s2, zoho |
| Amazon SES | amazonses |
| Postmark | postmark |
| Mailgun | mailgun |
Stap-voor-stap DKIM-setup gids#
Stap 1: Genereer je DKIM-sleutelpaar#
Als je een hosted e-maildienst gebruikt (Google Workspace, Microsoft 365, enz.), genereert de provider de keys meestal voor je. Je hoeft alleen de public key die zij aanleveren te publiceren.
Beheer je je eigen mailserver, genereer dan een 2048-bits RSA-sleutelpaar:
openssl genrsa -out dkim-private.pem 2048
openssl rsa -in dkim-private.pem -pubout -out dkim-public.pem
De private key blijft op je server. De public key gaat de DNS in.
Stap 2: Kies een selector#
Kies een beschrijvende selectornaam. Veelgebruikte keuzes zijn default, mail, dkim, of een datumgebaseerde naam zoals jan2026 om rotatie makkelijk te tracken. Vermijd selectors die interne infrastructuurdetails verraden.
Stap 3: Publiceer het DNS TXT-record#
Maak een TXT-record op {selector}._domainkey.yourdomain.com met je public key. De waarde van het record ziet er zo uit:
v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA...
De tags in het DNS-record zijn:
- v=DKIM1: Identificeert dit als een DKIM-key record. Let op: per RFC 6376 is de
v=tag aanbevolen maar niet verplicht. - k=rsa: Het keytype (RSA is de default en mag worden weggelaten).
- p=...: De Base64-gecodeerde public key. Is deze tag leeg (
p=), dan is de key ingetrokken.
Belangrijk: Veel DNS-providers hebben een tekenlimiet op TXT-records. Een 2048-bits key levert een lange string op. Ondersteunt je provider het, publiceer dan de volledige waarde. Zo niet, dan staan sommige providers toe de waarde op te splitsen in meerdere strings binnen één TXT-record.
Stap 4: Configureer je mailserver#
De configuratie hangt af van je setup:
- Google Workspace: Ga naar Admin Console, dan Apps, dan Google Workspace, dan Gmail, dan "Authenticate Email." Google levert de TXT-record waarde en selector aan. Je publiceert deze in DNS en klikt op "Start Authentication."
- Microsoft 365: Ga naar de Microsoft 365 Defender-portal, dan Policies, dan DKIM. Schakel DKIM-signing in voor je domein. Microsoft levert twee CNAME-records aan om te publiceren.
- Postfix met OpenDKIM: Installeer
opendkim, configureer de signing table, key table en trusted hosts. Verwijs naar je private key-bestand.
Stap 5: Verifieer je configuratie#
Wacht na het publiceren van het DNS-record op DNS-propagatie (meestal 5 tot 60 minuten, maar tot 48 uur afhankelijk van je TTL). Stuur dan een testmail en check de headers.
Je kunt je DKIM-setup ook direct verifiëren via Nova Uptime's gratis Email Health Checker. Hij scant automatisch meer dan 50 veelgebruikte selectors om je DKIM-configuratie te detecteren en levert een gedetailleerd rapport van je e-mailauthenticatiestatus.
Veelgemaakte DKIM-fouten#
1. Te korte key length#
Een 1024-bits RSA-key wordt als zwak beschouwd en kan door sommige ontvangers worden afgewezen. Gebruik altijd 2048-bits keys. Sommige providers ondersteunen nu 4096-bits keys, al kunnen de DNS-record-grootte-limieten dat lastig publiceerbaar maken.
2. Opmaakfouten in het DNS-record#
Extra whitespace, ontbrekende quotes of regeleinden in de TXT-record waarde zijn de meest voorkomende oorzaak van DKIM-failures. Verifieer altijd de exacte inhoud van het record na publicatie.
3. Vergeten te ondertekenen bij third-party diensten#
Verstuur je e-mail via een marketingplatform, transactionele e-maildienst of CRM, dan heeft elke dienst zijn eigen DKIM-configuratie nodig. Een e-mail verzonden via SendGrid wordt niet ondertekend met je Google Workspace-key. Je moet DKIM apart configureren voor elke verzendende dienst.
4. Keys niet roteren#
DKIM-keys moeten periodiek geroteerd worden (elke 6 tot 12 maanden is een redelijk ritme). Gebruik selectors om rotatie naadloos te maken: publiceer een nieuwe key onder een nieuwe selector, schakel je signing-configuratie om, verifieer dat het werkt en verwijder dan het DNS-record van de oude selector.
5. Te weinig headers ondertekenen#
Neem minimaal altijd de From header op in de handtekening. De meeste implementaties nemen ook To, Subject, Date en Message-ID mee. Meer headers ondertekenen biedt sterkere bescherming tegen tampering, maar verhoogt het risico dat de handtekening breekt door legitieme mailverwerking. De From header is verplicht volgens de DKIM-specificatie.
6. "simple" canonicalisatie gebruiken#
De "simple" canonicalisatiemode is heel strikt over whitespace en opmaak. Maakt een tussenliggende server (mailing list, forwarding service) ook maar minimale wijzigingen aan de headers of body, dan breekt de handtekening. Gebruik "relaxed/relaxed" tenzij je een specifieke reden hebt om dat niet te doen.
Hoe DKIM zich verhoudt tot SPF en DMARC#
DKIM is één onderdeel van een drielaags e-mailauthenticatiesysteem:
- SPF (Sender Policy Framework): Bepaalt welke IP-adressen e-mail mogen versturen voor jouw domein. Het checkt de envelope sender (MAIL FROM), niet de zichtbare "From" header.
- DKIM: Verifieert cryptografisch dat de berichtinhoud niet is gewijzigd en is geautoriseerd door het ondertekenende domein.
- DMARC (Domain-based Message Authentication, Reporting, and Conformance): Bindt SPF en DKIM samen. Het checkt of het domein in de zichtbare "From" header overeenkomt met het domein dat SPF of DKIM heeft gepasseerd, en bepaalt wat er gebeurt met berichten die falen (none, quarantine of reject).
Voor DMARC pass moet ofwel SPF ofwel DKIM passeren én alignen met het "From"-domein. Daardoor is DKIM extra belangrijk wanneer SPF alleen zou kunnen falen, bijvoorbeeld bij e-mailforwarding (forwarding breekt SPF omdat het verzendende IP verandert, maar DKIM-handtekeningen overleven forwarding intact).
Je DKIM-configuratie checken#
Handmatig DNS bevragen voor DKIM-records is omslachtig omdat je de exacte selectornaam moet kennen, en er is geen standaardmanier om selectors te ontdekken.
Nova Uptime's Email Health Checker lost dit op door automatisch meer dan 50 veelgebruikte selectors bij grote e-mailproviders te scannen. Hij checkt je MX-records, SPF, DKIM en DMARC-configuratie in één run en geeft je een score van 0 tot 100 met een lettercijfer.
De tool is volledig gratis, vereist geen aanmelding en levert actiegerichte aanbevelingen als er issues met je DKIM-configuratie worden gevonden.
Belangrijkste lessen#
- DKIM gebruikt public-key cryptografie om e-mails te ondertekenen, en bewijst zo dat ze van jouw domein kwamen en niet zijn gewijzigd.
- Het selectorsysteem maakt meerdere keys mogelijk voor key rotation en meerdere verzenddiensten.
- Gebruik altijd 2048-bits RSA-keys met "relaxed/relaxed" canonicalisatie.
- Configureer DKIM apart voor elke dienst die namens jou e-mail verstuurt.
- DKIM werkt samen met SPF en DMARC. Alle drie moeten geconfigureerd zijn voor complete e-mailauthenticatie.
- Gebruik Nova Uptime's Email Health Checker om je DKIM-setup te verifiëren en een compleet e-mailauthenticatierapport te krijgen.
DKIM goed neerzetten is een van de meest impactvolle dingen die je kunt doen voor je e-maildeliverability. Een correct ondertekend bericht vertelt ontvangende servers dat je een legitieme verzender bent die e-mailbeveiliging serieus neemt — en dat helpt enorm om de inbox te bereiken.
Veelgestelde vragen#
Hoe check ik mijn DKIM-record?#
Gebruik een gratis DKIM checker tool om je DKIM-record op te zoeken. Voer je domein in en de tool scant automatisch 50+ veelgebruikte selectors om je DKIM-configuratie te vinden. Je kunt ook handmatig checken met dig TXT selector._domainkey.yourdomain.com als je je selectornaam kent.
Wat is een DKIM-selector?#
Een DKIM-selector is een label dat aangeeft welk DKIM-sleutelpaar gebruikt wordt voor ondertekening. Hij verschijnt in de DKIM-Signature header van ondertekende e-mails als s=selector. Veelvoorkomende selectors zijn google, selector1, default, s1 en k1. Elke e-mailprovider gebruikt andere selectornamen, en daarom is automatische selector-detectie waardevol.
Welke tool kan ik gebruiken om het DKIM-record van mijn e-mail te checken?#
Nova Uptime's gratis DKIM Checker scant je domein automatisch op DKIM-records. Hij detecteert selectors, valideert de public key en checkt RFC 6376-compliance. Voor een volledige e-mailauthenticatie-audit inclusief SPF, DKIM, DMARC en blacklists gebruik je de Email Health Checker.
Is DKIM verplicht voor e-mailbezorging?#
Vanaf 2026 vereisen Gmail en Yahoo DKIM voor bulk senders. Zelfs voor verzenders met laag volume eindigen e-mails zonder DKIM vaker in spam. DKIM is ook vereist voor DMARC-alignment, wat steeds meer verplicht wordt voor zakelijke e-mail.
Wat gebeurt er als DKIM faalt?#
Als DKIM-verificatie faalt, checkt de ontvangende server je DMARC-policy. Met p=none wordt de e-mail normaal afgeleverd. Met p=quarantine gaat hij naar spam. Met p=reject wordt hij geblokkeerd. Zelfs zonder DMARC vergroot een gefaalde DKIM de kans op spamfiltering.
Verder lezen#
- DKIM Selector Lookup & Detectie — Hoe automatische DKIM-selector-discovery werkt
- DKIM-record opzetten & valideren — Stap-voor-stap DKIM-configuratie
- SPF, DKIM & DMARC complete gids — Hoe de drie protocollen samenwerken
- E-maildeliverability fundamentals — Waarom authenticatie ertoe doet voor inbox placement
- Gratis DKIM Checker — Valideer je DKIM-records direct
Monitor Your Website Before It Goes Down
Get uptime monitoring, SSL tracking, domain expiry alerts, and email health checks. Free plan — no credit card required.
Start Monitoring FreeGerelateerde artikelen
DKIM-setupgids: complete stap-voor-stap configuratie
Stel DKIM in binnen 20 minuten: vind je selector, genereer sleutels, plaats DNS-records. Gratis validator. Verplicht voor Gmail en Yahoo.
DKIM-selectordetectie uitgelegd — je DKIM-record vinden
Geen idee wat je DKIM-selector is? Gratis auto-detectie op 50+ providers. Check Google, Mailgun, SendGrid en Microsoft 365 in seconden.
SPF, DKIM en DMARC: de complete gids voor e-mailauthenticatie
Gids voor de drie pijlers van e-mailauthenticatie. Hoe SPF, DKIM en DMARC samenwerken om je domein en inboxplaatsing te beschermen.