You are on page 1of 6

AES S-kutusuna Benzer S-kutularının Cebirsel İfadelerini Elde Etmek İçin

Yeni Bir Yöntem


1
Osman KARAAHMETOĞLU, 1M.Tolga SAKALLI, 2Ercan BULUŞ
1
Trakya Üniversitesi, Mühendislik Mimarlık Fakültesi, Bilgisayar Mühendisliği, Edirne
1
Trakya Üniversitesi, Mühendislik Mimarlık Fakültesi, Bilgisayar Mühendisliği, Edirne
2
Namık Kemal Üniversitesi, Çorlu Mühendislik Fakültesi, Bilgisayar Mühendisliği, Çorlu-Tekirdağ
okaraahmetoglu@fintek.com.tr, tolga@trakya.edu.tr, ercanbulus@nku.edu.tr

ABSTRACT
S-boxes are vital elements in the design of symmetric ciphers. Moreover, S-boxes are only nonlinear and the most important
component of a block cipher. To date, the techniques for the construction of S-boxes have included pseudo-random
generation, finite field inversion, power mappings and heuristic techniques. From these techniques, the use of finite field
inversion operation in the construction of an S-box yields linear approximation and difference distribution tables in which the
entries are close to uniform. Therefore, inversion mapping or power mapping over a finite field are so popular design
techniques in the design of algebraic S-boxes. However, the place of an affine transformation added to an algebraic S-box
changes the number of terms in the algebraic expression of an S-box. In this study, we present a new method to resolve the
algebraic expression of AES S-box like S-boxes according to the given probable cases.

Key words: S-boxes, AES S-box, Algebraic Expression

1. GİRİŞ S ( x) "05" x254 "09" x253" f 9" x251"25" x247

S-kutuları blok ve akan şifreleme algoritmalarında " f 4" x239 "01" x223"b5" x191"8 f " x127 "63".
kullanılan ve şifreye güvenliğini veren en önemli yapıdır.
Diğer yandan AES şifresine ek olarak literatürde Square [5],
Bir S-kutusu n giriş bitinin farklı m çıkış bitine dönüşümünü
Shark [6] gibi şifrelerde kullanılan S-kutuları sonlu cisim
yapar ve şifrede yerdeğiştirme görevini yerine getirir. S-
kutularının doyurması gereken bazı kriptografik özellikler GF (2 n ) üzerine ters haritalama tabanlıdır ve GF (2)
vardır [1]. Bunlar sırasıyla doğrusal olmama, doğrusal üzerine ikili bir doğrusal dönüşümü ters haritalama
saldırılar için önemli olan LAT (Linear Approximation işleminin çıkışında kullanmaktadırlar. Buna ek olarak
Table-Doğrusal Yaklaşım Tablosu), diferansiyel saldırılar literatürdeki diğer bir blok şifre olan Camellia [7] ise ikili
için önemli olan DDT (Difference Distribution Table-Fark bir doğrusal dönüşümü ters haritalama işleminden önce ve
Dağılım Tablosu-XOR Tablosu), bütünlük (completeness), sonra kullanmaktadır. Bu da doğrusal dönüşümün
çığ (avalanche), katı çığ (strict avalanche) gibi verilebilir. kullanılacağı yere ilişkin olarak üç farklı durumu işaret
etmektedir:
Bunun yanında şifreye yapılan saldırılar S-kutusunu hedef
almaktadır ve S-kutusunun bu saldırılara karşı dayanıklılığı
 İkili doğrusal dönüşümü ters haritalama işleminden
şifrenin de gücü ile ilişkilidir. Dolayısıyla saldırılara karşı
sonra kullanmak (durum 1, örnek AES),
dayanıklı S-kutusu tasarımları gerçekleştirilmelidir. 2001
 İkili doğrusal dönüşümü ters haritalama işleminden
