DKIM (DomainKeys Identified Mail)

E-post och säkerhet
En metod för e-postautentisering som lägger till en digital signatur i utgående e-post, så att mottagare kan kontrollera att meddelandet inte har ändrats.
← Tillbaka till Ordlistan

Vad är DKIM?

DKIM (DomainKeys Identified Mail) är en e-postautentiseringsmetod som tillåter skickande server att digitalt signera utgående meddelanden. Den mottagande servern kan sedan verifiera denna signatur med hjälp av en offentlig nyckel publicerad i DNS, vilket bekräftar att e-posten inte modifierades under överföringen och faktiskt härrör från den påstådda domänen.

Hur DKIM fungerar

1. Nyckelgenerering: Domänägaren genererar ett offentligt/privat nyckelpar

2. DNS-publikation: Offentlig nyckel publiceras som en TXT-post

3. Meddelandesignering: Utgående e-post signeras med den privata nyckeln

4. Signaturverifiering: Mottagande server hämtar offentlig nyckel och verifierar signatur

Signeringsprocessen

När ett e-postmeddelande skickas:

1. E-postserver beräknar ett hash av meddelandehuvuden och brödtext

2. Hash krypteras med den privata nyckeln (skapar signaturen)

3. Signatur läggs till som ett DKIM-Signature-huvud

4. E-post överförs

Verifieringsprocessen

När ett e-postmeddelande tas emot:

1. Server extraherar DKIM-Signature-huvudet

2. Hittar väljare och domän (s=väljare; d=domain.com)

3. Frågor DNS för väljare._domainkey.domain.com TXT-post

4. Använder offentlig nyckel för att dekryptera signaturen

5. Beräknar sitt eget hash av meddelandet

6. Jämför: match = pass, mismatch = fail

DKIM-postformat

DKIM-poster är TXT-poster på en specifik underdomän:

väljare._domainkey.example.com.    IN    TXT    "v=DKIM1; k=rsa; p=MIGfMA0..."

Postkomponenter

TagBeskrivningExempel
vVersionv=DKIM1
kNyckeltypk=rsa
pOffentlig nyckel (base64)p=MIGfMA0GCSqG...
tFlaggor (valfritt)t=y (testningsläge)
hHashalgoritmerh=sha256

Väljare

Väljare tillåter flera DKIM-nycklar per domän:

google._domainkey.example.com       # Google Workspace

s1._domainkey.example.com # Sendgrid

mailchimp._domainkey.example.com # Mailchimp

Varje e-posttjänst tillhandahåller sin egen väljare och nyckel.

DKIM-signaturhuvud

En DKIM-signatur ser ut som:

DKIM-Signature: v=1; a=rsa-sha256; d=example.com; s=google;

c=relaxed/relaxed; q=dns/txt;

h=from:to:subject:date:message-id;

bh=2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=;

b=AuUoFEfDxTDkHlLXSZEpZj79...

Viktig fält:

Ställa in DKIM

För Google Workspace

1. Gå till Admin Console → Apps → Gmail → Authenticate email

2. Generera DKIM-nyckel (2048-bit rekommenderas)

3. Lägg till TXT-post tillhandahållen av Google

4. Aktivera DKIM-signering

För tredjepartstjänster

De flesta e-posttjänster (SendGrid, Mailchimp, etc.) tillhandahåller:

1. En CNAME-post att lägga till (för deras hanterad nyckel)

2. Eller en TXT-post med den offentliga nyckeln

Exempel (SendGrid):

s1._domainkey.example.com    CNAME    s1.domainkey.sendgrid.net

Verifiera DKIM

Skicka ett test-e-postmeddelande till en tjänst som visar huvuden (Gmail visar autentiseringsresultat). Använd kommandoraden:
dig google._domainkey.example.com TXT
Använd DomScan:
curl "https://domscan.net/v1/health?domain=example.com"

# Rapporterar DKIM status baserat på vanliga väljare

DKIM bästa praxis

Använd 2048-bitars nycklar

Äldre 1024-bitars nycklar är allt mer sårbara. De flesta leverantörer använder nu 2048-bit som standard.

Rotera nycklar regelbundet

Rotera DKIM-nycklar årligen eller efter säkerhetshändelser. Publicera ny nyckel med ny väljare innan du växlar.

Signera viktiga huvuden

Säkerställ att From, To, Subject, Date och Message-ID ingår i signaturer.

Ändra inte signerade meddelanden

E-postlistor eller vidarebefordringtjänster som ändrar innehål bryter DKIM. Använd ARC (Authenticated Received Chain) för vidarebefordrad e-post.

DKIM-begränsningar

DKIM ensamt förhindrar inte förfalskning – det bevisar bara att ett meddelande inte ändrades. En domän kan ha giltigt DKIM medan angripare skickar osignerad förfalskad e-post. DMARC löser detta genom att ange vad man ska göra med osignerade meddelanden.

Använd Denna Kunskap

Använd DomScans API för att kontrollera domäntillgänglighet, hälsa och mer.