Jeśli błąd przy dodawaniu wartości TXT dla DKIM wynika z przekroczenia limitu pojedynczego elementu, wartość trzeba podzielić na elementy po maksymalnie 255 bajtów. Wszystkie części muszą należeć do jednego rekordu TXT.
Kiedy trzeba podzielić wartość
Publiczny klucz DKIM publikuje się w DNS w rekordzie TXT dla danego selektora DKIM.
Pojedynczy element tekstowy rekordu TXT mieści najwyżej 255 bajtów danych. To limit jednego elementu, a nie całego rekordu. Dłuższą wartość trzeba zapisać jako kilka elementów tego samego rekordu TXT.
Wartość mieszcząca się w 255 bajtach nie wymaga podziału z powodu tego limitu. Sam błąd przy zapisywaniu rekordu nie oznacza jednak, że przyczyną jest długość.
Jak przygotować części
Podczas odczytu DKIM elementy jednego rekordu TXT są łączone w podanej kolejności, bez dodawania spacji. Połączenie części musi odtwarzać pełną, oryginalną wartość.
- Jeśli wartość przekracza limit pojedynczego elementu, podziel ją na części po maksymalnie 255 bajtów. Zachowaj wszystkie znaki i ich kolejność.
- Sprawdź, czy połączenie części bez dodawania spacji daje dokładnie oryginalną wartość. Nie usuwaj spacji, które należą do oryginału.
- Przy zapisie zachowaj wszystkie części jako elementy jednego rekordu TXT, a nie jako osobne rekordy.
Fikcyjny przykład podziału
Poniższy jednolinijkowy przykład pokazuje pełną fikcyjną wartość dłuższą niż 255 bajtów, podzieloną na trzy elementy. Każdy element mieści się w limicie. Użyto wyłącznie znaków ASCII, więc jeden znak danych odpowiada jednemu bajtowi.
Cudzysłowy oznaczają tutaj granice części. Spacje między zamykającym i otwierającym cudzysłowem rozdzielają części zapisu, ale nie są dodawane do połączonej wartości.
To ilustracja mechanizmu, nie instrukcja wklejenia do formularza ani kompletny wpis strefy DNS. Powtarzające się litery zastępują dane klucza. Przykład nie jest poprawnym kluczem kryptograficznym i nie należy publikować go w DNS.
"v=DKIM1; k=rsa; p=" "abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz" "ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"Jeden rekord, nie kilka
Kilka elementów tekstowych wewnątrz jednego rekordu TXT to nie to samo co kilka osobnych rekordów TXT.
Nie twórz osobnego rekordu dla każdej części klucza pod tą samą nazwą selektora. Wszystkie części dzielonej wartości muszą należeć do jednego rekordu TXT.
Podział rozwiązuje ograniczenie długości pojedynczego elementu. Nie jest diagnozą każdego błędu TXT ani gwarancją usunięcia problemu z zapisem.