yılında AES (Advanced Encryption Standard) olarak seçilen
doğrusal ve diferansiyel saldırılara dayanıklı olan Rijndael önce kullanmak (durum 2),
şifresi Nyberg’in [2] önerdiği sonlu cisimde ters haritalama  İkili doğrusal dönüşümleri ters haritalama işleminden
tabanlı 8-bit giriş ve 8-bit çıkışlı bir S-kutusunu hem önce hem de sonra kullanmak (durum 3, örnek
kullanmaktadır ve cebirsel ifadesi aşağıdaki gibidir: Camellia).
Bu bahsedilen durumlardan durum 2 ve durum 3 ile
f(x)  x 1, x  GF (28 ) , f (0)  0. tasarlanacak S-kutuları cebirsel ifadesindeki terim sayısı
açısından durum 1 ile tasarlanacak S-kutusuna göre önemli
Rijndael şifresinde kullanılan S-kutusunun en önemli
bir iyileştirme sunmaktadır [8]. Buna ek olarak uygulanacak
sakıncası yukarıda gösterilen cebirsel ifadenin basitliğidir.
doğrusal dönüşümün yeri diğer kriptografik özellikleri
Bu basit cebirsel ifade interpolasyon saldırıları gibi bazı
değiştirmemektedir. Bu çalışmada belirtilen durumlara göre
cebirsel saldırılara neden olabilmektedir. İnterpolasyon
tasarlanacak S-kutuları için sonlu cisim teorisinden de
saldırılarına karşı, AES S-kutusunun tek terimden
faydalanılarak hızlı, durum 2 ve durum 3 ile tasarlanacak S-
oluşmasının getirdiği zayıflık ters haritalama işleminin
kutularının neden terim sayısında iyileştirme yaptığını
sonuna eklenen bir doğrusal dönüşüm ile giderilmeye
açıklayıcı bir yöntem geliştirilmiştir. Buna ek olarak sunulan
çalışılmıştır. Böylelikle aşağıdaki ifadeden de görüldüğü
yöntem Lagrange interpolasyonuna alternatif ve daha hızlı
gibi AES S-kutusunun cebirsel ifadesindeki terim sayısı
bir yöntemdir.
kullanılan doğrusal dönüşüm sayesinde 1’den 9’a çıktığı
Lagrange interpolasyonu kullanılarak gösterilmiştir [3][4].
2. MATEMATİK ALTYAPI Tr ( 0 0 ) Tr ( 01 ) ..... Tr ( 0 n1 ) 
 
Bu bölümde makale boyunca kullanılacak olan matematiksel Tr ( 1 0 ) Tr ( 11 ) ..... Tr (1 n 1 ) 
alt yapının bir sunumu yapılacaktır. Sonlu cisimler teorisi ile A .  (4)
ilgili olarak daha ayrıntılı bilgi [9] ve [10]’dan elde  
 . 
edilebilir. Bu makalede gerekli görüldüğünde cisim Tr (  )Tr (  ) .... Tr (  )
elemanları hexadecimal gösterimde ifade edilebilir.  n1 0 n1 1 n1 n1 

Dolayısıyla  , GF (2 n ) sonlu cismini üretmek için kullanı-


Böylece giriş bitlerine uygulanacak dönüşüm işleminden
lan ilkel eleman olmak üzere;
sonraki çıkış koordinatları (5) ifadesi ile gösterilebilir.

bn 1 n 1  bn 2 n2  ...  b0 , bi  0,1 fi , 0  i  n-1 (5)

sonlu cisim elemanı (bn 1bn 2 ...b0 ) bitlerini içeren Giriş bitlerine uygulanacak doğrusal dönüşüm sonucu elde
hexadecimal sayı olarak temsil edilebilir. edilen çıkış bitlerini kullanarak doğrusal dönüşümün
cebirsel ifadesi (6)’daki gibi elde edilebilir.
F  GF ( p), K  GF ( p n ) ve   K olsun. O zaman alt
n 1
cisim F ’in  ’ya göre trace (iz) fonksiyonu A( x )   f
i 0
i
i
(6)
2 n 1
TrFK ( )     p   p  ...   p
Örnek 1, yukarıdaki tanım ve matematik alt yapıyı
şeklinde ifade edilebilir ve karışıklığın olmayacağı kullanarak AES S-kutusunun doğrusal dönüşümünün
cebirsel ifadesinin elde edilişini göstermektedir.
durumlarda TrFK ifadesindeki alt ve üst indisler göz ardı
edilebilir. Örnek 1. AES S-kutusunun tasarımında kullanılan doğrusal
dönüşümü düşünelim. P ( x )  x8  x 4  x 3  x  1
 0 ...... n1 , GF (2) üzerine GF (2 n ) ’in herhangi bir indirgenemez polinomu ile oluşturulan sonlu cisimde bu
tabanı olmak üzere;  0 ..... n1 buna karşı gelen dual ikili doğrusal dönüşümün cebirsel ifadesini bulmaya
taban ve f ( x 0 , x1 ,......, x n 1 )  ( f 0 ( x),........ , f n1 ( x)) ise çalışalım.  , P (x ) polinomunun bir kökü olsun.     1
n ise ilkel elemanımız olsun (  , tüm cisim elemanlarını
GF (2 ) üzerine bir permütasyon olsun. O zaman
üretmemektedir). O zaman xi giriş biti değerleri 
n 1
de GF (2 n ) üzerine bijektif değerlerine bağlı olarak Bölüm 2’ de verilen tanımlara göre;
g ( x)   f ( x ,.......x
i 0
i i 0 n 1 )

