Uluslararası Veri Şifreleme Algoritması

Uluslararası Veri Şifreleme Algoritması (IDEA)  (İngilizce: International Data Encryption Algorithm), 1991 yılında Xuejia Lai ve James Massey tarafından tasarlanmış bir blok şifreleme algoritmasıdır. Bilinen en güçlü algoritmalardandır.

IDEA, şifrelenecek olan 64 bitlik metin ve 128 bitlik anahtarı kullanarak 64 bitlik şifrelenmiş metni oluşturur. IDEA algoritması çeşitli matematiksel işlemlerin karışımından oluşmaktadır. Bu işlemler çarpma, toplama ve xor gibi matematiksel işlemlerdir.

IDEA şifreleme şemasında kullanılan anahtarların üretimi ve şifreleme – deşifreleme işlemleri aşağıdaki gibi yapılır.

Anahtar Üretimi

128 bit uzunluğunda K = k1 ... k128 kullanılarak 52 adet 16 bit uzunluğunda Ki(r) alt anahtar bloklarını elde edebilmek için;

1.) K1(1) ... K6(1), K1(2) ... K6(2), ..., K1(8) ... K6(8), K1(9) ... K4(9)  alt anahtar grupları sıralanır.

2.) K 8 adet 16 bit uzunluğunda bloğa ayrılarak ilk 8 alt anahtar olarak tanımlanırlar.

3.) K dairesel olarak 25 bit sola kaydırılır, sonuç 8 bloğa bölünerek yeni 8 alt anahtar yaratılmış olur. 52 alt anahtarın tümü yaratılıncaya kadar bu işleme devam edilir.

Şifreleme Algoritması

M=m1 ... m64  mesajını yukarıdaki algoritmayı kullanarak oluşturulan K = k1 ... k128  anahtarı ile şifrelemek için;

1.) (X1, X2, X3, X4 ) ← (m1 ... m16, m17 ... m32, m33... m48, m49... m64 )

2.) for r=1 to 8 do

      a.) X1 ← X1 ⊙ K1(r), X4 ← X4⊙ K4(r), X2 ← X2 ⊞ K2(r), X3 ← X3 ⊞ K3(r) 

      b.) t0 ← K5(r)⊙ (X1  ⊕  X3 ), t1← K6(r)⊙ (t0 ⊞ (X2 ⊕  X4 ) ), t2 ← t0 ⊞ t1

      c.)  X1 ← X1 ⊕ t1, X4 ← X4⊕ t2, a ← X2 ⊕ t2, X2 ← X3⊕ t1, X3 ← a

3.) Y1 ← X1 ⊙ K1(9), Y4← X4 ⊙ K4(9), Y2 ← X3  ⊞ K2(9), Y3 ← X2  ⊞ K3(9)

4.) Y=(Y1, Y2, Y3, Y4 ) şifrelenmiş metni elde edilir.

Deşifreleme Algoritması

Şifreleme de uygulanan işlemlerin ters işlemleri uygulanarak aynı algoritma kullanılarak şifre çözümleme işlemi yapılabilmektedir.

K1(r)  şifreleme alt anahtarlarından;

 r. devir        K'1(r)               K'2(r)       K'3(r)           K'4(r)      K'5(r)       K'6(r) r=1            (K1(10-r))-1       -K2(10-r)       -K3(10-r)    (K4(10-r))-1     K5(9-r)       K6(9-r) 2<=r<=8        (K1(10-r))-1       -K3(10-r)      -K2(10-r)     (K4(10-r))-1     K5(9-r)       K6(9-r) r=9            (K1(10-r))-1       -K2(10-r)      -K3(10-r)     (K4(10-r))-1     -------       --------

yardımıyla elde edilecek olan K'i(r)  alt anahtarları kullanılırsa deşifreleme işlemi gerçekleştirilmiş olur.

Avantajları
 Algoritmalar hızlıdır.
 Algoritmaların donanımla gerçeklenmesi kolaydır.
 "Gizlilik" güvenlik hizmetini yerine getirir.

Dezavantajları
 Ölçeklenebilir değil. 
 Güvenli anahtar dağıtımı zor. 
 "Bütünlük" ve "kimlik doğrulama" güvenlik hizmetlerini gerçeklemek zor.

 Kaynakça 

 Dış bağlantılar 
   Çanakkale OnSekiz Mart Üniversitesi 
  Çanakkale OnSekiz Mart Üniversitesi Bilgisayar Mühendisliği

Kategori:Blok şifreler