AES
Vikipedi, özgür ansiklopedi
AES (Advanced Encryption Standard; Gelişmiş Şifreleme Standardı), uluslararası olarak kullanılan bir şifreleme (kripto) sistemidir.
Belçikalı Vincent Rijmen ve Joan Daemen tarafından geliştirilmiş, DES'in ve diğer olası algoritmaların zayıf ve paranoyak yönlerini tamamen temizleyerek, matematikle oluşturulmuş algoritma. Bruce Schneier'in twofish'ini ve rsa'in rc6'sini eleyerek 1997'de nist'in yarışmasını kazanmış ve yeni şifreleme standardı olmuştur.
DES'in linear ve differential cryptoanalysis karşısında yenik düştüğü durumlara düşmemesi için özel önlemler alınmış, round içerisindeki xor'lamaların birbirine yakın bitlerdeki probabilistic bias'larının takip edilememesi için, des'te yer almayan mixcolomn ve shiftrow türü işlemlerle 128bitlik 8bitlik 4 satır ve 4 sütüna ayrılmış plaintexti çorbaya döndürmektedir. bugün bilinen tüm akademik ve pratik saldırılara, bruteforce'lara karşı dayanıklı olduğu düşünülmektedir. 128, 256 ve 512 bitlik key'leri destekleyebilmekte, 8bitlik smart card işlemcilerinden 128bitlik olası fütüristik çiplere kadar destekleyebilecek şekilde tasarlanmıştır.
ECB ve CBC gibi modlarla kullanılabilmektedir. NSA'ın hiçbir şekilde nasıl oluşturduğunu açıklamadığı ve eff'yi ve diğer meraklı şahsiyetleri(1000'lerce kişilik bir komunite) yıllarca peşinde sürüklediği sbox'lara karşılık aes'in sbox'ı, 8. dereceden irreducible bir polinom olan x^8+x^4+x^3+x+1 ile oluşturduğu finite field ile construct edilmekte olup, açık seçik bir matematiğe dayanmaktadır. 2. round'ın hemen ardından tam bir diffusion gerçekleşmekte ve tek bir byte değiştiğinde sonuçtaki 4 byte'ın hepsi değişmekte ve linear & differential cryptoanalysis demon'larını kendinden uzak tutabilmektedir, ayrıca key scheduler'ında özel olarak round'lar arasındaki key'lerin olası ortak bitlerinin minimize edilmesi için önlemler alınmıştır. bruteforce attack'lar genelde 6 rounda kadar etkili olduklarından eklenen 4 roundun yeterince güvenlik sağladığı düşünülmektedir.