n 1 x0  Tr (  228 x), x4  Tr (  73 x ),
bir haritadır. f (x) ’in her çıkış koordinatı, x  x 
i 0
i i x1  Tr (  204 x ), x5  Tr (  48 x), (7)
olmak üzere, (1) ifadesindeki gibi verilebilir [11][12]. x2  Tr (  179 x ), x6  Tr (  23 x ),
x3  Tr (  2 x), x7  Tr (  253 x).

f i ( x )  Tr ( g ( x )  i ) (1) (7) ifadesindeki gibi elde edilebilir. AES S-kutusunda


kullanılan doğrusal matrisin [3] çıkış koordinatları
Buna ek olarak (1) ifadesinde i dual taban değerleri (2) f 0 , f1 ,..., f 7 ise (8) ifadesindeki gibi elde edilebilir.
ifadesinde gösterildiği gibi hesaplanabilir [11][12].
f 0  Tr (  166 x)  1, f 4  Tr (  72 x ),
n 1
f1  Tr (  53 x)  1, f 5  Tr (  76 x)  1,
i  b  ki k (2)
(8)
k 0 f 2  Tr (  36 x ), f6  Tr (  51 x )  1,
f3  Tr (  11 x), f7  Tr (  26 x).
(2) ifadesinde B  bij   A1 ve A   aij  olmak üzere
   
n  n boyutundaki A matrisi elemanları Doğrusal matris çıkış koordinatlarını kullanarak doğrusal
dönüşümün cebirsel ifadesi polinom taban değerlerinin
aij  Tr ( i j ), 0  i, j  n  1 (3) 1, , 2
,..., 7 
olduğu bilgisinden yola çıkarak (6)
ifadesinde verildiği gibi
(3) ifadesindeki gibi gösterilebilir. A   aij  şeklindeki A
  A( x )  f 0  αf1  α 2 f 2  α 3 f 3  ...  α 7 f 7
matrisi (4) ifadesinde açık biçimde gösterilmiştir.
şeklinde tekrar yazılabilir. Bunun yanında GF ( 2 8 ) sonlu
cisminde 
1, , 2 ,..., 7  polinom taban değerleri
 cinsinden
Önerme 1. A, GF ( 2 n ) üzerine doğrusal bir haritalama
25 2 50 3 75 4 100 5 125
 ,   ,   ,   ,   ,
olsun. O zaman A( x ), x  GF (2 n ) olmak üzere GF ( 2 n )
6 150 7 175
  ,   üzerine doğrusallaştırılmış bir polinoma dayalı olarak
n 1
2i
şeklinde verilebilir. Elde edilen polinom taban değerleri
A(x) ifadesinde yerine konursa doğrusal dönüşümün
A( x )   x
i 0
i

cebirsel ifadesi A(x) aşağıdaki şekli alır:


şeklinde ifade edilebilir.
166 166 2 2 166 128 128
A( x)  (  x  ( ) x  .......  (  ) x )
  25 ( 53 x  (  53 )2 x 2  .......  ( 53 )128 x128 )
Önerme 2. F2n üzerine tersi alınabilir doğrusal
50 36 36 2 2 36 128 128
 ( x  ( ) x  .......  ( ) x )
dönüşümlerin kümesi ile GF ( 2 n ) üzerine
  75 (  11x  ( 11 ) 2 x 2  .......  (  11 )128 x128 )
doğrusallaştırılmış polinomların kümesi arasında birebir
  100 (  72 x  ( 72 )2 x 2  .......  ( 72 )128 x128 )
ilişki vardır [4].
  125 (  76 x  ( 76 )2 x 2  .......  ( 76 )128 x128 )
  150 (  51 x  ( 51 )2 x 2  .......  ( 51 )128 x128 ) Önerme 3. GF ( 2 n ) ’in bir fonksiyonu F ( x )  x d olsun ve
175 26 26 2 2 26 128 128
 ( x  ( ) x  .......  (  ) x )"63". bu fonksiyon f ( x1,...,x n )  ( f1 ( x) ,...,f n ( x)) boole
fonksiyonuna karşılık gelsin. O zaman f ( x1,...,x n ) ’nin çıkış
A(x ) ifadesindeki x teriminin katsayısı A0 ’ı
koordinatlarına uygulanan doğrusal bir dönüşüm ile elde
 166 ,  ( 5325 ) mod 255 ,  ( 5036 ) mod 255 ,  ( 7511) mod 255 , edilen boole fonksiyonuna karşılık gelen G(x) aşağıdaki
 (175  26 ) mod 255
 (100 72 ) mod 255 ,  (125 76 ) mod 255 ,  (150 51) mod 255 , şekilde ifade edilir.
