Alan adı Anahtarlarıyla Tanımlanmış E-Posta

Alan adı Anahtarlarıyla Tanımlanmış E-Posta (DKIM) e-posta sahteciliğini algılamak için tasarlanmış bir [Email authentication e-posta kimlik doğrulama] yöntemidir. Alıcının, belirli bir alandan geldiği iddia edilen bir e-postanın gerçekten bu alanın sahibi tarafından yetkilendirildiğini kontrol etmesini sağlar. Bu yöntemle e-postalarda sahte gönderici adresleriyle yemleme ve yığın e-posta gibi saldırıları önlemek amaçlanmıştır.
Teknik terimlerle, DKIM bir alan adının bir e-posta mesajı ile bir elektronik imza ekleyerek ilişkilendirmesini sağlar. Doğrulama, imzalayan kişinin DNS'de yayınlanan açık anahtarı kullanılarak gerçekleştirilir. Geçerli bir imza, imzalandıktan sonra e-postanın bazı bölümlerinin (muhtemelen ekler dahil) değiştirilmediğini garanti eder.
 Genellikle DKIM imzaları son kullanıcılar tarafından görülemez ve mesajın yazarları ve alıcıları yerine altyapı tarafından yapıştırılır veya doğrulanır. Bu açıdan DKIM, uçtan uca dijital imzalardan farklıdır.

Tarihçe

