5. Atom Belgelerinin Güvenliği
Atom, XML'e dayalı bir biçim olduğundan içeriğinin güvenliği için mevcut XML güvenlik düzenekleri kullanılabilir.
Ulamların ve/veya girdilerin üreticileri ve ulamları ve/veya girdileri toplayan aracılar şifreleme ve imzalama için sebepler olduğundan yoksa içeriğin korunmamış olacağından bahsedebilir. Örneğin, bir tüccar ürünü için indirim kuponu içeren bir iletiyi sayısal olarak imzalayabilir. Müşteri ekstrelerini teslim ederken Atom kullanan bir banka, müşterisinin parasal bilgilerini korumak ve onların doğruluğunu kanıtlamak için bu iletileri şifrelemeyi ve imzalamayı çok isteyebilir. Aracılar, edilgen bir gözlemcinin alıcıların ilgilendiği konular hakkında fikir edinmemesi için topladıkları ulamları şifrelemek isteyebilir. Böyle daha pek çok örnek verilebilir.
Bu bölümdeki algoritma gereksinimleri Atom İşlemcilere ilişkindir. Bir alıcının en azından belirtilen şifreleme algoritmasını kullanarak iletileri elde edebilir olmasını gerektirir. Bu gereksinimler göndericinin seçebileceği algoritmaları sınırlamaz.
5.1. Sayısal İmzalar
Bir Atom Belgesinin tepe elemanı (yani, Atom Ulama Belgesi için atom:feed
, Atom Girdi Belgesi için atom:entry
) veya bir atom:entry
elemanı, [W3C.REC-xmldsig-core-20020212] XML-İmza Sözdizimi ve İşlemleri Belgesi tarafından açıklandığı gibi bir Zarflı İmza içerebilir *SEÇİMLİK*.
Atom İşlemcileri böyle bir imzayı doğrulama yeteneğine sahip olmadıkları gerekçesi ile böyle bir Atom Belgesini reddetmemelidir *ZORUNLU*; işleme devam etmelidir *ZORUNLU* ancak, kullanıcıyı imzayı doğrulayamadıkları konusunda bilgilendirmelidir *SEÇİMLİK*.
Başka bir deyişle, belge elemanının bir çocuğu olarak yerel ismi "Signature" olan ve isim alanı olarak "http://www.w3.org/2000/09/xmldsig#" URI'li bir elemanın varlığında, Atom İşlemci onun varlığından dolayı başarısızlığa uğramamalıdır *ZORUNLU*.
Atom Belgesindeki diğer elemanlar kendi tanımlarında açıkça böyle bir yeteneği belirtmedikleri takdirde imzalanmamalıdır *ZORUNLU*.
[W3C.REC-xmldsig-core-20020212] belgesinin 6.5.1. bölümü Meşru Olarak XML [W3C.REC-xml-c14n-20010315] için destek gerektirir. Bununla birlikte, çoğu gerçeklenimci, imzalı XML belgelerin diğer XML belgelerin imzalarını bozdukları gerekçesiyle onu kullanmazlar. Bu nedenle, imzalı Atom Belgelerinin doğrulayan Atom İşlemcilerinin, Ayrıcalıklı XML Meşrulaştırma [W3C.REC-xml-exc-c14n-20020718] belgesinde belirtildiği gibi, "http://www.w3.org/2001/10/xml-exc-c14n#" URI'si tarafından betimlenen ayrıcalıklı XML meşrulaştırma yöntemi ile meşrulaştırılabilmeleri gerekir *ZORUNLU*.
Toplayıcılar, vb. gibi aracılar kendi atom:source
elemanını içermeyen girdiler için bir atom:source
elemanı eklemek gereği duyabilir. Böyle bir girdinin imzalı olması halinde, ekleme imzayı bozacaktır. Bu nedenle, tek tek imzalanmış girdilerin yayıncıları kesinlikle, bu girdiler imzalanmadan önce onlara bir atom:source
elemanı eklemeyi düşünmelidir *ÖNERİ*. Gerçeklenimcilerin ayrıca, "xml:" isim alanında meşrulaştırma ile etkileşen imleme kullanımı ile ilgili konulardan haberdar olması gerekir.
[W3C.REC-xmldsig-core-20020212] belgesinin 4.4.2. bölümü DSA imzaları ve RSA imzaları için destek önerileri için destek gerektirir. Bununla birlikte, DSA'ya nazaran RSA pazarının daha büyük rağbet görmesinden dolayı, imzalı Atom Belgelerini doğrulayan Atom İşlemcilerinin RSA imzalarını doğrulayabilmesi gerekir *ZORUNLU*, fakat DSA imzalarını doğrulayabilmeleri gerekli değildir. İleti kimlik kanıtlama kodu (İKKK) için anahtar malzemesinin kimlik kanıtlaması gerektiği gibi yapılamazsa, Atom Belgeleri imzalar için İKKK'ları kullanmamaları *ÖNERİ* gerektiğinden dolayı güvenlik kaygıları ortaya çıkabilir.
5.2. Şifreleme
Bir Atom Belgesinin tepe elemanı (yani, Atom Ulama Belgesi için atom:feed
, Atom Girdi Belgesi için atom:entry
), XML Şifreleme Sözdizimi ve İşlemleri [W3C.REC-xmlenc-core-20021210] belgesi tarafından açıklanan düzenekler kullanılarak şifrelenebilir *SEÇİMLİK*.
[W3C.REC-xmlenc-core-20021210] belgesinin 5.1. bölümü TripleDES, AES-128 ve AES-256 için destek gerektirir. Atom Belgelerinin şifrelerini çözen Atom İşlemciler Şifre Bloku Zincirleme kipinde (Cipher Block Chaining - CBC) AES-128 ile şifre çözebilmelidir *ZORUNLU*.
[W3C.REC-xmlenc-core-20021210] belgesine dayalı şifreleme özgün belgenin bütünlüğünden emin olmak için yeterli değildir. Bir iletinin şifresinin çözümlenememesine veya çözümlense bile içeriğin anlam değiştirmesine yol açtığı bilinen şifreleme saldırıları vardır. Bu nedenle, Atom belgelerinin şifrelerini çözümleyen Atom İşlemcileri belgede (eğer varsa) belge bitözetini ya da imza bitözetini doğrulayarak şifreli belgenin bütünlüğünü sınamalıdır *ÖNERİ*.
5.3. İmzaladıktan sonra Şifreleme
Bir Atom Belgesi hem imzalı hem de şifreli olması gerektiğinde, genellikle en iyisi belgeyi önce imzalamak sonra da imzalı belgeyi şifrelemektir. Bu, imzalı öğenin kimliği de dahil olmak üzere tüm bilgiyi şifreleyerek asıl belgenin bütünlüğünü sağlar. Kimlik kanıtlama için İKKK kullanılmışsa, belgede izlenecek sıra imzaladıktan sonra şifrelemek olmalı *ZORUNLU*, başka bir yol kullanılmamalıdır.