değerlerinin toplamı şeklinde ifade edilebileceğinden yola n 1
d 2i
çıkarak G ( x)  b x
i0
i , ci  GF ( 2n )

A0   166   78   86   86   172   201   201   201 ,


Eğer doğrusal dönüşüm, affine bir dönüşüm ile yer
A0 "2 A""78"" DC "" DC ""7 A""2 D""2 D""2 D" , değiştirilirse, o zaman G(x) ,
A0 "05" n 1
d 2i

şeklinde elde edebiliriz. Diğer terimlerin katsayıları da aynı


G ( x)  b x
i 0
i  cn , ci  GF ( 2 n )

şekilde elde edildikten sonra sonuçlanan cebirsel ifade


aşağıdaki gibidir: şeklinde yazılabilir [4]. Gerçekte yukarıdaki tanım ve
teoriler ışığı altında bir üs haritalamadan sonra uygulanacak
doğrusal dönüşüm sonucunda üs fonksiyonu d ’nin
A( x ) "63""05" x "09" x 2 " f 9" x 4 "25" x 8 
cyclotomic kosetinde bulunan terimler cebirsel ifadede yer
" f 4" x 16 "01" x 32 " b5" x 64 "8 f " x 128 . alacaktır diyebiliriz.

Örnek 2. AES S-kutusunun cebirsel ifadesi, Örnek 1’ de


3. CEBİRSEL İFADENİN ELDE elde edilen doğrusal dönüşümün cebirsel ifadesinde x
EDİLMESİ İÇİN ÖNE SÜRÜLEN YENİ n

YÖNTEM yerine x 254 koyarak ve x  GF (2 n ) için x a  x a mod 2 1

olduğundan yola çıkarak


Bu bölümde öne sürülen cebirsel yöntem ile birlikte bu
S ( x) "63""05" x 254 "09" x 2542 " f 9" x 2544 "25" x 2548 
yöntem için gerekli teori ve tanımlar sunulacaktır.
" f 4" x 25416 "01" x 25432 " b5" x 25464 "8 f " x 254128 ,
t
2i
Tanım 1. L( x)   x i şeklinde ve  i , GF ( 2 n ) ’in
i 0 S ( x) "63"05" x254 "09" x253" f 9" x251"25" x247 
elemanı olmak üzere verilen özel biçime sahip polinoma
" f 4" x239 "01" x223"b5" x191"8 f " x127
GF ( 2 n ) üzerine doğrusallaştırılmış polinom denir.
şeklinde elde edilebilir.

Tanım 2. Bir tamsayı Teorem 1. GF ( 2 n ) ’in bir fonksiyonu F ( x )  x d olsun ve


d ’yi içeren mod N ’e göre
bu fonksiyon f ( x1,...,x n )  ( f1 ( x) ,...,f n ( x)) boole fonk-
cyclotomic koset
siyonuna karşılık gelsin. G (x ) ise f ( x1,...,x n ) sabitlenirken

Cd  d,dp,....,dp n 1
 (mod N ) x1,....,x n giriş bitlerine doğrusal bir dönüşüm uygulanarak
elde edilen bir boole haritasına karşılık gelen bir fonksiyon
şeklinde bir kümedir ve d , dp n  d (mod N ) olacak şekilde olsun. O zaman G (x ) ,
en küçük tamsayıdır. 2 n 1
G ( x)  b x
i 0
i
i
wt (i )  wt ( d ) için bi  0
şeklinde ifade edilir [13]. Teorem 1, doğrusal dönüşümün üs Örnek 3. n  8 ve GF (28 ), AES tanımlamalarında olduğu
fonksiyonunun önüne uygulandığında oluşacak cebirsel
ifadenin terimleri üzerindeki etkisini göstermektedir ve d gibi P( x )  x8  x 4  x 3  x  1 indirgenemez polinomu ile
üs fonksiyonunun Hamming ağırlığına eşit ve küçük tanımlanmış olsun. Buna ek olarak LA1 ve LA2 doğrusal
Hamming ağırlığında üsse sahip terimlerin cebirsel ifadede dönüşümlerinin cebirsel ifadesi aşağıdaki gibi olsun.
ortaya çıkacağını göstermektedir. Kısacası, Teorem 1 durum
2 için cebirsel ifadedeki terim sayısı hakkında bilgi
vermektedir. LA1 ( x) "63""05" x"09" x 2 " f 9" x 4 "25" x8 " f 4" x16 "01" x 32 
"b5" x 64 "8 f " x128

LA2 ( x) "33""52" x"77" x 2 "13" x 4 " e0" x8 " fe" x16 "9e" x 32 
"96" x 64 "27" x128

