DKIM (DomainKeys Identified Mail) to mechanizm uwierzytelniania poczty e-mail, który:
DKIM nie ogranicza, kto może wysyłać wiadomości — zamiast tego gwarantuje integralność i autentyczność nadawcy poprzez podpis kryptograficzny.
1. W momencie wysyłania e-maila, serwer nadawcy:
DKIM-Signature
.
2. Klucz publiczny potrzebny do weryfikacji jest publikowany w DNS domeny.
3. Serwer odbiorcy:
Jeśli tak – wiadomość jest autoryzowana. Jeśli nie – uznawana za potencjalnie sfałszowaną.
Przykład nagłówka DKIM:
DKIM-Signature: v=1; a=rsa-sha256; d=ostrowski.net.pl; s=selector1; c=relaxed/relaxed; h=from:to:subject:date; bh=fakehash==; b=fake_signature_data==
Element | Znaczenie |
---|---|
`v` | Wersja DKIM (zawsze `1`) |
`a` | Algorytm kryptograficzny |
`d` | Domena podpisująca |
`s` | Selektor (nazwa rekordu DNS z kluczem publicznym) |
`h` | Lista nagłówków objętych podpisem |
`b` | Właściwy podpis |
`bh` | Hash treści wiadomości |
1. Wygeneruj parę kluczy:
2. Dodaj rekord TXT do DNS:
selector1._domainkey.ostrowski.net.pl
v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQE...
3. Skonfiguruj serwer pocztowy, aby podpisywał wiadomości za pomocą klucza prywatnego i wybranego selektora.
v=DKIM1; k=rsa; p=KLUCZ_PUBLICZNY
Element | Znaczenie |
---|---|
`v` | Wersja DKIM (DKIM1) |
`k` | Typ klucza (najczęściej `rsa`) |
`p` | Klucz publiczny w formacie Base64 |
Selektor to unikalna nazwa identyfikująca dany klucz DKIM. Pozwala:
Nazwa selektora jest częścią zapytania DNS:
[selector]._domainkey.[domena]
Przykład:
selector1._domainkey.ostrowski.net.pl
Nazwa: selector1._domainkey.ostrowski.net.pl Typ: TXT Wartość: v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApn...
Po dodaniu rekordu możesz przetestować jego poprawność:
Można także wysłać e-mail na:
Nie. DKIM nie chroni:
Aby uzyskać pełną ochronę e-maila, należy połączyć:
DKIM to skuteczna metoda potwierdzania, że wiadomość e-mail:
Aby działał skutecznie:
DKIM to nie tylko ochrona, ale także fundament wiarygodności poczty w oczach Gmaila, Outlooka i innych dostawców.