DKIM, SPF und DMARC
Wie FOLD DKIM-Signaturen selbst prüft und mit den SPF- und DMARC-Ergebnissen deines Mailservers verbindet.
FOLD beurteilt einen Absender aus zwei Quellen: den Ergebnissen, die dein eigener Mailserver beim Eintreffen der Nachricht festgehalten hat, und seiner eigenen DKIM-Prüfung. Beides läuft auf Mac, iPhone und iPad.
Die Ergebnisse deines Servers
Empfangende Server fügen einen Header Authentication-Results mit ihren Urteilen zu SPF, DKIM und DMARC hinzu. Auch ein Absender kann solche Header einfügen, daher vertraut FOLD nur einem Header, dessen Servername exakt mit dem IMAP-Server deines Kontos übereinstimmt. Alle anderen Exemplare werden ignoriert.
SPF und DMARC übernimmt FOLD aus diesem Header; SPF wertet es nicht selbst aus. Schreibt dein Anbieter den Header unter einem anderen Namen als dem seines IMAP-Servers, hat FOLD für deine Mails kein Urteil zu SPF oder DMARC und zeigt den neutralen Zustand, der unter Anzeigen beschrieben ist.
Die eigene DKIM-Prüfung von FOLD
Für jede DKIM-Signature in einer Nachricht geht FOLD so vor:
- Es verlangt, dass der Header
Fromzu den signierten Headern gehört. - Es berechnet den Body-Hash mit der Kanonisierung der Signatur neu (simple oder relaxed).
- Es holt den öffentlichen Schlüssel aus dem DNS (
selector._domainkey.domain). - Es prüft die Signatur mit rsa-sha256 oder ed25519-sha256.
Abgelehnt werden rsa-sha1-Signaturen, RSA-Schlüssel mit weniger als 1024 Bit und Schlüssel, die die Domain widerrufen hat. Eine Signatur mit einem als Test gekennzeichneten Schlüssel (t=y) zählt nicht als bestanden.
Wie die Ergebnisse zusammenwirken
Die eigene DKIM-Prüfung kann das Urteil deines Servers bestätigen oder verschärfen, nie abschwächen:
- Eine gültige Signatur der Absenderdomain bestätigt DKIM.
- Eine ungültige Signatur, die sich auf die Absenderdomain beruft, macht aus der Nachricht Absender nicht verifizierbar, auch wenn dein Server anders geurteilt hat. Mailinglisten sind ausgenommen, weil sie Nachrichten rechtmäßig verändern.
- DNS-Fehler oder ein fehlender Schlüssel lassen das Urteil deines Servers unverändert und erscheinen als nicht nachprüfbar.
DMARC gilt als ausgerichtet, wenn die bestandene Domain mit der Absenderdomain übereinstimmt oder deren letzte zwei Labels teilt. Die Public Suffix List nutzt FOLD noch nicht, für Domains unter Suffixen wie co.uk ist dieser Vergleich daher zu großzügig. Eine Nachricht mit mehr als einem Header From gilt immer als mögliche Fälschung.
Wann die Prüfung läuft
FOLD prüft eine Nachricht, wenn es die vollständige Nachricht zum ersten Mal lädt: wenn du sie öffnest oder wenn es die nächste Nachricht vorab lädt. Die Nachricht erscheint sofort; das Urteil folgt einen Moment später. Die DNS-Abfragen gehen an den Resolver, den dein Gerät nutzt.
Das Ergebnis wird mit der Nachricht gespeichert. Ist DNS gescheitert, versucht FOLD es erneut, wenn du die Nachricht das nächste Mal mit Verbindung öffnest.