S-kutusu x  x 254 haritalaması ile birlikte durum 2’de


olduğu gibi tasarlanırsa cebirsel ifadesi aşağıdaki gibi elde
edilebilir:
S ( x)  ( LA1 ( x ))254 ,

S ( x)  ("63""05" x "09" x 2  ..." b5" x 64 "8 f " x128 )254 .

S-kutusu x  x 254 haritalaması ile birlikte durum 3’te


Şekil 1. AES S-kutusu Benzeri S-kutuları Tasarımında Olası olduğu gibi tasarlanırsa cebirsel ifadesi aşağıdaki gibi elde
Durumların Gösterimi edilebilir:

Şekil 1, S-kutusu tasarımında doğrusal dönüşümün yeri ile S ( x) "63"05"(LA2 ( x))254 "09"(LA2 ( x))253 " f 9"(LA2 ( x))251 
ilgili olarak olası durumların gösterimini yapmaktadır. Şekil
1’e dayalı olarak durum 1, 2 ve 3 için cebirsel ifadenin "25"(LA2 ( x))247  " f 4"( LA2 ( x))239 "01"( LA2 ( x))223"b5"(LA2 ( x))191 
hesaplanması aşağıdaki gibi özetlenebilir.
"8 f "(LA2 ( x))127,

Durum 1 için;
 Verilen teoriyi kullanarak LA1 doğrusal dönüşümüne S ( x)  05"("33""52" x"72" x2  ..."9e" x32 "96" x64 "27" x128)254 
karşılık gelen ve bu dönüşümün cebirsel ifadesi "09"("33""52" x"72" x2  ..."9e" x32 "96" x64 "27" x128)253 
olan LA1 ( x ) ’i hesapla, " f 9"("33""52" x"72" x2  ..."9e" x32 "96" x64 "27" x128)251 
 LA1 ( x ) ’te x yerine x d koy, .
d
 LA1 ( x ), S-kutusunun cebirsel ifadesidir. .
"8 f "("33""52" x"72" x2  ..."9e" x32 "96" x64 "27" x128)127 "63".
Durum 2 için;
Tablo1. Örnekte verilen durum 3’e göre tasarlanan S-kutusu
 Verilen teoriyi kullanarak LA1 doğrusal dönüşümüne
karşılık gelen ve bu dönüşümün cebirsel ifadesi 0 1 2 3 4 5 6 7 8 9 A B C D E F
olan LA1 ( x ) ’i hesapla, 0 C3 18 27 80 15 34 FD F7 2B FE 6B 77 F0 CA D4 72
1 1A 1B E3 D6 CF 6A D1 B1 21 10 9D 40 85 D0 F9 9F
 x d ’de x yerine LA1 ( x ) ’i koy, 2 66 48 C1 57 8A E8 78 B4 E9 CE D9 98 68 8C 99 BB
 S-kutusunun cebirsel ifadesini ( LA1 ( x ))d ifadesini 3 0A 49 95 AC 08 6C C8 4E 14 DE 2A 4F 17 CD A7 19
4 89 E6 B0 0F 28 1E E1 94 74 BD 1C 2E F6 3E 61 9E
hesaplayarak elde et.
5 13 97 64 3D 0B EE 60 88 F4 7A 8D 6D 24 32 C2 79
Durum 3 için; 6 C9 59 9C AF AB 01 63 C5 E5 D8 36 26 05 C7 07 75
7 AA 4D 50 7F F3 B6 51 F5 BE 4C 20 ED 5A 83 52 84
 Verilen teoriyi kullanarak LA1 ve LA2 doğrusal 8 E7 A9 AE 56 91 62 3A 06 C4 73 44 0C 22 DC B8 5E
9 BA C6 8B DD 86 B9 B5 03 41 16 42 A1 69 11 87 55
dönüşümlerine karşılık gelen ve bu dönüşümlerin
A 53 5B 58 CB 29 B3 2C 6E 45 A8 33 EF 92 8F DA FF
cebirsel ifadesi olan LA1 ( x ) ve LA2 ( x ) ’i hesapla,
B B7 CC 31 A5 EB E2 23 96 AD C0 47 82 F2 7B 67 D7
 LA1 ( x d ) ’de x yerine LA2 ( x ) ’i koy, C A3 38 D2 BC 3C 02 FB 43 3B 2F A0 09 FC 00 39 4A
d D 7C 6F 76 30 A4 A2 7D FA 12 B2 9A 04 3F 93 F1 71
 S-kutusunun cebirsel ifadesini LA1 ( LA2 ( x ) ) ifadesini
