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
Post a Comment