International Data Encryption (IDEA)


International Data Encryption Algorithm (IDEA)
  •          Pengertian international data encryption algorithm

International data encryption algorithm adalah algoritma enkripsi blok kunci yang aman dan rahasia yang dikembangkan oleh James Massey dan Xuejia Lai.Algoritma ini berkembang pada 1992 dari algoritma semula yang disebut dengan Proposed Encryption Standard and The Inproved Proposed Encryption Standard.IDEA menggunakan delapan round dan beroperasi pada subblok 16 bit dengan menggunakan kalkulasi aljabar yang dapat digunakan untuk implementasi hardware.Operasi ini adalah perjumlahan modulo 216,perkalian modulo 216 + 1,dan XOR.Dengan kunci 128 bitnya, cipher IDEA lebih sulit untuk dibobol daripada DES

Algoritma utama dari sistem kriptografi IDEA adalah sebagai berikut :
1.     Proses enkripsi :  ek(M) = C
2.     Proses dekripsi : dk(C) = M
Dimana :
E = adalah fungsi enkripsi
D = adalah fungsi dekripsi
M = adalah pesan terbuka
C = adalah pesan rahasia
K = adalah kunci enkripsi atau dekripsi

IDEA (International data encryption algorithm) merupakan algoritma simetris yang beroperasi pada sebuah blok pesan terbuka dengan lebar 64-bit. Dan menggunakan kunci yang sama,berukuran 128-bit,untuk proses enkripsi dan dekripsi. Pesan rahasia yang dihasilkan oleh algoritma ini berupa blok pesan rahasia dengan lebar atau ukuran 64-bit.Pesan dekripsi menggunakan blok penyandi yang sama dengan blok proses enkripsi dimana kunci dekripsinya diturnkan dari kunci enkripsi.
Algoritma ini menggunakan operasi campuran dari tiga operasi aljabar yang berbeda,yaitu XOR,operasi ini digunakan dalam pengoprasian sub-blok 16bit.algoritma ini melakukan iterasi yang terdiri dari atas 8 putaran dan I transformasi keluaran pada putaran ke 9
  •  Proses Enkripsi IDEA

Pada proses enkripsi,algoritma IDEA ini ditunjukan Oleh gambar di atasterdapat tiga operasi yang berbeda untuk pasangan sub-blok 16 bit yang digunakan, sebagai berikut:

1.     XOR dua sub-blok 16-bit bir per bit,yang disimbolkan dengan tanda
2.     Perjumlahan interger modulo (216+1)dua sub-blok 16-bit,dimana dua sub blok itu dianggap sebagai representasi biner dari interger biasa,yang disimbolkan

Perkalian modulo (216 +1) dua sub-blok 16-bit,dimana kedua sub-blok 16-bit itu dianggap sebagai representasi biner dari interger biasa kecuali sub-blok nol dianggap mewakili interger 216,yang disimbolkan dengan tanda .blok pesan terbuka dengan lebar 64-bit, X,dibagi menjadi 4 sub-blok 16-bit,X1,X2,X3,X4, sehungga X=(X1,X2,X3,X4).keempat sub-blok 16-bit itu ditransformasikan menjadi sub-blok 16-bit, Y2, Y2, Y3, Y4, sebagai pesan rahasia 64-bit Y = (Y1, Y2, Y3, Y4) yabg berada dibawah kendali 52 sub_blok kunci 16-bit yang dibentuk dari blok kunci 128 bit.Keempat sub-blok 16-bit, X1,X2,X3,X4 digunakan sebagai masukan untuk putaran pertama dari algoritma IDEA. Dalam setiap putaran dilakukan operasi XOR,penjumlahan,perkalian antara dua sub-blok 16-bit dan diikuti pertukaran antara sub-blok 16-bit putaran kedua dan ketiga.Keluaran putaran sebelumnya menjadu masukan putaran berikutnya.Setelah putaran kedelapan dilakukan transformasi keluaran yang dikendalikan oleh 4 sub-blok kunci 16-bit.

Pada setiap putaran dilakukan operasi-operasi sebagai berikut:

1.     Perkalian X1 dengan sub-kunci pertama
2.     Penjumlahan X2 dengan sub-kunci kedua
3.     Penjumlahan X3 dengan sub kunci ketiga
4.     Perkalian X4 dengan sub kunci keempat
5.     Operasi XOR hasil langkah 1 dan 3
6.     Operasi XOR hasil langkah 2 dan 4
7.     Perkalian hasil langkah 8 dengan sub-kunci keenam
8.     Penjumlahan hasil langkah 6 dengan langkah 7
9.     Perkalian hasil langkah 8 dengan sub-kunci keenam
10.  Penjumlahan hasil langkah 7 dengan 9
11.     Operasi XOR hasil langkah 1 dan 9
12.     Operasi XOR hasil langkah 3 dan 9
13.     Operasi XOR hasil langkah 2 dan 10
14.     Operasi XOR hasil langkah 4 dan 10

Keluaran setiap putaran adlah 4 sub-blok yang dihasilkan pada langkah 11, 12, 13 dan 14 dan menjadi masukan putaran berikutnya.Setelah putaran kedelapan terdapat transformasi keluaran, yaitu :