E 81 90 DB 46 5D 7E EC 5F D3 E4 5C E0 D5 37 EA 65
hesaplayarak elde et. F F8 8E DF 9B 54 2D 0D BF 35 1D 0E 70 A6 25 1F 4B
Tablo 1’ de verilen S-kutusu [12] x  x 254 üs haritalaması olarak diğer üslerle tasarlanacak S-kutuları için benzeri
hesaplama yöntemleri geliştirilebilir ve görünürde ki
ve Örnek 3’te verilen LA1 ve LA2 doğrusal dönüşümleri ile
hesaplama ile ilgili yüksek iş yükü çok makul seviyelere
birlikte durum 3’e göre tasarlanmıştır. S-kutusunun cebirsel indirilebilir. Verilen hesaplama yönteminde sonlu cisimde
ifadesi 255 terim içermektedir ve bu ifade aşağıda kısaca çarpma işlemleri çok hızlı olarak gerçeklenebileceği için
gösterilmiştir. Ek-A da bu S-kutusunun aşağıda verilen polinomsal çarpma işlemi üzerinde durulmuştur. Diğer
yöntem kullanılarak elde edilen cebirsel ifadesi ayrıntılı
yandan S-kutusu durum 2 ya da durum 3 ile x  x 7
olarak gösterilmiştir.
haritalama yöntemi ile tasarlanmış olsaydı cebirsel
ifadesinin 93 terim içereceği ve derecesinin de 224 olacağı
S (x) "1c" x254"1e" x253"16" x252"98" x251  ..."87" x2 "e7" x"c3". söylenebilirdi. Nitekim bu tip bir S-kutusu için de bu
uygulanmış ve bahsedilen sonuçlar gözlenmiştir.
Gerek durum 2 de gerekse durum 3’te cebirsel ifadenin elde
edilmesinde gerekli olan 9 terimli doğrusal dönüşümün 254’ 5. KAYNAKLAR
üncü kuvvetini almak yüksek iş yükü olarak görülebilir.
Bunun için biz hızlı bir hesaplama yöntemi geliştirdik ve bu [1] Sakallı M. T., Buluş E., Şahin A., Büyüksaraçoğlu F.,
yöntem tüm x  x 254
haritalama tabanlı tasarlanacak S- “Ters Haritalama Tabanlı S-kutularının Cebirsel
Açıdan İyileştirilmesi”, ISC’07 Uluslararası Katılımlı
kutuları için uygulanabilir. Bu hesaplama yöntemi aşağıdaki
Bilgi Güvenliği ve Kriptoloji Konferansı, Ankara-
gibi verilebilir:
Türkiye, 13–14 Aralık 2007.
 İlk olarak LA2 ( x ) 2 , LA2 ( x ) 4 , LA2 ( x )8 , LA2 ( x )16 , [2] Nyberg K., “Differentially uniform mappings for
cryptography”, Proceedings of Eurocrypt’93, Lecture
LA2 ( x )32 , LA2 ( x )64 ifadelerini çarpma ve kare alma
Notes in Computer Science, Springer, Berlin, vol. 765,
işlemlerini kullanarak elde et. Bu işlem 6 polinom pp. 55-64, 1994.
çarpma işlemine denk düşer. [3] Federal Information Processing Standards Publication
 LA2 (x )127 ifadesini yukarıdaki ifadeleri çarparak elde (FIPS 197), Advanced Encryption Standard (AES), 26
November 2001.
et. Bu işlem de 5 polinom çarpma işlemine denk düşer.
[4] Youssef A. M., Tavares S. E., Gong G., “On Some
 LA2 ( x )191  LA2 ( x)127 .LA2 ( x) 64 , probabilistic approximations for AES-like s-boxes”,
Discrete Mathematics, Elsevier, 2006.
LA2 ( x ) 223  LA2 ( x )191.LA2 ( x)32 ,
[5] Daemen J., Knudsen L.R., Rijmen V., “The block
LA2 ( x ) 239  LA2 ( x) 223 .LA2 ( x)16 , cipher Square”, Fast Software Encryption, Lecture
Notes in Computer Science, Springer, Berlin,
LA2 ( x ) 247  LA2 ( x )239 .LA2 ( x)8 , vol.1267, pp. 149-165, 1997.
LA2 ( x ) 251  LA2 ( x ) 247 .LA2 ( x) 4 , [6] Rijmen V., Daemen J., Preneel B., Bosselaers A., De
Win E., “The cipher Shark”, Fast Software Encryption,
LA2 ( x ) 253  LA2 ( x) 251.LA2 ( x )2 , Lecture Notes in Computer Science, Springer, Berlin,
vol.1039, pp. 99–112, 1996.
LA2 ( x ) 254  LA2 ( x ) 253 .LA2 ( x )1 ifadelerini çarparak [7] Aoki K., Ichikawa T., Kanda M., Matsui M., Moriai S.,
elde et. Bu işlemlerde 7 çarpma işlemi eder ve sonuç Nakajima J., Tokita T., “Camellia: a 128-bit block
olarak 18 polinom çarpma işlemi ile istenen tüm cipher suitable for multiple platforms-design and
doğrusal dönüşümlerin üsleri elde edilir. analysis”, Proceedings of Seventh Annual International
Workshop on Selected Areas in Cryptography,
Durum 2 için ise hesaplama yöntemi aşağıdaki gibi SAC’2000, Lecture Notes in Computer Science, vol.
verilebilir: 2012, pp. 39-56, Springer, Berlin, 2001.
 İlk olarak LA1 ( x) 2 , LA1 ( x ) 4 , LA1 ( x )8 , LA1 ( x )16 , [8] Aslan B., Sakallı M. T., Buluş E., Classifying 8-bit to