DKIM, benzer amaçla Yahoo tarafından yürütülen ‘geliştirilmiş alan adı doğrulaması’ ve CISCO tarafından yürütülen ‘tanımlanmış internet postası’ projelerinin 2004 yılında birleştirilmesi ile oluşturuldu. ] Birleştirilmiş bu yöntem IETF standartları ve parça tanımlamalarının temelini oluşturdu ve nihayetinde şu anda[rfc:6376  RFC 6376] olan STD 76’nin oluşturulmasındaki dokümanları desteklemiştir. "Tanımlanmış İnternet Postası", Cisco tarafından imza tabanlı bir posta kimlik doğrulama standardı olarak önerildi; DomainKeys ise Yahoo tarafından bir e-posta göndereninDNS alan adını ve mesaj bütünlüğünü doğrulamak üzere tasarlandı.
DomainKeys'in bazı parçaları, "Tanımlanmış İnternet Postası"nın parçalarıyla Alan Adı Anahtarlarıyla Tanımlanan E-posta (DKIM) oluşturmak için birleştirildi.
Trendleri belirleyen DKIM sağlayıcıları arasında Yahoo, Gmail,AOL ve FastMail bulunuyor. Bu kuruluşlardan gelen bütün postalar DKIM imzasını taşımalıdır.
DKIM, 2010' ların başlarında DMARC'ın kurulduğu iki sütundan biri oldu. Dolaylı e-posta akışlarında geçen DKIM imzaları hakkında  yeni protokolün ilk kabullerinden sonra düzenli e-posta listesi kullanımında DMARC çalışma grubunda tartışmalar ortaya çıktı. Ancak DKIM’de önerilen değişikliklerin hiç biri yapılmadı. Bunun yerine e-posta listesi yazılımı değiştirildi
2017 yılında imzalama tekniklerinin gözden geçirilmesi için belirli kısıtlamaları oluşturmak için bir başka çalışma grubu olan DKIM Crypto Update (dcrup) oluşturuldu. 2018 Ocak ayında [rfc:8301 RFC 8301' de] SHA-1 ve anahtar uzunluğunun değiştirilmesi yasaklandı(512-2048 dan 1024-4096).

Geliştirme

Orijinal geliştirilmiş alan adı doğrulaması, 2004'ten bu yana birçok katkı sağlayanın yorumlarıyla Yahoo’dan Mark Delany tarafından geliştirildi. Bu, Stardart İzleme RFC 4871 ile yerine geçtiği tarihi RFC 4870’de ve Alan adı anahtarıyla e-posta kimlik doğrulaması (DKIM)’de belirtildi ve her ikisi de Mayıs 2007'de yayınlandı. Daha sonra bir takım açıklamalar ve kavramsallaştırmalar toplanmış ve mevcut şartnamenin düzeltilmesi şeklinde düzenlenen ve Ağustos 2009’da yayınlanan [rfc:5672 RFC 5672’de] belirtilmiştir. Eylül 2011'de, RFC 6376, DKIM protokolünün özünü korurken, bu iki belgeyi birleştirdi ve güncelledi. Daha önceki DomainKeys ile ortak anahtar uyumluluğu da mümkün hale geldi.
DKIM başlangıçta gayri resmi bir sanayi konsorsiyumu tarafından üretildi ve daha sonra Barry Leiba ve Stephen Farrell başkanlığındaki IETF DKIM Çalışma Grubu, PGP Şirketi'nden Jon Callas,Mark Delany ve Yahoo'dan Miles Libbey'den oluşan bir grup tarafından geliştirme ve standardizasyon için sunuldu ve Jim Fenton ve Cisco' dan Michael Thomas, birincil yazar olarak nitelendirildi.
En son protokol eklemeleriyle birlikte ortak bir kaynak kodu kütüphanesinin geliştirilmesi  OpenDKIM Projesi tarafından Yeni BSD Lisansı kapsamında yönetiliyor.

Genel bakış

DKIM imzalama ve doğrulama olmak üzere 2 ayrı işlem sağlıyor. Her ikisi de bir posta aktarım aracısı (MTA) modülüyle yönetilebilir. İmzalama kuruluşu, yazar,gönderme sitesi veya transit yolu boyunca başka bir aracı veya doğrudan işleyiciye yardım sağlayan bağımsız bir hizmet gibi dolaylı bir işleyici gibi mesajın doğrudan işleyicisi olabilir. İmzalama modülleri, bir veya daha fazla DKIM-Signature ekler ve bir imza ; başlık alanlarını, muhtemelen yazar organizasyonunun veya kaynak servis sağlayıcısının yerine ekler. Doğrulama modülleri tipik olarak alıcı organizasyonun yerine etki eder.
İstenmeyen postalar(spam) sahte adres ve içerik hazırladığı için 
bu tür onaylanmış kimliklere duyulan ihtiyaç ortaya çıkmıştır. Örneğin, bir spam iletisi, bu adres veya alan ya da varlıktan olmamasına rağmen, sender@example.com adresinden olduğunu iddia edebilir. Buradaki spammer'ın amacı, alıcının e-postayı kabul etmeye ve okumaya ikna etmektir. Alıcıların belirli bir mesaja veya hatta alana güvenip güvensizlik yapıp yapmayacağına karar vermesi zordur ve sistem yöneticileri, sistemlerinden kaynaklanmış gibi görünen, ancak spam olmayan şikayetlerle de uğraşmak zorunda kalabilirler. DKIM , imzalayıcıların hangi başlık alanlarını imzalamak istediklerini seçmelerine izin verir, ancak Kimden: alanı her zaman imzalanmış olmalıdır. DKIM, imza sahibinin (yazar örgütü) meşru gördüğü e-postaları iletmesini sağlar. Bu durum doğrudan kötüye kullanımı engelleyemez. Gerçek postayı potansiyel sahte postalardan ayırt edebilme özelliği , e-posta alıcılarının yanı sıra gönderenlere de fayda sağlar.
DKIM  , Basit Posta Aktarım Protokolü (SMTP)'nün yönlendirme yönlerinden bağımsız olarak  iletilen mailin başlık ve gövde kısmında RFC 5322 ' ye dayanarak çalışır. Bu nedenle DKIM imzası çoklu MTA'lar boyunca temel aktarımdan geçer.

Patent Yükümlülüğü

Alan adı anahtarları(DomainKeys) Yahoo! ' ya atanan  U.S. Patent 6.986.049 sayılı patent ile korunmaktadır. Yahoo, DKIM IETF Working Group'un amacı için artık kullanılmayan (mülga) DK kütüphanesini ikili lisans şeması altında yayınladı :  imzasız bir versiyonu halen bulunabilen [22] Geliştirilmiş Alan Adı Doğrulaması Lisans Sözleşmesi v1.2 ve GNU Genel Kamu Lisansı v2.0 (ve başka bir sürümü yok).

Spam Filtreleme ile Kullanımı

DKIM bir iletiyi etiketleme yöntemidir ve kendi başına spam'i filtrelemez veya tanımlamaz. Bununla birlikte, DKIM'in yaygın kullanımı, spam göndericilerin mesajlarının kaynak adresini oluşturmasını engelleyebilir ve bugün kullandıkları bir tekniktir. Spam gönderenler doğru bir kaynak alan adı göstermeye zorlanıyorsa, diğer filtreleme teknikleri daha etkili bir şekilde çalışabilir. Kaynak alan adı itibar sistemine verilerek spam'ların daha iyi bir şekilde tespit edilmesine yardımcı olabilir. Tersine, DKIM, spam olmadığı bilinen ve filtrelenmesi gerekmeyen postayı tanımlamayı kolaylaştırır. Bir alıcı sistem, yerel olarak ya da üçüncü taraf onaylayıcıları tarafından bilinen iyi gönderim alanlarının beyaz listesini barındırıyorsa, bu alanlardan gelen imzalı postadaki filtrelemeyi atlayabilir ve belki de kalan postaları daha agresif bir şekilde filtreleyebilir.

Anti-Kimlik Avı

DKIM bir yemleme karşıtı(anti-phishing)  bir teknoloji olarak yararlı olabilir. Ağır şekilde yemlenen alan adlarında bulunan postalar, postalarının gerçek olduğunu göstermek için postalarını imzalayabilir. Alıcılar bu alan adlarından alınan postalarda imzayı belirleyemezse e-postanın büyük olasılıkla sahte olduğunu anlayabilirler. Bu derece bir denetlemeyi gerektirecek alan adlarına karar vermek kolay değildir. DKIM eskiden yazarların maillerini kendi kimlikleriyle imzaladığı ADSP diye adlandırılan ekstra bir özelliğe sahipti fakat 2013 Kasım' da eski teknoloji olarak sınıflandırıldı.  Bunun yerine, DMARC denilen aynı amaç için kullanılan  ve alan adlarına kendi kendine hangi teknikleri kullanacaklarını yayınlama(SPF ve DKIM de dahil) hakkı veren ve alıcının gelen e-postanın spam olup olmadığına karar vermesini kolaylaştıran bir yöntem bulunur. Örneğin Gmail , DMARC kullanarak eBay ve PayPal' dan gelen kimliği doğrulanmamış bütün e-postaları reddetmiştir. 

Uyumluluk

DNS kayıtları ve eklenen bir RFC 5322 başlık alanı kullanılarak uygulandığından, DKIM mevcut e-posta altyapısı ile uyumludur.
Özellikle, DKIM desteğine sahip olmayan mevcut e-posta sistemlerine karşı şeffaftır.
Bu tasarım yaklaşımı, S / MIME ve OpenPGP içerik koruma standartları gibi diğer ilgili hizmetler ile de uyumludur. DKIM ayrıca DNSSEC standardı ve SPF ile de uyumludur.

Protokolün ek yükü

DKIM, bir posta sunucusu aracılığıyla gönderilen her mesaj için oluşturulacak şifrelenmiş sağlama toplamı gerektirir; bu da, e-posta teslimi için başka türlü gerekli olmayanhesaplama ek yükü ile sonuçlanır. Bu ek hesaplama yükü , toplu spam e-posta göndermeyi zorlaştırır. DKIM bu yönden, hashcash'a benzer görünebilir, ancak alıcı tarafının doğrulanması ihmal edilebilir miktarda bir çalışma değildir ve tipik bir hashcash algoritması çok daha fazla iş gerektirecektir.

İnkar Edilememe

DKIM' in inkar edilememe özelliği , göndericileri(mesela spammerlar) e-postayı göndermediğini iddia etmesini engeller. Bu durumun işe yararlılığı WikiLeaks gibi haber kaynakları tarafından sızdırılan e-postaların gerçek olduğunu ve değiştirilmediğini kanıtlamak için kullandığında(Hillary Clinton' ın 2016 Başkanlık Seçimindeki yol arkadaşı Tim Kaine ile olduğu gibi) gözlenmiştir.

