Zum Hauptinhalt springen

Was ist ein DKIM-Eintrag? Der vollständige Leitfaden

Von CaptainDNS
Veröffentlicht am 18. Februar 2026

Schema der Funktionsweise eines DKIM-Eintrags im DNS
TL;DR
  • Ein DKIM-Eintrag ist ein DNS-TXT-Record, der den öffentlichen Schlüssel veröffentlicht, mit dem die kryptografische Signatur einer E-Mail überprüft werden kann
  • Der Sendeserver signiert jede Nachricht mit seinem privaten Schlüssel, der Empfangsserver überprüft die Signatur über DNS
  • Die wesentlichen Tags sind v=DKIM1 (Version), k=rsa oder k=ed25519 (Algorithmus) und p= (öffentlicher Schlüssel in Base64)
  • RSA 2048 Bit ist der aktuelle Standard, Ed25519 ist schneller, wird aber noch nicht überall unterstützt
  • DKIM allein schützt nicht vor Spoofing: du musst es mit DMARC kombinieren, um das Domain-Alignment zu überprüfen

Du konfigurierst die E-Mail-Authentifizierung deiner Domain und stößt auf DKIM. Du weißt, dass es wichtig ist, aber Begriffe wie "kryptografische Signatur", "Selektor" und "öffentlicher DNS-Schlüssel" bleiben unklar. Dieser Leitfaden klärt alles.

DKIM (DomainKeys Identified Mail) ist ein E-Mail-Authentifizierungsprotokoll, das durch RFC 6376 definiert ist. Es ermöglicht dem Empfangsserver zu überprüfen, ob der Inhalt einer Nachricht zwischen Versand und Empfang nicht verändert wurde und ob die im From:-Feld angezeigte Domain diesen Versand tatsächlich autorisiert hat.

Dieser Leitfaden behandelt die vollständige Funktionsweise: den Signaturzyklus, den Aufbau des DNS-Eintrags, die verfügbaren Tags, die Wahl zwischen RSA und Ed25519, die Verknüpfung mit DMARC und die Schlüsselrotation. Egal ob du Systemadministrator, Marketing-Verantwortlicher oder Entwickler bist, du erhältst alle nötigen Informationen, um DKIM korrekt zu konfigurieren und zu pflegen.

Was ist DKIM? Das Prinzip in 30 Sekunden

DKIM basiert auf asymmetrischer Kryptografie (öffentlicher/privater Schlüssel). Der Sendeserver besitzt einen privaten Schlüssel, mit dem er jede ausgehende E-Mail signiert. Der zugehörige öffentliche Schlüssel wird im DNS als TXT-Eintrag veröffentlicht und ist für jeden Empfangsserver zugänglich.

Wenn eine E-Mail eintrifft, führt der Empfangsserver folgende Schritte aus:

  1. Liest den DKIM-Signature-Header, um die Domain (d=) und den Selektor (s=) zu identifizieren
  2. Erstellt die DNS-Abfrage: <Selektor>._domainkey.<Domain>
  3. Ruft den öffentlichen Schlüssel aus dem TXT-Eintrag ab
  4. Überprüft, ob die Signatur mit dem Nachrichteninhalt übereinstimmt

Wenn die Signatur gültig ist, ist die Nachricht authentifiziert. Andernfalls schlägt die DKIM-Überprüfung fehl.

So funktioniert DKIM: der vollständige Zyklus

Schritt 1: Signatur durch den Sendeserver

Wenn ein Nutzer eine E-Mail von captaindns.com sendet, führt der Sendeserver drei Operationen aus:

  1. Wählt die zu signierenden Header aus: From, To, Subject, Date, Message-ID (definiert durch den Tag h=)
  2. Berechnet einen Hash des Nachrichtentexts (SHA-256-Algorithmus, gespeichert in bh=)
  3. Signiert den Hash mit dem privaten RSA- oder Ed25519-Schlüssel und fügt den DKIM-Signature-Header zur Nachricht hinzu

Hier ein Beispiel eines DKIM-Signature-Headers:

DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
  d=captaindns.com; s=google; t=1739800000;
  h=from:to:subject:date:message-id;
  bh=2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=;
  b=AuUoFEfDxTDkHlLXSZEpZj79LICEps6eda7W3deTVFOk...

Schritt 2: Überprüfung durch den Empfangsserver

Der Empfangsserver extrahiert d=captaindns.com und s=google aus dem Header und fragt das DNS ab:

dig TXT google._domainkey.captaindns.com +short

Ergebnis:

"v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOC..."

