A DKIM pass ei tarkoita, että jokainen näytettävä otsikko on allekirjoitettu. Jokainen allekirjoitus valitsee otsikkokentät h-tunnisteensa kautta ja käyttää määritettyä kanonisointi algoritmi. Päättääksesi, onko aihe, vastaanottajakenttä tai muu arvo suojattu, tarkista ohittavan allekirjoituksen todellinen kattavuus.
Aloita oikealla allekirjoituksella
Kirjaa kullekin d, s, h ja c DKIM-Signature otsikko. Yhdistä vastaanottajan luotettava tulos vastaavaan allekirjoitukseen sen sijaan, että käsittelet viestitason hyväksyntää todisteena niistä kaikista. Allekirjoituksessa on oltava Lähettäjä, mutta kaikki muut otsikot eivät ole pakollisia. RFC 6376 §5.4 selittää valintasäännöt ja suosittelee hyödyllistä kattavuutta.
Jos Aihetta ei ole valittu, Aiheen muutos ei sinänsä muuta allekirjoituksella suojattuja tietoja. Tämä lausunto koskee kryptografista kattavuutta, ei sitä, onko muokattu viesti hyväksyttävä. Vastaanottava palvelu voi silti soveltaa itsenäistä politiikkaa. Vastaavasti vastaanottajan allekirjoittaminen ei sido SMTP kirjekuoren vastaanottajaa: näkyvä Vastaanottaja-otsikko ja RCPT TO -osoite ovat eri tietoja; RFC 5321 §2.3.1 erottaa SMTP n kirjekuori osoitteesta viestin sisältö.
Ota huomioon toistuvat kentät
h-tunniste ei ole vain joukko yksilöllisiä nimiä. Under RFC 6376 §5.4.2, toistuvat nimet valitsevat toistuvia fyysisiä esiintymiä otsikkolohkon alaosasta ylöspäin. Jos viestissä on esimerkiksi kolme Vastaanotettu-kenttää ja h-luettelossa on Vastaanotettu kahdesti, valitaan kaksi alinta esiintymää. Lisäämällä h:hen enemmän nimen esiintymiä kuin allekirjoitettaessa voidaan havaita kyseisen kentän myöhempää lisäystä. Tätä tekniikkaa kutsutaan usein oversigningiksi.
Älä päättele, että ylin kenttä on allekirjoitettu vain siksi, että sen nimi esiintyy kerran kohdassa h. Rekonstruoi valinta todellista otsikkolohkoa vasten. Päällekkäiset kentät, joiden pitäisi tavallisesti olla yksiköitä, herättävät myös jäsennys- ja viestin kelpoisuuskysymyksiä; DKIM laskelma ei ole lupa sivuuttaa näitä huolenaiheita.
Erota arvon muutokset normalisoidusta muotoilusta
Yksinkertaisessa otsikon kanonisoinnissa valittu kenttä on esitettävä täsmälleen allekirjoitettuna. Rento otsikon kanonisointi kirjoittaa kenttien nimet pienillä kirjaimilla, avaa jatkorivit ja normalisoi määritetyt välilyönnit. Se ei pienennä kenttien arvoja pienillä kirjaimilla tai tee eri aihetekstejä vastaaviksi. Lue valittu algoritmi ennen kuin annat virheen kirjaimille tai uudelleen rivittämiselle.
Havainnollinen testispesifikaatio: yksi ohjattu allekirjoitus valitsee Lähettäjä ja Aihe. Aiheen sanojen muuttamisen odotetaan mitätöivän tämän allekirjoituksen. Toinen allekirjoitus valitsee Lähettäjä, mutta jättää aiheen pois; saman aiheen muutoksen ei tarvitse mitätöidä toista allekirjoitusta. Kontrasti selittää odotetun kattavuuden, ei kannatusta aiheen pois jättämisestä.
Paranna allekirjoittajan kattavuutta
Valitse kentät, jotka vaikuttavat vastaanottajan tulkintaan ja voivat pysyä vakaina tuetun reitin ajan. Tarkista suositukset RFC 6376 §5.4.1 ja allekirjoittajan kykyjä. Vältä vahingossa allekirjoittamasta jäljityskenttiä, joita laillinen kuljetus lisää tai muuttaa. Testaa koko reittiä kaksoiskenttien ja muotoilutapausten avulla valvotussa ympäristössä.
Dokumentoi aiottu peittoprofiili allekirjoitusmäärityksen ohella. Hyödyllinen tarkistus kertoo tarkalleen, mitkä otsikot ja esiintymät on suojattu, mitkä normalisoinnit ovat sallittuja ja mitkä kentät jäävät allekirjoituksen ulkopuolelle. Tämä on paremmin puolustettavaa kuin kuvailla DKIM :ää koko viestin sinetiksi.
Jäljitä synteettinen otsikkovalinta
Kuvittele kolme X-esimerkkikenttää fyysisessä ylhäältä alas-järjestyksessä: uusin, keskimmäinen, vanhin. Allekirjoitusluettelo h=From:X-Example:X-Example valitsee vanhimman ja sitten keskimmäisen, ei uusimman. Kun allekirjoituksessa on vain yksi X-esimerkki, X-esimerkin luettelointi kahdesti sisältää myös poissaolevan esiintymän; toisen X-esimerkin lisääminen myöhemmin muuttaa valitun syötteen ja voi mitätöidä allekirjoituksen. Tämä on valintatehtävä, ei suoritettu allekirjoitustesti tai suositus sallia normaalisti yksittäisten kenttien kaksoiskappaleet.