Zayıflıkları

RFC'nin kendisi bir dizi potansiyel saldırı vektörünü tanımlar.
DKIM imzaları, dönüş yolunu ve mesaj alıcılarını içeren mesaj zarfını kapsamaz. DKIM yanlış adreslemeye karşı koruma sağlamaya çalışmadığından, bu durum DKIM' in yararı konusunda olumsuz bir etki oluşturmaz.
Herhangi bir şifreleme çözümüyle ilgili bir endişemesaj tekrarının kötüye kullanılması olabilir. Yeniden oynatma kullanımı ile ortak anahtarlar kullanılarak, bu anahtarlar için DNS sorgularının izlenmesi ve e-postaların büyük e-posta listelerine gönderilmesiyle ilgili yüksek sayıda sorgunun filtrelenmesi veya kötü oyuncuların kötü amaçlı sorguları kullanılarak elde edilebilir.
Bu konuyla ilgili farklı yöntemlerin karşılaştırılması içine-posta kimlik doğrulamasına bakılabilir. 

Gelişigüzel İletme

Yukarıda belirtildiği gibi, kimlik doğrulama ile kötüye kullanımı önleme aynı değildir. Saygın bir alanın kötü niyetli bir e-posta kullanıcısı, kötü bir mesaj oluşturup ve onu DKIM imzalı halde alan adı içerisinden herhangi bir mesaj kutusuna gönderip onu dosya olarak elde ettiğinde , mesajın imzalı bir kopyasını ele geçirmiş olur. İmzalardaki l etiketinin kullanılması, bu tür mesajların daha kolay kendi çıkarlarına göre değiştirilmesini sağlar. İmzalı kopya daha sonra kontrolsüz bir botnet üzerinden bir milyon alıcıya iletilebilir. Mesajı imzalayan e-posta sağlayıcısı, rahatsız edici kullanıcıyı engelleyebilir, ancak önceden imzalı mesajların yayılmasını durduramaz. Bu tür mesajlardaki imzaların geçerliliği her zaman imzalardaki bir sona erme süresi etiketi veya periyodik olarak veya bir olayın bildirimi üzerine bir açık anahtarının iptal edilmesiyle sınırlandırılabilir. Senaryonun etkililiği, bir mesajın spam göndericilere potansiyel olarak yararlı olup olmadığını tespit etme kabiliyeti anlamına geldiğinden, giden postanın filtrelenmesi ile sınırlandırılamaz.