8-bit S-boxes based on Power Mappings from the point
LA1( x)32 , LA1 ( x)64 , LA1 ( x)128 ifadelerini çarpma ve of DDT and LAT Distributions, International Workshop
kare alma işlemlerini kullanarak elde et. Bu işlem 7 on the Arithmetic of Finite Fields, WAIFI 2008,
polinom çarpma işlemine denk düşer. Lecture Notes in Computer Science, vol. 5130, pp. 123-
133, Springer, Berlin, 2008.
 LA1 (x )254 ifadesini yukarıdaki ifadeleri çarparak elde [9] McEliece R. J., Finite fields for Computer Scientists
et. Bu işlem de 6 polinom çarpma işlemine denk düşer. and Engineers, Kluwer Academic Publishers,
Bu işlemlerde toplam 13 polinom çarpması ile Dordrecht, 1987.
sonuçlanır. [10] Lidl R., Niederreiter H., Introduction to finite fields and
their applications, Revised Edition, 1994.
[11] Youssef A. M., Tavares S.E.., “Affine equivalence in
4. SONUÇLAR the AES round function”, Discrete Applied
Mathematics, Elsevier, (2005).
Çalışmamızda AES S-kutusu benzeri S-kutularının cebirsel [12] Sakallı M. T., Aslan B., Buluş E., Şahin A.,
ifadesinin hesaplanması için hızlı ve cebirsel ifadelerinde Büyüksaraçoğlu F., AES S-Kutusuna Alternatif
bulundurdukları terim sayılarını tasarlandıkları üs Cebirsel Olarak Kuvvetlendirilmiş Bir S-Kutusu
haritalamasına göre gösteren bir yöntem geliştirilmiştir. Önerisi, Ağ ve Bilgi Güvenliği Ulusal Sempozyumu-
Örneğin Tablo 1’de verilen ve x  x 254 haritalaması ABG’08, Girne-Kuzey Kıbrıs Türk Cumhuriyeti,
tabanlı S-kutusunun cebirsel ifadesi 255 terim içermekte ve Mayıs-2008.
cebirsel ifadesinin derecesi 254’tür. Bu cebirsel ifade [13] Youssef A. M., Gong G., “On the Interpolation Attacks
geliştirilen yöntemle 40 milisaniye civarında bir sürede 2 on Block Ciphers”, 7 th International Workshop on Fast
GHz işlemcili bir bilgisayar ile elde edilmiştir. Buna ek
Software Encryption (FSE 2000), Lecture Notes in EK-B: Tablo 1’de Verilen S-kutusunun Tasarımında
Computer Science, vol. 1978, pp. 109-120, 2000. Kullanılan LA1 ve LA2 Doğrusal Dönüşümlerinin İkili
Matris Formunda Gösterimi
EK-A: Tablo 1’de Verilen S-kutusunun Cebirsel İfadesi
 f 0  1 0 0 0 1111  x0  1 
S ( x )  1c x 254  1ex 253  1 6 x 252  9 8 x 251  0 7  x 250       
 f1  11 0 0 0 111  x1  1 
 5 8 x 249  8 6  x 248  e 2 x 247  b 5 x 246  '1 1 x 245  f 2  111 0 0 0 11  x2  0
      
 0 6  x 244  8 ex 243  b a x 242  9 ex 241  63 x 240  f3  1111 0 0 0 1  x3  0
