Footer dapat mengubah pesan keluar yang ditandatangani dengan benar menjadi a DKIM kegagalan. Perbaikan dimulai dengan urutan pemrosesan: mengidentifikasi sistem mana yang menandatangani pesan, sistem mana yang menyisipkan footer, dan tanda tangan mana yang dievaluasi oleh penerima. Menerbitkan kunci DNS lain tidak dapat membuat teks sampul tanda tangan ditambahkan setelah dibuat.
Buktikan byte mana yang berubah
Simpan pesan terkontrol segera setelah penandatanganan dan pesan lainnya setelah gateway, menggunakan ekspor pesan mentah, bukan menyalin teks dari klien email. Pertahankan file aslinya. Catat setiap tanda tangan d, s, c, h dan tag l apa pun. Sebuah pesan mungkin memiliki banyak tanda tangan dengan cakupan dan hasil yang berbeda.
DKIM menghitung hash dari badan yang dikanonikalisasi. Dalam cakupan seluruh tubuh biasa, footer baru menambahkan konten substantif dan mengubah hash tersebut. Tubuh santai kanonikalisasi menghilangkan perbedaan spasi tertentu; itu tidak menghapus penafian, blok HTML, atau bagian MIME baru. Ketidakcocokan body-hash menyangkut input dan nilai body-hash yang dibandingkan: representasi body, pengaturan c/l, dan nilai bh. Bh yang rusak atau salah dibuat, atau kesalahan penerapan penanda tangan/verifikator, juga dapat menjelaskan ketidakcocokan. Perbandingannya di RFC 6376 bagian 6.1.3 tidak dengan sendirinya membuktikan bahwa gateway mengubah tubuh. Kegagalan tanda tangan umum mungkin melibatkan header yang ditandatangani, pencarian kunci, atau sintaksis tanda tangan. RFC 6376 §3.4, RFC 6376 §3.7 Dan RFC 6376 §6.1 jelaskan pemeriksaan terpisah itu.
Bandingkan sampel pada batas tempat footer diterapkan. Periksa bagian teks/polos dan teks/html, batas MIME dan pengkodean transfer. Footer yang tampak identik dapat dibuat berseri secara berbeda. Jika gateway juga mengubah Subjek, periksa apakah Subjek terdaftar di h: memperbaiki isi saja tidak akan mengembalikan tanda tangan pada header yang diubah.
Uji pemesanannya daripada menebak-nebak
Skenario ilustrasi: aplikasi membuat faktur, server keluar menandatanganinya, dan gateway kemudian menambahkan pemberitahuan hukum. Penerima melaporkan ketidakcocokan body-hash untuk tanda tangan aplikasi. Dalam alternatif terkontrol, gateway menambahkan pemberitahuan terlebih dahulu dan penandatangan resmi menandatangani pesan serial terakhir. Hasil kelulusan pada jalur kedua tersebut mendukung diagnosis pemesanan. Ini adalah observasi pengujian yang diusulkan, bukan hasil dari penyewa sebenarnya.
Gunakan varian pesan yang sama melalui kedua jalur, termasuk HTML, teks biasa, dan lampiran. Hasil autentikasi penerima rekaman dari batas tepercaya, domain tanda tangan, dan domain Dari yang terlihat. Izin DKIM saja tidak cukup DMARC jika tanda tangan yang lewat tidak selaras dengan domain penulis. Tanda tangan gateway yang tidak terkait dapat memverifikasi dengan benar tanpa menyediakan jalur yang selaras.
Pilih batas penandatanganan yang dimiliki
Desain tahan lama yang biasa dilakukan adalah melakukan perubahan konten yang diperlukan sebelum operasi penandatanganan resmi terakhir. Hal ini mungkin berarti memindahkan penandatangan nanti, memindahkan penyisipan footer lebih awal, atau mengonfigurasi gateway untuk menandatangani pesan akhir menggunakan domain yang dikontrol organisasi. Konfirmasikan perilaku yang didukung dan kepemilikan kunci sebelum memilih desain. Jangan berasumsi setiap gateway mendukung penandatanganan domain khusus.
Jika tanda tangan yang ada rusak, menambahkan tanda tangan baru yang valid tidak akan memperbaiki tanda tangan sebelumnya. Evaluasi tanda tangan baru berdasarkan manfaatnya dan verifikasi penyelarasan terpisah. Jangan aktifkan tag l sepanjang badan hanya untuk menghilangkan footer dari perhitungan hash: tag ini meninggalkan akhiran yang tidak ditandatangani dan menciptakan trade-off keamanan yang dijelaskan dalam RFC 6376 §8.2.
Selesaikan dengan pemeriksaan regresi
Simpan diagram rute yang menunjukkan komponen pengubahan bodi terakhir dan penanda tangan segera setelahnya. Uji ulang ketika aturan penafian, penulisan ulang antivirus, atau perutean keluar berubah. Berhasil berarti footer yang diperlukan ada, tanda tangan yang diinginkan terverifikasi, domainnya memenuhi kebijakan penyelarasan yang diinginkan, dan pesan penting masih sampai melalui rute yang diharapkan. Simpan rencana rollback untuk perubahan konfigurasi tanpa menganggap penghapusan pemberitahuan hukum yang diperlukan sebagai solusi otomatis.
Gunakan catatan penerimaan regresi
Untuk setiap varian teks biasa sintetis, HTML, dan lampiran, catatan: footer ada; lompatan terakhir yang mengubah tubuh; penandatangan akhir d/s; c/h/l yang dipilih; hasil penerima terpercaya; Domain Penulis dan penyelarasan; dan hasil jalur bisnis. Jika footernya hilang, persyaratan pemberitahuan tidak terpenuhi meskipun DKIM lewat. Jika footer ada tetapi hanya domain gateway yang tidak terkait yang lolos, persyaratan penyelarasan DKIM yang dimaksud tidak terpenuhi. Ini adalah kriteria penerimaan, bukan pemeriksaan yang telah selesai.