İçerik değişikliği

DKIM'in şu anda ikisi de MIME uyumlu olan, basit ve rahat olmak üzere 2 standartlaştırma algoritması bulunur.
 Posta sunucuları yasal olarak farklı bir karakter kümesine dönüştürebilir ve genellikle bunu X-MIME-Otomatik dönüştürülmüş başlık alanları ile belgeleyebilir. Ayrıca, belirli durumlarda sunucuların MIME yapısını yeniden yazmaları gerekir, böylece girişlerin, epilogun ve varlık sınırlarının değiştirilmesi gerekir, bunların herhangi biri DKIM imzalarını kırabilir. MIME başlık alanlarının işaretlenmemiş olması koşuluyla, sadece ascii dilinde yazılmış düz metin mesajları, uçtan uca bütünlüğün gerektirdiği sağlamlığın tadını çıkarır.
OpenDKIM Projesi, 21 posta sunucusu ve milyonlarca mesaj içeren bir veri topladı ve  gözlemlenen imzaların % 92.3'ü başarılı bir şekilde doğrulandı, başarı oranı e-posta  trafiği düşünüldüğünde  %90.5 a düşer. 

Posta listeleri ile ek açıklamalar

Filtreleme veya geçiş yazılımı bir mesajda değişiklik yaptığında sorunlar daha da kötüleşebilir. Gönderen tarafından uygulanan özel önlemler olmadan, posta listelerinin çoğu ve birçok merkezi antivirüs çözümü tarafından çalıştırılan altbilgi eklenmesi , DKIM imzasını kıracaktır. Olası bir etki azaltma, yalnızca mesaj gövdesinin belirtilen sayıda baytını imzalamaktır. DKIM-Signature başlığında l etiketi ile gösterilir. DKIM imzası hesaplanırken, mesaj gövdesinin belirtilen uzunluğunun ötesinde eklenmiş herhangi bir şey dikkate alınmaz. Bu MIME mesajları için işe yaramaz durumdadır.
Başka bir geçici çözüm, bilinen ileticileri beyaz listeye almaktır; ( örneğin SPF tarafından iletilenler). Başka bir geçici çözüm olarak ise, ileticilerin imzayı doğruladığı, e-postayı değiştirdiği ve iletiyi Gönderen: üstbilgisiyle yeniden imzalaması önerildi.
 Bununla birlikte, bu çözümün, RFC 5617 ADSP protokolünü destekleyen SMTP alıcılarında alınan yönlendirilmiş 3. taraf imzalanmış mesajlarla riske girdiğine dikkat edilmelidir.

Kısa anahtar güvenlik açığı

Ekim 2012' de, Wired  matematikçi Zach Harris ' in google.com şirket alan adı için kısa DKIM anahtarları bir e-posta kaynak sızdırma güvenlik açığı tespit ettiğini ve gösterdiğini bildirdi. Harris kimlik doğrulamanın 384-bit için kendi dizüstü bilgisayarında 24 saatte , 512-bit anahtar için bulut bilişim bilgisayarlarıyla 72 saatte hesaplanabileceğini belirtti. Harris, birçok kuruluşun bu kısa anahtarlarla e-posta imzaladığını tespit etti; Hepsini çözdü ve bu açıklık hakkında kuruluşları haberdar etti. Harris 768-bit anahtar uzunluğunun çok fazla işlem gücü gerektirdiğini fakat daha güvenli sistemler için 1024-bitten daha uzun anahtarların kullanılmasını önerdi. Wired, Harris'in bildirmesi sonucu ve Google’ın kısa bir süre sonra yeni anahtarlar kullanmaya başladıklarını doğruladı. [rfc:6376 RFC 6376'ya] göre, alıcı taraf imzaları 512 bitten 2048 bite kadar olan anahtarlarla doğrulayabilir, dolayısıyla 512 bitten daha kısa olan anahtarların kullanımından kaçınılmalıdır. RFC 6376 ayrıca,  uzun ömürlü anahtarlar için en az 1024 bit anahtar kullanması gerektiğini belirtir.