Generator · RFC 6376 · RFC 8463
Generator de chei DKIM
Serverul care trimite semnează fiecare mesaj cu cheia privată, iar cei care îl primesc verifică semnătura cu cheia publică din DNS. Perechea de chei se face aici, în browserul dumneavoastră: cheia privată nu e trimisă nicăieri.
Cheile generate
Salvați cheia privată acum: pagina nu o păstrează, iar noi nu o avem.
-
01Cheia privată
O puneți doar pe serverul care semnează mailul (de exemplu în configurarea OpenDKIM sau Exim), cu acces restrâns la fișier. Cine o are poate semna mail în numele domeniului.
s202611.privatePKCS#8 PEM -
02Înregistrarea DNS
Copiați valoarea în panoul DNS al domeniului, la numele și tipul de mai jos.
TXT- Nume (host)
- Tip
TXT- TTL (secunde)
3600
Valoarea trece de 255 de caractere, lungimea maximă a unui șir TXT: în panoul DNS o puneți ca 2 șiruri între ghilimele, în aceeași înregistrare. Serverele le lipesc la loc fără spațiu (RFC 7208 secțiunea 3.3).
-
03Verificarea
După publicare, verificați că DNS-ul servește exact această cheie. Verificarea se deschide într-o filă nouă și primește doar cheia publică, așa că pagina aceasta, cu cheia privată, rămâne deschisă.
De la cheie la mail semnat
Generați perechea de chei și salvați cheia privată pe serverul care trimite mailul.
Publicați înregistrarea TXT, apoi verificați că DNS-ul servește aceeași cheie.
Porniți semnarea cu noul selector și trimiteți un mesaj la testul de livrare: semnătura trebuie să apară ca
pass.
Cheia cu OpenSSL
Aceeași pereche de chei, făcută pe calculatorul dumneavoastră. Prima comandă scrie cheia privată, a doua afișează valoarea pentru p=.
RSA 2048opensslopenssl genpkey -algorithm RSA -pkeyopt rsa_keygen_bits:2048 -out s202611.private openssl pkey -in s202611.private -pubout -outform DER | openssl base64 -A
Ed25519opensslopenssl genpkey -algorithm ed25519 -out s202611.private openssl pkey -in s202611.private -pubout -outform DER | tail -c 32 | openssl base64 -A
Înregistrarea TXT, la s202611._domainkey. + domeniu: v=DKIM1; k=rsa; p= urmat de valoarea afișată (k=ed25519 pentru Ed25519).
Pe scurt despre cheile DKIM
- Ce face DKIM
Serverul care trimite adaugă antetul
DKIM-Signature, cu domeniul (d=) și selectorul (s=). Cel care primește cere cheia publică de las._domainkey.d(RFC 6376 secțiunea 3.6.2.1) și verifică semnătura. Semnătura rămâne valabilă și după redirecționări. - Selectorul și schimbarea cheii
RFC 6376 secțiunea 3.1: pentru o cheie nouă folosiți un selector nou și publicați ambele chei cât timp mai sunt mesaje în drum; semnați cu cea nouă, iar la sfârșitul tranziției ștergeți înregistrarea veche.
- RSA sau Ed25519
RFC 8301: semnatarii TREBUIE să folosească RSA de cel puțin 1024 de biți și AR TREBUI să folosească cel puțin 2048, iar verificatorii trebuie să accepte chei între 1024 și 4096 de biți. Ed25519 (RFC 8463) e mai scurtă; ca să fie verificat și de serverele mai vechi, mesajul poartă două semnături, cu selectoare diferite (secțiunea 4).
- Unde stă cheia privată
Cheile se fac cu WebCrypto, în browser. Cheia privată nu e trimisă la exim.ro și nu e salvată de pagină; verificarea primește doar cheia publică, cea care oricum stă în DNS.
Dacă mailul pleacă prin Google Workspace, Microsoft 365 sau un panou de găzduire care semnează el însuși, folosiți cheia generată acolo: cheia privată trebuie să stea la cel care semnează.