AES S Kutusua Bezer S Kutuları Ürete Smulatör M.Tolga SAKALLI Trakya Üverstes Blgsayar Mühedslğ tolga@trakya.edu.tr Erca BULUŞ Trakya Üverstes Blgsayar Mühedslğ ercab@trakya.edu.tr Adaç ŞAHİN Trakya Üverstes Blgsayar Mühedslğ adacs@trakya.edu.tr Fatma BÜYÜKSARAÇOĞLU Trakya Üverstes Blgsayar Mühedslğ fbuyuksaracoglu@trakya.edu.tr Nusret BULUŞ Trakya Üverstes Blgsayar Mühedslğ usretb@trakya.edu.tr ÖZET AES (Advaced Ecrypto Stadard), güümüzde kullaıla e öeml blok şfreleme algortmalarıda brdr. Gücüü şfreleme algortmasıı e öeml yapılarıda br ola S kutularıda almaktadır. S kutuları blok şfreleme algortmalarıdak tek oleer yapıdır. AES blok şfreleme algortmasıda bt grşe ve bt çıkışa sahp cebrsel olarak tasarlamış br S kutusu kullaılmıştır. Çalışmamızda, AES S kutusua bezer S kutuları tasarlaya br smulatör tasarlamıştır. Ayrıca smulatör herhag br S kutusu ç leer ve dferesyel krptaalz ç öeml ola leer yaklaşım tablosu ve XOR dağılım tablosuu oluşturmaktadır. Bu tasarım GF( ) (Galos alaı) artmetğ kullaılarak gerçekleştrlmştr. ABSTRACT AES (Advaced Ecrypto Stadard) s oe of mportat block cphers used ecrypto facltes. It takes ts stregth from a S-box whch s very mportat compoet of the algorthm. S-boxes are oly olear compoet of a ecrypto algorthm. I AES block cpher, -bt put ad -bt output algebracally desged a S-box s used. I our study, we have desged a smulator whch geerates AES S- box lke S-boxes ad obtas lear approxmato table ad XOR dstrbuto table, whch are very mportat vew of lear ad dfferetal cryptaalyss respectvely, of the geerated S-boxes. Ths desg s realzed usg Galos Feld, GF( ),arthmetc. Aahtar Kelmeler: AES (Advaced Ecrypto Algorthm), S Kutusu Tasarımı. GİRİŞ Şfreleme, Sezar da başlayarak gelşmekte, ver her türlü letmde ver gzlemes ve güvel br şeklde letlmes ç kullaılmaktadır. Şfreleme şlem sağlaya şfreleme algortmaları br krptosstem temel öğesdr. Br krptosstem; şfreleme algortması, aahtar, açık met ve şfrel metde oluşmaktadır. Blok şfreleme algortmaları smetrk şfreleme algortmaları grubua grer. Bu tür algortmalarda şfreleme ve deşfreleme şlemler ayı aahtarı kullaır. Blok şfreleme algortmaları güümüzde krptografde öeml br yer taşımaktadır. Bu algortmalara örek olarak DES (Data Ecrypto Stadard) [], AES (Advaced Ecrypto Stadard) [], [3] verleblr. Blok şfreleme algortmalarıı gücü söz kousu olduğuda algortmada kullaıla S kutuları, dögü sayısı, blok uzuluğu, aahtarı uzuluğu büyük öem taşımaktadır. Dğer yada algortmaya yapıla saldırılara karşı dayaıklılıkta güümüz algortmalarıı gücüü ölçülmesde br kıstas olmuştur. Bu saldırılara örek olarak leer krptaalz [] ve dferasyel krptaalz [5] verleblr. Ayrıca bahsedle saldırılar DES algortmasıa karşı başarıyla kullaılmıştır. Bu saldırılar daha güçlü şfreleme algortmalarıı tasarımıda büyük katkı sağlamışlardır. (Ör. AES) Bu saldırılarda sora kesk dferasyel krptaalz [6] ve yüksek derecede dferasyel krptaalz [6] gb çeştl saldırı tpler gelştrlmştr. AES şfreleme algortması, ble tüm saldırı tplere karşı güveldr. Tasarımıda kullaıla S kutusu (Nyberg [7] çalışmasıda eslelmştr) solu alada ters alma şlem kullaılması le gerçekleştrlmştr. Bu algortmayı leer ve dferasyel saldırılara karşı güvel kılarke, algortmaı tasarımıda kullaıla, MxColums (sütuları karıştırma) - kc leer döüşüm, leer ve dferasyel saldırılarda az sayıda aktf S kutusuu ş çe grmese ma olmaktadır. Çalışmamızda, ( bt grş, bt çıkış) AES S kutularıa bezer S kutuları ürete br smulatör gelştrdk ve S kutuları tasarlaırke solu ala GF( ) de şlemler (toplama ve ters alma) kulladık. Ayrıca smulatör üretle herhag br S kutusu ç k güvelk krter ola LAT (Lear Approxmato Table Leer Yaklaşım Tablosu) ve XOR
Dstrbuto Table (XOR Dağılım Tablosu) değerler ortaya koymaktadır.. AES AES (Rjdael) algortması bt ver bloklarıı, 9, 56 bt aahtar seçeekler le şfreleye br algortmadır. SPN [], [9], [], [] algortmasıı geş br çeşddr. Dögü sayısı aahtar geşlğe göre değşmektedr. bt aahtar ç dögüde şfreleme yaparke 9 ve 56 bt aahtarlar ç sırasıyla ve dögüde şfreleme yapmaktadır. AES algortmasıda her dögü dört katmada oluşur. İlk olarak bt ver byte matrse döüştürülür. Daha sora her dögüde sırasıyla byte ları yerdeğştrmes, satırları ötelemes, sütuları karıştırılması ve aahtar plalamada gele o dögü ç belrlee aahtar le XOR lama şlemler yapılır. ları yerdeğştrlmesde 6 byte değer her br bt grşl ve bt çıkışlı S kutusua sokulur. S kutusu değerler, Galos alaı da (Galos Feld - GF) GF( ), btlk polom ç ters alıdıkta sora leer br döüşüme sokularak elde edlmştr. ötelemes şlemde byte matrsde satırlar ötelemş ve sütuları karıştırılması şlemde herhag br sütu ç o sütudak değerler karıştırılmıştır. Dögüü so katmaıda se o dögüye at aahtar le XOR lama yapılmaktadır. Şekl, bt aahtar le şfreleme ç AES algortmasıı göstermektedr.. AES S Kutusu 3. S KUTUSU TASARIMI Bu bölümde çalışmamızı matematk alt yapısıı oluşturmak ç teoreme ve taıma değlecektr. Bu teorem spatı yapılmamıştır acak spatlar [] de elde edleblr. Teorem. Z m eğer m asal sayı se br aladır. Taım. Z m br ala olmak üzere set = Zm[ x]: a x : a Zm, Z m üzere br = polom halka olarak smledrlr. Z m [] x br elemaı Z m üzere polom olarak smledrlr. Açık Met ( Bt). Dögü. Dögü 3. Dögü 3 5 6 7 6 9 3 5 6 K K K K 3 AES S kutusu ( Tablosu) k döüşüm kullaılarak elde edlmştr: - GF( ) de ters alma şlem drgeemez polom 3 x + x + x + x + kullaılarak gerçekleştrlr. İkl (bary) temslde kedse eşleştrlr. - Affe döüşüm, GF() üzerde uygulaır. Döüşüm aşağıda gösterlmştr.. Dögü 5. Dögü 6. Dögü K K 5 K 6 y x y x y x y3 x3 = +. y x y5 x5 y6 x6 y x 7 7 7. Dögü. Dögü 9. Dögü. Dögü K Şfrel Met K 7 K K 9 Şekl. Tüm AES Algortması ( bt aahtar ç)
Poztf derecel br polom derece( (x) derece( (x) f x ) = = (x ( a x ç g )) < derece( f ) ), derece( h (x) )< f ) ve f ( x) = g( x) h( x) şartlarıı sağlayacak şeklde k polom varsa f (x) polomu Z m üzere drgeeblr aks takdrde poztf derecel f (x) polomu Z m üzere drgeemez polom olduğu söyleeblr.. Teorem. f (x), dereces de büyük Z m alaı üzere br polom olmak üzere Z m [] x / f ( x) sadece ve sadece f (x) drgeemez se aladır. AES S kutusu solu alada ters alma şlem yapılarak elde edlmştr. AES S kutusu ç 3 [] x /( x + x + x + x ) Z solu alaıda çarpmaya + göre ters alma şlem yapılmıştır. Daha sora elde edle değerler üzere affe döüşüm uygulamıştır. Bu döüşüm tüm S kutusu taımıı daha kompleks hale getrmektedr ve terpolasyo saldırılarıa [3] karşı S kutusuu bast cebrsel fades modfye etme amacıdadır. Yukarıdak taım ve fadelerde yola çıkarak. derecede çeştl drgeemez polomlar bularak smulator tasarımıı gerçekleştreblrz. Tablo olası tüm. derecede drgeemez polomları göstermektedr. Tablo de polomlar dz formatıdadır. Öreğ 6 5 polom olarak x + x + x + x + x + x + şeklde temsl edlmektedr. Tablo.. Derecede Tüm drgeemez Polomlar İdrgeemez Polomlar Asal ve İdrgeemez Polomlar 3. Solu Alada Ters Alma İşlem -bt k polomu çarpımıı kalaı seçle drgeemez poloma göre se o zama k polom brbr o drgeemez poloma göre tersdr. İdrgeemez br poloma göre ters alma şlem ç k yötem öerleblr. Bu yötemlerde lk GF ( m ) yada F m ç tablo oluşturmaktır. Acak küçük m değerler ç bu etkl olacaktır. Solu alada çarpmaya göre ters alma şlem ç kc yötem olarak kl Eucldea algortmasıı kullaablrz. Örek : F ç drgeemez polom olarak x + x + seçelm. Bu alaı karakterstğ, elema sayısı 6 ve bu aladak br üreteç elema α = () dr. Bu α üreteç elemaıı üsler düşüelm. 3 α = (), α = (), α = ), α = () 5 6 7 α = (), α = (), α = (), α = () 9 α = (), α = (), α = (), α = () 3 5 α = (), α = (), α = (), α = () Dolayısıyla a F m ve a = α olmak üzere a ı = ( ) mod( m ) çarpmaya göre ters a α şeklde verleblr. Burada yola çıkarak (() ters (), () ters (), () ters ()...) şeklde buluablr. Bz çalışmamızda kl Eucldea algortmasıı kulladık. Algortma, bu kullaıla Eucldea algortmasıı göstermektedr []. Algortma. Ters Alma İşlem ç İkl Eucldea Algortması Grş: Çıkış: a F m, a. a mod f. Adım : u a, v f, g, g. Adım : x, u yu tam böldüğü sürece aşağıdak şlemler gerçekle. Adım.: u u x. Adım.: Eğer x, g tam bölerse g g x yap aks taktrde g ( g + f ) x yap.
Adım 3: Eğer u = se ( g ) değer dödür. Adım : Eğer derece ( u ) < derece( v ) se u v, g g yap. u u + v, g g + g. Adım 5: Adım 6: Adım ye gt. İkl Eucldea algortması () ı ters örek de gösterldğ gb p ( x) = x + yada () şeklde bulacaktır. Bu souç; derece ( p ( x) ) < ve derece ( p ( x) ) < 3 olmak 3 üzere p ( x).( x + x + x) + p( x).( x + x + ) = 3 fadesde p ( x), ( x + x + x) polomuu çarpmaya göre ters olacak şeklde gösterleblr. Yukarıdak fadede p ( ) ve ( ) x tr. x 3. Affe (leer) Döüşüm p [] x Affe (leer) döüşümü, solu alada ters alma şlem gerçekleştrldkte sora her elema üzerde uygulaa, leer ve dferasyel krptaalze karşı herhag br koruma sağlamaya fakat S kutusuu f ( x) = x, x GF( ) şekldek bast cebrsel fades kompleks hale getrmek ç kullaıla br döüşümdür. Çalışmamızda, farklı affe döüşüm seçeek olarak verlmştr. Bularda herhag brs kulllaılablr. Z. S KUTULARI İÇİN İKİ ÖNEMLİ GÜVENLİK KRİTERİ Blok şfreleme algortmalarıa yöelk k öeml saldırı tekğ leer ve dferasyel krptaalzdr. Bu saldırılarda leer krptaalz 993 yılıda Matsu [] tarafıda teork br saldırı olarak keşfedlmştr. Daha sora DES algortmasıa karşı başarı le uygulamıştır. Leer krptaalz şfrel met btler le açık met btler arasıdak yüksek olasılıkta leer fadeler meydaa gelme avatajıı kullaır. Dferasyel krptaalz se 99 yılıda Bham [5] tarafıda keşfedlmştr. Leer krptaalze bezemektedr. Farklı olarak seçlmş açık met saldırısıdır ve şfre açık met farkları le so dögüdek farkları yüksek olma olasılığıı avatajıı kullama fkr temelldr. Her k saldırı tekğ de şfre tek oleer yapısı ola S kutularıı kullaarak saldırıyı amaç edr.. S Kutularıı Leer Yaklaşım Tablosu Leer yaklaşım tablosu (Leer Approxmato Table) (LAT)[5], leer krptaalze karşı S kutularıı güvelğ ölçülmesde çok öeml br test krterdr. Verle br S kutusu S : Z Z w. satır ve c. kolo LAT (w, c) () dek gb taımlaablr. () dek fadede P grş btler ve S(P) S kutusuu çıkış btler, okta ürüü göstermektedr. boyutuda br S kutusu ç leer yaklaşım tablosu matrse dek düşer. w P = c S(P)} LAT(w, c) = #{P Z () E büyük LAT grş ( max LATS (w, c) ) çok w,c öemldr çükü leer krptaalz karmaşıklığı e büyük grşe bağlıdır. Ayrıca e büyük LAT grş br S kutusuu oleerlğ bulmada kullaılablr. () fades buu göstermektedr. NLMS = max LATS (w,c) () w,c. S Kutularıı XOR Tablosu (Fark Dağılım Tablosu) Dferasyel krptaalz saldırısı blok şfreleme algortmasıda kullaıla S kutularıı fark tablosudak (XOR tablosuda) [6], [7] bazı özel grşler kullaılması esasıa dayaır. boyutuda br S kutusu ç XOR tablosu matrse dek düşer. Br S kutusu S : Z Z ve ( a, b) XOR tablosua grş olarak deksles. P grş vektörü ç a kadar değştrldğde, P a, çıkışı Y = S(P) S(P a) sayısı b olsu. O zama a Z (,...) ve b Z olmak üzere XOR S (a,b) (3) dek gb fade edleblr. XORS (a,b) = #{P Z S(P) S(P a) = b} (3) XOR max (S) = maxxors(a, b) () a,b () fades br S kutusuu maksmum değer e geş XOR tablosu grş olduğuu göstermektedr a b : a ı b ye, b a ya ataması alamıdadır. Z : ) Z = GF( solu alaıda boyutlu vektör. : x, u Z olmak üzere x w = x w xw... x w
5 TASARLANAN SİMULATÖR Çalışmamızda tasarlaa smulatör daha öce alatıldığı gb sırasıyla herhag br. derecede drgeemez polom kullaarak solu alada ters alma şlem yapmakta sorada seçle br affe döüşüm kullaılarak her ters alıa değer bu döüşümde geçmektedr. Daha sorada herhag üretle br S kutusu ç matrs boyutuda oluşa LAT ve XOR tablolarıı seçle br değere karşı tek satırıı göstermektedr. LAT ç bu değer grş toplamı ke XOR tablosu ç seçle değer grş farkıdır. Çalışmamızda asal polomlar ve AES S kutusuu tasarımıda kullaıla drgeemez polom programda seçeek olarak koulmuş dğer drgeemez polomlar ç se elle grlme mkaı verlmştr. Örek, asal polom ya 6 5 x + x + x + x + polomu kullaılarak tasarlaa smulatörü göstermektedr. Smulatör Vsual Studo.NET ortamıda hazırlamıştır. Örek : Asal polom kullaılarak üretle S kutusuu smulatör aracılığıyla gözlemes. Adım Adım
Adım 3 Adım
Adım 5 6. SİMULATÖR ARACILIĞIYLA ELDE EDİLEN SONUÇLAR Çalışmamızda tasarlaa smulatör AES bezer cebrsel S kutuları tasarlamaı yaıda LAT ve XOR tabloları ç elde edle değerler ortaya koymaktadır. Üretle S kutuları zomorfk dğer br alatımla ayı yapıda olduğuda dolayı XOR ve LAT tabloları açısıda bezer özellkler ortaya koymaktadır. Tüm S kutuları ç LAT ve XOR tablolarıı grş toplamı ve fark değer e olursa olsu ( değer harç) tüm satırları ayı dağılımı vermektedr. Ya grş e olursa olsu çıkış dağılımı ayıdır. Tablo ve Tablo 3 grş e olursa olsu tüm S kutuları ç sırasıyla çıkışı fark dağılımıı ve çıkış toplamıı dağılımıı vermektedr. Tablo de kullaıla p fark değer, Tablo 3 te kullaıla p çıkış toplamıı mutlak değer, φse meydaa gele etmektedr. p sayısıı temsl Tablo. Tüm S kutuları ç Elde Edle Çıkış Farkıı Dağılımı 3 p φ 6 9
Tablo 3. Tüm S kutuları ç Elde Edle Çıkış Toplamıı Mutlak Değerler Dağılımı 3 5 6 7 9 p 6 6 φ 5 6 36 3 36 7 Tablo 3 tek souçlarda yararlaarak ve () fades kullaarak tüm S kutularıı oleerlğ 7 6 = olarak buluur. Bu S kutularıı ormal oleer değer se bt grş bt çıkışa sahp br S kutusu ç maksmum oleer değer ola (5) fadese bölüerek buluablr. (5) Tüm S kutularıı ormal oleer değer =,93olarak buluur. Bu da S kutularıı 7 3 yüksek oleerlğer sahp olduğuu göstermektedr 7. SONUÇLAR Çalışmamızda AES S kutusua bezer S kutuları ürete br smulatör tasarladık. Cebrsel üretle S kutularıda herhag br kolaylıkla br şfreleme algortmasıda kullaılablr. Ayrıca bu zomorfk S kutuları LAT ve XOR tablosu (k öeml güvelk krter) açısıda bezer özellkler göstermektedr. Çalışmamız sterse yapılacak br k küçük değşklkle şfreleme algortması tasarımıda kullaılacak br araç görev görecektr. KAYNAKLAR [] FIPS 6-3, Data Ecrypto Stadard, Federal Iformato Processg Stadard (FIPS), Publcato 6-3, Natoal Bureau of Stadards, U.S. Departmet of Commerce, Washgto D.C., October 5, 999. [] Daeme J., V. Rjme, AES Proposal: Rjdael, Frst Advaced Ecrypto Coferece, Calfora, 99. [3] FIPS 97, Advaced Ecrypto Stadard, Federal Iformato Processg Stadard (FIPS), Publcato 97, Natoal Bureau of Stadards, U.S. Departmet of Commerce, Washgto D.C., November 6,. [] Matsu M., Lear Cryptaalyss Method for DES Cpher, Advaces Cryptology - Eurocrypt '93, Sprger-Verlag, pp. 36-397, 99. [5] Bham E. ad A. Shamr, Dfferetal Cryptaalyss of DES-lke Cryptosystems, Joural of Cryptology, Vol, No, pp. 3-7, 99. [6] Kudse L. R, Trucated ad Hgher Order Dfferetals, Fast Software Ecrypto, Sprger- Verlag, pp. 96-, 995. [7] Nyberg K., Dfferetally Uform Mappgs for Cryptography, Advaces Cryptology -Eurocrypt 93, Sprger- Verlag, pp 55-6, 99. [] Heys H., S. E. Tavares, Substtuto-Permutato Networks Resstat to Dfferetal ad Lear Cryptaalyss, Joural of Cryptology, Vol 9, No, pp. -9, 996. [9] Heys H., A Tutoral o Lear ad Dfferetal Cryptaalyss, Cryptologa, Vol 6, No 3 pp. 9-,. [] Kelher L., Lear Cryptaalyss of Substtuto- Permutato Networks, PHd Thess, 3. [] Stso D. R., Cryptography: Theory ad Practce, Secod Edto, CRC Press,. [] Lg S., Xg C., Codg Theory : A Frst Course, Cambrdge Uversty Press,. [3] Daeme J., Rjme V., The Block Cpher Rjdael, Smart Card Research ad Applcatos, LNCS, Sprger-Verlag, pp. -96, [] Fog K., Hakerso D., Lopez J., ad Meezes A., Feld Iverso ad pot halvg revsted, techcal report COOR 3. [5] Çeçe S., Nolearty ad Propagato Characterstcs of Substtuto boxes, M. S. Thess, Mddle East Techcal Uversty, Türkye,. [6] Kavut S., Yücel D. M., O Some Cryptographc Propertes of Rjdael, Lecture Notes Computer Scece: Iformato Assurace Computer Networks, Methods, Models ad Archtectures for Network Securty, Sprger-Verlag, pp.3-3, May. [7] K. Chu, S. Km, S. Lee, S. H. Sug, S. Yoo, Dfferetal ad lear cryptaalyss for -roud SPNs, Iformato Processg Letters, Elsever,.