1.     Perkalian X1 dengan sub-kunci pertama
2.     Perjumlahan X2 dengan sub-kunci ketiga
3.     Perjumlahan X3 dengan sub-kunci kedua
4.     Perkalian X4 dengan sub-kunci keempat terakhir,keempat sub-blok 16-bit,16-bit yang merupakan hasil operasi 1),2),3) dan 4) ii di gabung kembali menjadi blok pesan rahasia 64-bit.

·      Proses Dekripsi IDEA
Proses dekripsi menggunakan algoritma yang sama dengan proses enkripsi tetapi 52 buah sub-blok kunci yang digunakan masing-masing merupakan hasil turunan 52 buah su-blok kunci enkripsi.Tabel sub-blok kunci dekripsi yang diturunkan dari sub-blok kunci enkripsi dapat dilihat pada tabel berikut:

                                       Sub-blok kunci Enkripsi                                         
Sub-blok kunci enkripsi

Keterangan :
·       Z-1 merupakan invers perkalian modulo 216 + 1 dari Z,dimana Z Z-1 = 1
·       Z merupakan invers perjumlahan modulo 216 dari Z,dimana Z Z-1 = 0

  •       Pembentuk Sub-kunci


Sebanyak 52 sub-blok kunci 16-bit untuk proses enkripsi diperoleh dari sebuah kunci 128-bit pilihan pemakai.Blok kunci 128-bit dipartisi menjadi 8 sub-blok kunci 16-bit yang langsung di pakai sebagai 8 sub-blok kunci pertama.Kemudian blok kunci 128-bit dirotasi dari kiri 25 posisi untuk dipartisi lagi menjadi 8 sub-blok kunci 16-bit berikutnya.Proses rotasi dan partisi itu diulangi lagi sampai diperoleh 52 sub-blok kunci 16-bit,denan urutan sebagai berikut :                           


  •     Contoh komputasi pengunaan Algoritma IDEA

Pada tabel berikut dapat dilihat data hasil enkripsi tiap putaran yang diproses dengan sebuah program yang meng implementasikan algoritma IDEA untuk sebuah pesan terbuka dalam bentuk bilangan interger 11121314 yang telah dibagi-bagi menjadi empat yaitu X1 = Z11 11, X2 = 12, X3 = 12, dan X4 = 14, dan kunci telah dibagi-bagi menjadi Z11 = 2, Z21 =4, Z31 =6, Z41 = 8, Z51 = 10, Z61 = 12,Z12 = 14, Z22=16

Data hasil enkripsi :
Dari tabel diatas dapat dilihat data hasil enkripsi tiap putaran unutuk pesan rahasia yaitu :

Y1 = 25112, Y2 = 33467, Y3=3103, Y4 =35414

Yang dihasilkan oleh proses enkripsi,degan menggunakan kunci yang diturunkan dari kunci enkripsi dan dengan menggunakan blok dekripsi yang sama dengan proses enkripsi.Terlihat bahwa pesan rahasia telah di dekripsi menjadi pesan terbuka sebenarnya seperti tabel berikut :

Hasil dekripsi akan sesuai dengan pesan asli seperti terlihat pada tabel putaran kesembilan yaitu bilangan interger
           
            Y1 Y2 Y3 Y4 =  X1 X2 X3 X4  = 11121314

  •       Arsitektur umum Processor Kroptografi IDEA


1.     Blok penyandi IDEA
Blok ini berfungsi untuk melakukan proses penyandi data.Jika sub-kunci yang diproses oleh blok ini berupa sub-kunci enkripsi maka pesan yang dihasilkan adalah pesan rahasia (Chiper teks)dan jika yang diproses berupa sub-kunci dekripisi maka pesan yang dihasilkan adlalah pesan sebenarnya (plain teks).

2.     Blok pembangkit sub-kunci
Blok ini berfungsi untuk membentuk 52 buah sub-kunci enkripsi 16 bit dari kunci enkripsi 128 bit membentuk 52 buah sub-kunci dekripsi 16 bit dari kunci dekripsi 128 bit.

3.     Blok port data-in
Blok ini berfungsi untuk membaca 2 buah blok data masukan 32 bit dan penyimpananya sebgai blok data masukan 64 bit yang akan diengkripsi atau didektipsi.

4.     Blok poert data-out
Blok ini berfungsi untuk megeluarkan blok data keluaran 64 bit yang merupakan hasil enkripsi atau dekripsi dengan cara embagi menjadi 2 buah data keluaran 32 bit.

5.     Blok poert kunci-n
Blok ini berfungsi untuk membaca 4 buah blok kunci 32 bit dan menyimpanya sebagai blok kunci 128 bit.

6.     Blok mode operasi
Blok ini berfungsi untuk menentukan mode operasu yang digunakan pada proses engkripsi dan dekripsi

7.     Blok kontrol
Blok ini berfungsi untuk mengontrol operasi antarablok fungsional yang menyusun sebuah blok besar seperi sikronisasu transfer data antar blok.


  DAFTAR PUSTAKA




Comments

Popular posts from this blog

Model-Model Pengembangan Perangkat lunak