Anschließend verwendet er den öffentlichen Schlüssel (p=), um die Signatur (b=) zu überprüfen. Wenn der neu berechnete Hash übereinstimmt, ist die Überprüfung erfolgreich.

Schema des DKIM-Signatur- und Überprüfungszyklus

Aufbau eines DKIM-Eintrags

Der DKIM-Eintrag wird als DNS-TXT-Record unter der Adresse <Selektor>._domainkey.<Domain> veröffentlicht.

Vollständiges DNS-Format

google._domainkey.captaindns.com  IN  TXT  "v=DKIM1; k=rsa; t=s; p=MIIBIjANBgkq..."

Pflicht-Tags

TagFunktionWerteBeispiel
v=ProtokollversionDKIM1 (einziger gültiger Wert)v=DKIM1
p=Öffentlicher Schlüssel in Base64Base64-Zeichenkettep=MIIBIjANBgkq...

Der Tag p= ist das Herzstück des Eintrags. Wenn er leer ist (p=), bedeutet das, dass der Schlüssel widerrufen wurde. Der Empfangsserver behandelt dann jede Signatur mit diesem Selektor als ungültig.

Optionale Tags

TagFunktionMögliche WerteStandard
k=Schlüsselalgorithmusrsa, ed25519rsa
t=Flagsy (Test), s (Strikt)keiner
h=Akzeptierte Hash-Algorithmensha256, sha1alle
s=Diensttypemail, ** (alle)
n=Für Menschen lesbare AnmerkungenFreitextkeiner

Details zu den Flags t=:

  • t=y: Testmodus. Empfangsserver sollen ein DKIM-Fehlschlagen nicht bestrafen. Nützlich während der Ersteinführung.
  • t=s: Strikter Modus. Die Domain im From:-Header muss exakt mit der Domain d= der Signatur übereinstimmen (keine Subdomains).

Vollständiges Beispiel entschlüsselt

selector1._domainkey.captaindns.com  IN  TXT  "v=DKIM1; k=rsa; t=s; h=sha256; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA..."
ElementBedeutung
selector1._domainkey.captaindns.comDNS-Standort (Selektor selector1, Domain captaindns.com)
v=DKIM1DKIM-Protokoll Version 1
k=rsaRSA-Schlüssel
t=sStrikter Modus (keine Subdomains)
h=sha256Akzeptiert nur SHA-256
p=MIIBIj...Öffentlicher RSA-2048-Bit-Schlüssel in Base64

Aufbau eines DKIM-Eintrags mit allen Tags

RSA vs Ed25519: welchen Schlüssel wählen?

Die RFC 8463 (2018) hat die Unterstützung von Ed25519 als Alternative zu RSA für DKIM eingeführt.

KriteriumRSA 2048RSA 4096Ed25519
Größe des öffentlichen Schlüssels~392 Zeichen~736 Zeichen~44 Zeichen
Signaturgröße256 Bytes512 Bytes64 Bytes
ÜberprüfungsgeschwindigkeitSchnellMittelSehr schnell
SicherheitSolide (2030+)Sehr solideSehr solide
AnbieterunterstützungUniversalUniversalTeilweise (Google, Fastmail)
DNS-KompatibilitätOKKann 255 Bytes TXT überschreitenOK

Empfehlungen

  • RSA 2048: Standardwahl. Von allen Anbietern und Servern unterstützt. Für die aktuelle Sicherheit ausreichend.
  • RSA 4096: Für Organisationen mit hohen Sicherheitsanforderungen. Achtung bei den Größenbeschränkungen von TXT-Einträgen (kann mehrere 255-Byte-Zeichenketten erfordern).
  • Ed25519: Empfohlen als Doppelsignatur (Ed25519 + RSA 2048) für die Übergangsphase. Server, die Ed25519 nicht unterstützen, ignorieren die Signatur und verwenden die RSA-Signatur.

RSA 1024 Bit nicht mehr verwenden. Google, Microsoft und Yahoo betrachten 1024-Bit-Schlüssel seit 2024 als schwach.

DKIM und DMARC: die wesentliche Verbindung

DKIM authentifiziert den Inhalt einer Nachricht, überprüft aber nicht, ob die im From: angezeigte Domain legitim ist. Das ist die Aufgabe von DMARC.

DKIM-Alignment

DMARC überprüft, ob die Domain d= der DKIM-Signatur mit der Domain des From: übereinstimmt. Es gibt zwei Modi:

ModusVerhaltenBeispiel
Relaxed (Standard)Die Domain d= kann eine Subdomain des From: seind=mail.captaindns.com gültig für From: contact@captaindns.com
StrictDie Domain d= muss exakt mit dem From: übereinstimmend=captaindns.com erforderlich für From: contact@captaindns.com