LA1 ( x )      . 
 a 4  x 239  2 2 x 238  3 cx 237  e 4 x 236  '1a x 235 f 11111 0 0 0  x4  0
 4     
 9 a x 234  1 8 x 233  d d x 232  9 9 x 231  8b x 230  f5  0 11111 0 0  x5  1 
      
 4 cx 229  9 8 x 228  d ex 227  2 5 x 226  ' f 8 x 225  f 6  0 0 11111 0  x6  1 
 7 5 x 224  b b x 223  8 1 x 222  fd x 221  d 0  x 220  f  0 0 0 11111  x  0
 7    7  
 c 9 x 219  0 4 x 218  7 4  x 217  f 6  x 216  ' b 2  x 215
 3 9 x 214  4 9  x 213  0 a x 212  f 9  x 211  4 9 x 210
 f0  1 0 0 0 0011   x0  1 
 3b x 209  6 c x 208  a 7  x 207  6 6 x 206  ' e3 x 205       
 f1  11 0 0 0 00 1   x1  1 
 7 2  x 204  4 2 x 203  b 7  x 202  5 d x 201  4 f x 200  f 2  111 0 0 0 00   x2  0
 8 d x199  d b x198  3 8 x197  9 a x196  '6 8 x195
      
 f3  0111 0 0 0 0   x3  0
LA 2 ( x )      . 
 e5 x194  8 2 x193  5 0 x192  7 3 x191  b d x190 f 00111 0 0 0  x4  1 
 4     
 0 6  x189  a 7  x188  f 3 x187  1d x186  '2 8 x185  f5  0 00111 0 0  x5  1 
 4 6 x184  9 4  x183  0 4 x182  cf x 181  8 cx180
      
 f6  000 0 111 0   x6  0
 c8 x179  6 ex178  5 9  x177  3 2  x176  '5 1 x175  f  0 0 0 00111   x  0
 7    7  
 e9  x174  a 8 x173  9 1 x172  a 5 x171  e7  x170
 6 3 x169  d 5 x168  a 0 x167  1b x166  '9 6  x165
 d 3 x164  8 5 x163  5 8 x162  a f x 161  c9  x160
 8 8 x159  5 ex158  2 f x 157  a 6 x156  '9 a x155
 2 7  x154  8 4  x153  5 9  x152  9 1 x151  c 0  x150
 8 3 x149  2b x148  1b x147  b c x146  '1 9 x145
 3 0 x144  9 3 x143  9 6  x142  5 2  x141  2 ex140
 1 1 x139  3ex138  2 8 x137  e3 x136  ' f 4  x135
 9 5 x134  2 cx133  0 f x 132  2 6 x131  9 9  x130
 fb x129  6 3 x128  7 ex127  8 8 x126  '1 4 x125
 a 3 x124  d d x123  9 4 x122  2 0 x121  b 4  x120
 7 0  x119  7 ex118  b1 x117  f 6 x116  '0 d x115
 9 2 x114  1 f x 113  0 b x112  6 2  x111  0 d x110
 3ex109  1 6 x108  d 6 x107  f 8 x106  ' e7  x105
 4 7  x104  3 0 x103  4 2 x102  cb x101  2 6  x100
 0 5 x 99  3b x 98  2 6 x 97  8 cx 96  ' a 8 x 95  7 5 x 94
 a1 x 93  0 9  x 92  d 9  x 91  6 a x 90  d 1 x 89  5 a x 88
 4 5 x 87  2 9 x 86  ' d 1 x 85  c8 x 84  5 ex 83  9 7  x 82
 2 8 x 81  7 9  x 80  5 9  x 79  c3 x 78  4 8 x 77  6 f x 76
 ' e8 x 75  7 9 x 74  3b x 73  d ex 72  a 5 x 71  b 5 x 70
 eb x 69  9 c x 68  c 3 x 67  d ex 66  '0 d x 65  2 3 x 64
 f 9 x 63  8 a x 62  fex 61  5 d x 60  b1 x 59  7 cx 58
 4 6 x 57  5 a x 56  ' f 9 x 55  1 0  x 54  ee x 53  5 5 x 52
 9 d x 51  8 f x 50  c8 x 49  e6  x 48  9 d x 47  c 2  x 46
 ' fex 45  5 9  x 44  3b x 43  1 f x 42  1 f x 41  b c x 40
 0 2  x 39  2 0 x 38  e 6  x 37  e 6 x 36  '8b x 35  7 c x 34
 b 9 x 33  8 1 x 32  5 6  x 31  9 5 x 30  0 9  x 29  0 2  x 28
 4 d x 27  6 d x 26  '3 4  x 25  5 a x 24  1d x 23  0 2  x 22
 3ex 21  fb x 20  4 1 x19  5 1 x18  e6  x17  ef x 16
 '5 d x15  c 7  x14  b1 x13  7 8 x12  b f x 11  fc x10
 d 2 x 9  5 1 x 8  fa x 7  b cx 6  ' a 5 x 5  f 6 x 4
 1 5 x 3  8 7  x 2  e 7  x  c 3

You might also like