8
Perbandingan Algoritma DES, AES, IDEA Dan Blowfish dalam Enkripsi dan Dekripsi Data
Donzilio Antonio Meko
Program Studi Teknik Informatika, STIMIK Kupang
E-mail: donzi.antonio.g@gmail.com
ABSTRACT
Kemajuan teknologi informasi telah memberikan dampak yang sangat luas, salah satunya sebagai media
penyampaian informasi dari suatu tempat ke tempat lainnya, sehingga memudahkan orang dalam
mengakses suatu informasi. Kemudahan pengaksesan media komunikasi oleh semua orang, tentunya
akan memberikan dampak bagi keamanan informasi atau pesan yang menggunakan media komunikasi
tersebut. Informasi menjadi sangat rentan untuk diketahui, diambil dan dimanipulasi oleh pihak-pihak
yang tidak bertanggung jawab. Oleh sebab itu dibutuhkan suatu metode atau cara yang dapat menjaga
kerahasiaan informasi ini, yang salah satunya dikenal dengan sebutan kriptografi. Dalam kriptografi
terdapat banyak algoritma, diantaranya algoritma DES, AES, IDEA dan Blowfish. Penelitian ini
bertujuan untuk membandingkan kinerja beberapa algoritma kriptografi dalam proses enkripsi dan
dekripsi data berdasarkan segi kecepatan atau lama waktu serta ukuran file hasil enkripsi. Hasil
penelitian ini menunjukkan adanya perbedaan waktu proses serta ukuran file dari hasil enkripsi dan
dekripsi data dari masing-masing algoritma.
Kata Kunci
: Algoritma, Deskripsi, Enskripsi, DES, AES, IDEA, Blowfish
1.
PENDAHULUAN
Kemajuan teknologi informasi yang sangat pesat
turut memajukan media komunikasi sebagai media
penyampaian informasi dari suatu tempat ke tempat
lainnya,
sehingga
memudahkan
orang
dalam
mengakses
media
komunikasi.
Kemudahan
pengaksesan media komunikasi oleh semua orang,
tentunya akan memberikan dampak bagi keamanan
informasi atau pesan yang menggunakan media
komunikasi tersebut. Informasi menjadi sangat rentan
untuk diketahui, diambil dan dimanipulasi oleh
pihak-pihak yang tidak bertanggung jawab. Oleh sebab itu
dibutuhkan suatu metode atau cara yang dapat
menjaga kerahasiaan informasi ini, yang salah satunya
dikenal dengan sebutan kriptografi.
Algoritma kriptografi dapat dibagi ke dalam
kelompok algoritma simetris dan algoritma asimetris.
Algoritma simetris merupakan algoritma kriptografi
yang menggunakan kunci yang sama baik untuk
proses enkripsi maupun dekripsi. Algoritma simetris
dapat dikelompokkan menjadi dua kategori, yaitu
cipher
aliran dan
cipher
blok.
Cipher
aliran
merupakan algoritma kriptografi yang beroperasi
dalam bentuk bit tunggal. Sedangkan algoritma
kriptografi kategori
cipher
blok beroperasi dalam
bentuk blok bit. Saat ini sudah banyak berkembang
algoritma kriptografi simetris baik untuk kategori
cipher
aliran maupun
cipher
blok.
Beberapa
algoritma
kriptografi
yang
dikategorikan ke dalam algoritma simetris adalah
DES, AES, Blowfish, IDEA, Saphent, Skipjack,
Twofish dan lain-lain. Setiap algoritma simetris ini
memiliki kelebihan dan kekurangan masing-masing
dalam proses enkripsi dan dekripsi data dilihat dari
segi kecepatan maupun keamanan data
ciphertext
yang
dihasilkan.
Dilihat dari perbedaan-perbedaan ini maka
penulis tertarik untuk mengimplementasikan dan
membandingkan kinerja algoritma DES, AES, IDEA
dan Blowfish dalam suatu program aplikasi enkripsi
dan dekripsi data digital yang dinilai dari kecepatan
proses data atau lama waktu yang dibutuhkan untuk
mengenkripsi atau mendekripsi file serta ukuran file
hasil enkripsi
2.
LANDASAN TEORI
a.
Pengertian Kriptografi
Kata kriptografi berasal dari bahasa Yunani,
“
kryptós
” yang berarti tersembunyi dan “
gráphein
”
9
data, antektikasi, integritas dan keabsahan data.
Kriptografi juga dapat diartikan sebagai ilmu untuk
menjaga kerahasiaan pesan [1]
b.
Pengertian Kriptografi Simetris
Algoritma ini disebut simetris karena memiliki
key
atau kunci yang sama dalam proses enkripsi dan
dekripsi sehingga algoritma ini juga sering disebut
algoritma kunci tunggal atau satu kunci.
Key
dalam
algoritma ini besifat rahasia atau
private key
sehingga
algoritma ini juga disebut dengan algoritma kunci
rahasia [2].
Gambar 1. Kriptografi Simetris
c.
Data Encryption Standard (DES)
DES, atau juga dikenal sebagai
Data Encryption
Algorithm
(DEA) oleh ANSI dan DEA-1 oleh ISO,
merupakan algoritma kriptografi simetris yang paling
umum digunakan saat ini. Secara umum, DES
termasuk ke dalam sistem kriptografi simetri dan
tergolong jenis
ciphe
r blok. DES beroperasi pada
ukuran blok 64 bit. DES mengenkripsikan 64 bit
plainteks
menjadi 64 bit
cipherteks
dengan
menggunakan 56 bit kunci internal (
internal key
) atau
lupa-kunci (
subkey
). Kunci internal dibangkitkan dari
kunci eksternal
(external key)
yang panjangnya 64 bit
[3]
Gambar 2. Skema global dari algoritma DES
d.
Pengertian
Advanced Encryption Standard
(AES)
AES adalah lanjutan dari algoritma enkripsi
standar
DES.
AES
merupakan
algoritma
cryptographic
yang
dapat
digunakan
untuk
mengamankan
data.
Algoritma
AES
adalah
blok
chipertext
simetrik yang dapat mengenkripsi
(
encipher
) dan dekripsi (
decipher
) informasi. Enkripsi
merubah data yang tidak dapat lagi dibaca disebut
ciphertext
, sebaliknya dekripsi adalah merubah
ciphertext
data menjadi bentuk semula yang kita
kenal sebagai
plaintext
. Algoritma AES menggunakan
kunci kriptografi 28, 192, dan 256 bit untuk
mengenkrip dan dekripsi data pada blok 128 bits [3]
e.
International Data Encryption Algorithm
(IDEA)
IDEA 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 merupakan
algoritma simetris yang beroperasi pada sebuah blok
pesan terbuka dengan lebar 64 bit dan panjang kunci
berukuran 128 bit. Algoritma IDEA menggunakan
algoritma yang sama untuk proses enkripsi dan
dekripsi. Dan pesan rahasia yang dihasilkan oleh
algoritma ini berupa blok pesan rahasia dengan lebar
atau ukuran 64 bit. [4]
Algoritma
IDEA
menggunakan
operasi
campuran dari tiga operasi aljabar yang berbeda, yaitu
:
a.
Operasi XOR, operasi ini disimbolkan dengan
tanda
⊕
b.
Operasi penjumlahan modulo 2
16.
c.
Operasi perkalian modulo (2
16+ 1).
f.
Algoritma Blowfish
Blowfish
alias "
OpenPGP.Cipher.4
" merupakan
enkripsi yang termasuk dalam golongan
Symmetric
Cryptosystem
, metoda enkripsinya mirip dengan DES
(
DES-like Cipher
) diciptakan oleh seorang
Cryptanalyst
bernama Bruce Schneier Presiden
perusahaan
Counterpane Internet Security, Inc
(Perusahaan konsultan tentang kriptografi dan
keamanan Komputer) dan dipublikasikan tahun 1994.
Blowfish termasuk dalam enkripsi block
Cipher
64-bit
dangan panjang kunci yang bervariasi antara 32-bit
sampai 448-bit [5].
Algoritma
Blowfish terdiri atas dua bagian :
a.
Key-
Expansion
Berfungsi merubah kunci (Minimum 32-bit,
Maksimum 448-bit) menjadi beberapa array subkunci
(subkey) dengan total 4168 byte.
b.
Enkripsi Data
10
penambahan (
addition
) dan XOR pada variabel 32-bit.
Operasi tambahan lainnya hanyalah empat
penelusuran tabel (
table lookup
)
array
berindeks
untuk setiap putaran.
3.
METODE PENELITIAN
a.
Jenis Penelitian
Model/jenis penelitian dalam penelitian ini
adalah menggunakan metode penelitian komparatif
yaitu penelitian membandingkan persamaan dan
perbedaan dua atau lebih fakta-fakta dan sifat-sifat
objek yang diteliti berdasarkan kerangka pemikiran
tertentu. Pada penelitian ini variabelnya masih mandiri
tetapi untuk sampel yang lebih dari satu atau dalam
waktu yang berbeda.
Penelitian komparatif dapat juga diartikan
sebagai sejenis penelitian deskriptif yang ingin
mencari jawaban secara mendasar tentang
sebab-akibat, dengan menganalisis faktor-faktor penyebab
terjadinya ataupun munculnya suatu fenomena
tertentu.
Jadi penelitian komparatif adalah jenis penelitian
yang digunakan untuk membandingkan antara dua
kelompok atau lebih dari suatu variabel tertentu.
Sehingga model penelitian ini berusaha memberikan
gambaran perbandingan algoritma cipher DES, AES,
IDEA dan Blowfish dalam proses enkripsi dan
dekripsi data dilihat dari kecepatan proses
b.
Antarmuka Perangkat Lunak
Dalam penelitian ini, adapun spesifikasi
perangkat lunak yang digunakan:
d.
Microsoft
Visual
Basic
6.0 sebagai Bahasa
pemrograman.
e.
StarUML sebagai media perancangan system
c.
Perancangan dan Konstruksi Sistem
Tahapan dalam pembuatan perangkat lunak ini
terdiri atas beberapa bagian utama sebagai berikut:
i.
Hirarki Proses
Menu Utama
File/Text Perbandingan
Password
Enkripsi Dekripsi
Gambar 3. Hirarki Proses
Dari aplikasi yang dibuat terdapat beberapa
menu utama yakni file/text yang digunakan untuk
enkripsi dan dekripsi teks ataupun file yang dipilih
oleh user. Menu perbandingan untuk menampilkan
form perbandingan dimana didalam form ini dapat
menampilkan hasil dari perbandingan algoritma yang
ada.
ii.
Usecase
Diagram
Usecase menggambarkan interaksi yang terjadi
dalam sistem, yang memberi gambaran user atau actor
yang berhubungan dengan sistem dan hal-hal yang
berhubungan dengan user di dalam sistem.
Gambar 4.
Usecase Diagram
iii.
Activity Diagram Enkripsi
Gambar 5.
Activity Diagram Enkripsi
Pengguna Interface Sistem
Pilih File/Teks Validasi Password
Enkripsi File/Teks Ya
Tampilkan Ciphertext Masukkan Password
Tampilkan Plaintext
11
iv.
Activity Diagram Dekripsi
Gambar 6.
Activity Diagram Dekripsi
v.
Activity Diagram
Perbandingan
Gambar 7.
Activity Diagram
Perbandingan
vi.
Perancangan Antarmuka
Bagian ini akan merupakan implementasi atau
kontruksi tampilan dari program yang akan dibuat
g.
Perancangan
Form
Enkripsi/Deskripsi File
Enkripsi/Dekripsi
Gambar 8. Perancangan
Form
Enkripsi/Deskripsi File
h.
Perancangan
Form
Enkripsi/Deskripsi Teks
Enkripsi/Dekripsi
Gambar 9. Perancangan
Form
Enkripsi/Deskripsi Teks
i.
Perancangan Form Perbandingan Algoritma
Pengguna Interface Sistem
Pilih File/Teks Validasi Password
12
Perbandingan AlgoritmaPerbandingan Algoritma
Metode Enkripsi Dekripsi
DES
AES
XXX KB/detik
XXX KB/detik
XXX KB/detik
XXX KB/detik
IDEA
Blowfish
XXX KB/detik
XXX KB/detik
XXX KB/detik
XXX KB/detik
Gambar 10. Perancangan Form Perbandingan
Algoritma
4.
HASIL DAN PEMBAHASAN
a.
Implementasi Sistem
Aplikasi dapat berjalan dengan baik apabila
memiliki
file-file
pendukung untuk menunjang proses
yang akan dijalankan.
Berikut adalah beberapa
file
pendukung dalam
implementasi program ini yaitu:
Tabel 1. File pendukung implementasi program
b.
Antarmuka Sistem
f.
Tampilan
Form
Utama
Gambar 11. Tampilan form utama
g.
Tampilan
Form
Utama Enkripsi/Dekripsi Teks
Gambar 12. Tampilan
Form
Utama Enkripsi/Dekripsi
Teks
13
Gambar 13. Tampilan
Form
Utama Enkripsi/Dekripsi
File
i.
Tampilan Form Perbandingan Algoritma
Gambar 14 Tampilan form Jenis Motif
c.
Pengujian Validitas
Pengujian validitas ini dilakukan untuk menguji
keabsahan
dari
aplikasi
yang
dibuat
untuk
membuktikan hipotesis. Penulis menggunakan dua
teknik untuk menguji validitas aplikasi yang dibuat
yaitu pengukuran berdasarkan kecepatan dekripsi dan
enkripsi file dan pengukuran berdasarkan besar file
yang dihasilkan
Untuk melakukan pengujian ini maka penulis
menggunakan beberapa tipe file dengan berbagai
macam ukuran seperti tampak pada tabel berikut ini
Tabel 2
.
File-file uji aplikasi
Dari beberapa tipe file di atas maka dapat
dilakukan proses pengujian enkripsi dan dekripsi data
dengan menggunakan algoritma DES, AES, IDEA dan
Blowfish dan hasil yang diperoleh dapat dilihat pada
tabel berikut ini:
Tabel 3
.
Hasil pengujian implementasi program
No Nama File Tipe File Ukuran
(byte)
1 BAB I.doc Microsoft Office Word
Document (.doc)
110.592
2 BAB I.pdf PDF Document (.pdf) 77.824
3 BAB I.txt Text Document (.txt) 8.192
4 Enkripsi-Dekripsi.exe
Application (.exe) 405.504
5 Enkripsi-Dekripsi.rar
WinRAR archive (.rar) 86.016
6 Enkripsi-Dekripsi.zip
WinRAR ZIP archive (.zip) 114.688
7 logo.bmp BMP File (.bmp) 69.632
8 logo.gif GIF File (.gif) 12.288
9 logo.jpg JPG File (.jpg) 24.576
10 logo.png PNG File (.png) 45.056
11 olah data.xls Microsoft Office Excel Worksheet (.xls)
69.632