DKIM İmzalama
İletileri kriptografik olarak imzalama.
DKIM İmzalama, CoddyKit'te ücretsiz bir Cyber Security Academy dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Cyber Security Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Cyber Security Academy kursu toplamda 4 dersten oluşur.
DKIM'in Sağladıkları
DKIM (DomainKeys Kimlik Doğrulamalı E-posta), giden e-postaya kriptografik bir imza ekler. Alıcı, iki şeyi doğrulamak için bu imzayı denetleyebilir:
- İletinin imzalayan alan adı tarafından gerçekten yetkilendirildiğini
- İmzalanan içeriğin aktarım sırasında değiştirilmediğini
SPF sunucuları yetkilendirirken DKIM iletinin kendisini doğrular ve bu imza yönlendirmeden etkilenmeden kalır.
Açık Anahtarlı Kriptografinin Temelleri
DKIM, asimetrik kriptografiye dayanır. Alan adı sahibi bir key çifti bulundurur:
- Özel key, gönderen e-posta sunucusunda gizli tutulur ve imzalamak için kullanılır
- Açık key, DNS'te yayımlanır ve herkes tarafından doğrulamak için kullanılır
Geçerli bir imzayı yalnızca özel key sahibi oluşturabildiğinden, başarılı bir doğrulama iletinin meşru alan adından geldiğini kanıtlar.
İmzalama Süreci
Gönderen sunucu bir ileti gönderdiğinde, seçili üstbilgiler ve gövde üzerinden bir imza hesaplar, ardından bir DKIM-İmza üstbilgisi ekler.
Steps on the sender side:
1. Select headers to sign (From, Subject, Date, ...)
2. Hash the message body
3. Build the DKIM-Signature header with those fields
4. Sign the hash with the private key
5. Attach the signature to the outgoing messageDKIM-İmza Üstbilgisinin Yapısı
DKIM-İmza üstbilgisi, alıcının doğrulama için ihtiyaç duyduğu parametreleri taşır:
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=company.com; domain that signed
s=mail2024; selector (which key)
h=from:subject:date; signed headers
bh=base64bodyhash; body hash
b=base64signature the signature itselfDNS'teki Seçici ve Açık Key
Seçici (s= etiketi), alıcılara hangi açık key'i getirmeleri gerektiğini bildirir. Key, öngörülebilir bir DNS konumunda bulunur:
Location: <selector>._domainkey.<domain>
Example DNS TXT record:
mail2024._domainkey.company.com. IN TXT \
"v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBA..."
p = the base64-encoded public keyDoğrulama Süreci
Doğrulayan sunucu, ileti alındığında süreci tersine çevirir:
- DKIM-İmza'dan
d=alan adını ves=seçicisini okur - DNS'te
selector._domainkey.domainkonumundan açık key'i getirir - Gövde karmasını ve üstbilgi karmasını yeniden hesaplar
- İmzanın eşleştiğini doğrulamak için açık key'i kullanır
İmza geçerliyse DKIM geçer. İleti değiştirilmişse veya yanlış key ile imzalanmışsa doğrulama başarısız olur.
Gövde Karması Değişiklikleri Belirler
bh (gövde karması) alanı, DKIM'in ileti üzerinde yapılan değişiklikleri belirgin hale getirmesini sağlar. Gönderen, gövdenin karmasını hesaplar ve bu karmayı imzalanan verilere dahil eder.
Aktarım sırasında herhangi biri ileti gövdesini değiştirirse, alıcının yeniden hesapladığı karma imzalı bh değeriyle eşleşmez ve doğrulama başarısız olur. DKIM, yalnızca kaynak doğrulaması değil, bütünlük de böyle sağlar.
Kanonikleştirme
Yol üzerindeki e-posta sunucuları sık sık satırları yeniden kaydırır veya boşlukları düzenler; bunlar küçük ve zararsız değişikliklerdir. Bu değişikliklerin geçerli imzaları bozmaması için DKIM, kanonikleştirme (c= etiketi) kullanır.
- Katı — çok sıkıdır; neredeyse her değişiklik imzayı bozar
- Esnek — boşluk değişikliklerini ve üstbilgilerdeki büyük-küçük harf değişikliklerini tolere eder
Çeşitli e-posta altyapılarında güvenilirlik sağlamak için çoğu kurulumda relaxed/relaxed kullanılır.
Seçiciler Key Döndürmeyi Etkinleştirir
Seçiciler yalnızca etiket değildir; güvenli key döndürmeyi mümkün kılar. Bir key sızarsa etkilenme süresini sınırlamak için DKIM key'lerini düzenli aralıklarla yenilemelisiniz.
Döndürme süreci:
- Yeni bir seçiciyle yeni bir key çifti oluşturun (örneğin
mail2025) - Yeni açık key'i DNS'te yayımlayın
- İmzalayanı yeni seçiciyi kullanacak şekilde değiştirin
- Aktarım halindeki e-postalar teslim edilene kadar eski seçiciyi DNS'te bırakın, ardından kaldırın
Yeni bir seçici kullanmak, imzaların doğrulanamadığı bir boşluk oluşmasını önler.
DKIM Yönlendirmeden Etkilenmez
SPF'nin aksine DKIM yönlendirmeden etkilenmez. İmza iletiyle birlikte taşınır; imzalanan üstbilgiler ve gövde değiştirilmediği sürece yönlendirilmiş bir ileti doğrulanmaya devam eder.
Bu, SPF'nin zayıflığını mükemmel biçimde tamamlar. Bir ileti yönlendirildiğinde bağlantı IP'si değiştiği için SPF başarısız olabilir; ancak DKIM yine geçebilir ve DMARC'ın meşru e-postayı kabul etmesine olanak tanır.
DKIM'in Sınırlamaları
DKIM güçlüdür, ancak tek başına yeterli değildir:
- Bir alan adının iletiyi imzaladığını kanıtlar, ancak imzalayan alan adının görünen Gönderen üstbilgisiyle eşleşmesini zorunlu kılmaz; bu, DMARC hizalamasının görevidir
- Saldırgan, e-postayı kendi alan adının geçerli DKIM key'iyle imzalayabilir
- Sızdırılmış bir özel key, key döndürülerek devre dışı bırakılana kadar saldırganın geçerli imzalar oluşturmasına izin verir
Sahteciliğe karşı anlamlı bir koruma sağlamak için DKIM, DMARC ile birleştirilmelidir.
Hızlı Kontrol
DKIM anlayışınızı test edin.
Özet
DKIM'in iletileri nasıl imzaladığını öğrendiniz:
- DKIM, kaynağı ve bütünlüğü kanıtlayan kriptografik bir imza ekler
- Sunucuda imzalama işlemi için özel key kullanılır; açık key, DNS'te bir seçici altında yayımlanır
- Gövde karması değişiklikleri belirler; kanonikleştirme zararsız değişiklikleri tolere eder
- Seçiciler güvenli key döndürmeyi etkinleştirir ve SPF'nin başarısız olduğu yönlendirme durumlarında DKIM çalışmaya devam eder
- İmzayı görünen Gönderen ile ilişkilendirmek için DKIM'in hâlâ DMARC hizalamasına ihtiyacı vardır
Sırada, SPF ve DKIM'i DMARC ilkesi ve raporlamasıyla bir araya getireceksiniz.
Yapay zeka eğitmeniyle Cyber Security Academy öğren — ücretsiz
Tarayıcında gerçek kod yaz ve çalıştır, 7/24 yapay zeka eğitmeninden anında yardım al; web'de ya da uygulamada kaldığın yerden devam et.
- Kurslar
- 76
- Dersler
- 303
Sıkça Sorulan Sorular
“DKIM İmzalama” dersi ücretsiz mi?
Evet — “DKIM İmzalama” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Cyber Security Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Cyber Security Academy kursu toplamda 4 dersten oluşur.
“DKIM İmzalama” dersinde ne öğreneceğim?
İletileri kriptografik olarak imzalama. Cyber Security Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Cyber Security Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Cyber Security Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.
“DKIM İmzalama” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Cyber Security Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Cyber Security Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.