Der DKIM-Alignment-Modus wird im DMARC-Eintrag über den Tag adkim konfiguriert:

_dmarc.captaindns.com  IN  TXT  "v=DMARC1; p=reject; adkim=s; rua=mailto:dmarc@captaindns.com"

Warum DKIM allein nicht ausreicht

Ohne DMARC kann ein Angreifer eine E-Mail mit From: contact@captaindns.com senden und dabei mit seiner eigenen DKIM-Domain signieren (d=attacker.com). Die DKIM-Signatur wäre gültig, aber der Empfänger sieht einen gefälschten Absender. DMARC blockiert dieses Szenario, indem es das Alignment zwischen der From:-Domain und der d=-Domain verlangt.

DKIM-Schlüsselrotation: warum und wie

Warum Schlüssel rotieren?

Ein zu lange verwendeter DKIM-Schlüssel birgt Risiken:

  • Kompromittierung: Je länger ein Schlüssel exponiert ist, desto anfälliger ist er für Angriffe
  • Compliance: Bestimmte Standards (PCI DSS, SOC 2) verlangen eine regelmäßige Rotation
  • Best Practices: Google empfiehlt eine vierteljährliche Rotation

Empfohlene Häufigkeit

SchlüsselgrößeMinimale HäufigkeitEmpfehlung
RSA 1024SofortAuf 2048 Bit migrieren
RSA 2048Alle 6 MonateAlle 3 Monate
RSA 4096Alle 12 MonateAlle 6 Monate
Ed25519Alle 12 MonateAlle 6 Monate

Schritt-für-Schritt-Anleitung

  1. Neues Schlüsselpaar generieren mit einem neuen Selektor (z.B. s202602)
  2. Neuen öffentlichen Schlüssel im DNS veröffentlichen: s202602._domainkey.captaindns.com
  3. DNS-Propagierung abwarten (24-48 Stunden)
  4. Sendeserver konfigurieren, um den neuen Selektor zu verwenden
  5. Überprüfen, dass ausgehende E-Mails mit dem neuen Selektor signiert werden
  6. Alten Schlüssel widerrufen, indem p= (leer) im alten DNS-Eintrag veröffentlicht wird
  7. Alten Eintrag löschen nach 30 Tagen (damit E-Mails im Transit verarbeitet werden können)

Häufige Fehler in DKIM-Einträgen

FehlerSymptomLösung
1024-Bit-SchlüsselWarnung bei Google/YahooAuf RSA 2048 Bit migrieren
Tag p= leerDKIM fail: key revokedÖffentlichen Schlüssel neu veröffentlichen oder neuen Selektor verwenden
Selektor nicht gefundenDKIM fail: no key for signatureDNS, Propagierung und Schreibweise des Selektors prüfen
Öffentlicher Schlüssel abgeschnittenDKIM fail: bad RSA signaturePrüfen, ob der TXT-Eintrag nicht gekürzt ist (255-Byte-Limit pro Zeichenkette)
v=DKIM1 fehltEinige Server ignorieren den EintragImmer v=DKIM1 als ersten Tag angeben
From-Header nicht signiertDMARC schlägt trotz gültigem DKIM fehlfrom in den Tag h= der Signatur aufnehmen
Testmodus vergessent=y bleibt in Produktion aktivt=y entfernen, sobald DKIM validiert ist

Empfohlener Aktionsplan

  1. Bestehendes prüfen: Verwende einen DKIM-Checker, um deine aktuellen DKIM-Einträge zu analysieren
  2. Selektoren inventarisieren: Identifiziere alle aktiven Selektoren deiner Domain mit einem Tool zur automatischen Erkennung
  3. Schlüsselgröße prüfen: Jeder Schlüssel unter 2048 Bit muss ersetzt werden
  4. DMARC konfigurieren: Veröffentliche einen DMARC-Eintrag mit adkim=r (Relaxed) zum Start, dann wechsle auf Strict (adkim=s), sobald alles stabil ist
  5. Rotation planen: Trage eine vierteljährliche DKIM-Schlüsselrotation in deinen Kalender ein

FAQ

Was ist ein DKIM-Eintrag?

Ein DKIM-Eintrag ist ein DNS-TXT-Record, der unter der Adresse selektor._domainkey.domain.com veröffentlicht wird. Er enthält den öffentlichen Schlüssel, mit dem Empfangsserver die kryptografische Signatur jeder ausgehenden E-Mail überprüfen können. Die wesentlichen Tags sind v=DKIM1 (Version), k= (Algorithmus) und p= (öffentlicher Schlüssel in Base64).

Wie funktioniert die DKIM-Signatur?

Der Sendeserver berechnet einen SHA-256-Hash der ausgewählten Header und des Nachrichtentexts und signiert diesen Hash mit seinem privaten Schlüssel. Die Signatur wird im DKIM-Signature-Header eingefügt. Der Empfangsserver ruft den öffentlichen Schlüssel über DNS ab und überprüft, ob die Signatur mit dem empfangenen Inhalt übereinstimmt.

Welche Tags hat ein DKIM-Eintrag?

Die Pflicht-Tags sind v=DKIM1 (Version) und p= (öffentlicher Schlüssel). Optionale Tags umfassen k= (Algorithmus, standardmäßig rsa), t= (Flags: y für Test, s für Strikt), h= (akzeptierte Hash-Algorithmen), s= (Diensttyp) und n= (Anmerkungen).

Was ist der Unterschied zwischen RSA und Ed25519 für DKIM?

RSA 2048 ist der aktuelle Standard, der von allen Anbietern unterstützt wird. Ed25519 erzeugt kürzere Signaturen (64 Bytes vs. 256) und ist schneller, wird aber nur von wenigen Anbietern unterstützt (Google, Fastmail). Der beste Ansatz ist die Doppelsignatur: Ed25519 + RSA 2048.

Wie überprüfe ich einen DKIM-Eintrag?

Verwende den Befehl dig TXT selektor._domainkey.domain.com +short, um das DNS abzufragen. Wenn ein TXT-Eintrag mit v=DKIM1 und p= zurückgegeben wird, ist der öffentliche Schlüssel veröffentlicht. Für eine vollständige Analyse (Schlüsselgröße, Syntax, Gültigkeit) verwende ein Online-DKIM-Überprüfungstool.

Warum ist die DKIM-Schlüsselrotation wichtig?

Ein zu lange verwendeter Schlüssel erhöht das Risiko einer Kompromittierung. Google empfiehlt eine vierteljährliche Rotation. Das Verfahren besteht darin, einen neuen Selektor mit einem neuen Schlüsselpaar zu erstellen, den neuen Schlüssel im DNS zu veröffentlichen, den Sendeserver umzustellen und dann den alten Schlüssel zu widerrufen, indem sein Tag p= geleert wird.

Was ist die Verbindung zwischen DKIM und DMARC?

DKIM authentifiziert den Inhalt einer Nachricht, DMARC überprüft, ob die Domain der DKIM-Signatur (d=) mit der Domain des From: übereinstimmt. Ohne DMARC kann ein Angreifer eine E-Mail mit seiner eigenen Domain signieren und dabei das From: fälschen. DMARC blockiert dieses Szenario durch die Alignment-Überprüfung.

Glossar

  • DKIM (DomainKeys Identified Mail): E-Mail-Authentifizierungsprotokoll, das asymmetrische Kryptografie nutzt, um ausgehende Nachrichten zu signieren und den Empfängern die Überprüfung ihrer Integrität zu ermöglichen.
  • DKIM-Selektor: Text-Identifikator (z.B. google, selector1), der zusammen mit der Domain die DNS-Adresse des öffentlichen Schlüssels bildet (selektor._domainkey.domain).
  • Öffentlicher Schlüssel: Teil des kryptografischen Schlüsselpaars, der im DNS veröffentlicht wird und von Empfangsservern zur Überprüfung der DKIM-Signaturen verwendet wird.
  • DKIM-Alignment: Überprüfung durch DMARC, ob die Domain d= der DKIM-Signatur mit der Domain des From: der E-Mail übereinstimmt.
  • Ed25519: Digitaler Signaturalgorithmus, der durch RFC 8463 als Alternative zu RSA für DKIM eingeführt wurde und kürzere Signaturen sowie schnellere Überprüfung bietet.
  • Schlüsselrotation: Regelmäßiger Austausch der DKIM-Schlüsselpaare, um das Risiko einer Kompromittierung zu begrenzen.

Generiere deine DKIM-Schlüssel in wenigen Sekunden: Verwende den DKIM-Generator, um ein RSA-2048- oder Ed25519-Schlüsselpaar mit dem fertigen DNS-Eintrag zu erstellen.


Verwandte DKIM-Anleitungen

  • DKIM-Selektor finden: 4 Methoden: Den Selektor aus den Headern, der Admin-Konsole, dem DNS oder einem automatischen Tool extrahieren
  • DKIM fail: alle Ursachen und wie du sie behebst (demnächst)

Quellen

Ähnliche Artikel