UJI RUNNING TIME ALGORITME IDEA DALAM PROSES ENKRIPSI DAN DEKRIPSI DATA
ANNES BERLIANA
DEPARTEMEN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR BOGOR 2009
UJI RUNNING TIME ALGORITME IDEA DALAM PROSES ENKRIPSI DAN DEKRIPSI DATA
ANNES BERLIANA
Skripsi sebagai salah satu syarat untuk memperoleh gelar Sarjana Komputer pada Fakultas Matematika dan Ilmu Pengetahuan Alam Institut Pertanian Bogor
DEPARTEMEN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR BOGOR 2009
ABSTRAK ANNES BERLIANA. Running Time Test of IDEA Algorithm in Encryption and Decryption Data process. Under supervision of Endang Purnama Giri. International Data Encryption Algorithm (IDEA) is a symetric and cipher block cryptographic algorithm. This algorithm operates in the form of bit block with the block size of 64 bits. The objective of this research is to measure the performance of IDEA based on the execution time (ms) and memory usage (KB) at the time of encryption and decryption process. The Implementation is built using JAVA programming language. The result show that increasing the size of file means increase the amount of memory usage and execution time.
Keyword : Cryptography, block cipher, IDEA
Judul Nama NIM
: Uji Running Time Algoritme IDEA dalam Proses Enkripsi dan Dekripsi Data : Annes Berliana : G64102013
Menyetujui: Pembimbing,
Endang Purnama Giri S.Kom., M.Kom NIP 198210102006041027
Mengetahui: Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam Institut Pertanian Bogor
Dr. drh. Hasim, DEA NIP 131578806
Tanggal Lulus:
PRAKATA Alhamdulillaahirabbil ‘aalamiin, puji dan syukur penulis panjatkan kepada Allah subhanahu wa ta’ala atas segala curahan rahmat dan karunia-Nya sehingga penelitian ini berhasil diselesaikan. Sholawat dan salam semoga senantiasa tercurah kepada Nabi Muhammad SAW, keluarganya, para sahabat, serta para pengikutnya. Karya tulis ini merupakan salah satu syarat memperoleh gelar Sarjana Komputer di Departemen Ilmu Komputer Fakultas Matematika dan Ilmu Pengetahuan Alam. Judul dari karya ilmiah ini adalah Uji Running Time Algoritme IDEA dalam Proses Enkripsi dan Dekripsi Data. Penyelesaian penelitian ini tidak terlepas dari dukungan dan bantuan berbagai pihak, oleh karena itu penulis ingin mengucapkan terima kasih sebesar-besarnya kepada: 1 Alm Ayahanda dan alm Ibunda penulis serta segenap keluarga besar penulis di Papua dan Bandung atas do’a, dukungan, semangat, kasih sayang, dan perhatiannya sehingga penulis dapat menepati amanah kedua almarhum, 2 Bapak Endang Purnama Giri, S.Kom., M.Kom selaku pembimbing, Ibu Ir. Sri Wahjuni, M.T dan Bapak Sony Hartono Wijaya S.Kom., M.Kom selaku Dosen Penguji, atas dukungan dan masukan bagi penulis dalam menyelesaikan tugas akhir ini, 3 Mas Ary atas setiap do’a, waktu, dukungan, semangat dan perhatian yang senantiasa mengiringi keseharian penulis, 4 Teman-teman ilkomerz 39, Feri Kurniawan, Hilma Zikra dan Zaki Faturrohman yang sama-sama berjuang untuk kelulusan, 5 Teman-teman Ilmu Komputer 40,41 dan 42 Muhammad Pandi, Tresna, Windy Deliana Khairani dan Rahmadhani M. yang telah banyak membantu penulis, terimakasih atas waktu, tenaga, dukungan dan kebersamaannya. Semoga Allah SWT membalas semua kebaikan kalian dan semoga tali silaturahmi di antara kita selalu tetap terjaga, dan 6 Seluruh staf dan karyawan Departemen Ilmu Komputer, serta pihak lain yang telah membantu dalam penyelesaian penelitian ini. Penulis menyadari bahwa karya tulis ini masih jauh dari sempurna karena keterbatasan pengalaman dan pengetahuan yang dimiliki penulis. Oleh karena itu, penulis mengharapkan saran dan kritik yang sekiranya dapat digunakan untuk perbaikan. Segala kesempurnaan hanya milik Allah SWT, semoga hasil penelitian ini dapat bermanfaat, Amin.
Bogor, September 2009
Annes Berliana
RIWAYAT HIDUP Penulis dilahirkan di Jayapura pada tanggal 12 Agustus 1984 dari ayah Alm Parlan Poernomo dan ibu Alm Nany Sumarni Nilandary. Penulis merupakan anak keempat dari empat bersaudara. Tahun 2002 Penulis lulus dari SMUN 1 Tarogong dan pada tahun yang sama lulus seleksi masuk IPB melalui jalur Undangan Seleksi Masuk IPB. Penulis memilih Program Studi Ilmu Komputer, Departemen Ilmu Komputer, Fakultas Matematika dan Ilmu Pengetahuan Alam IPB. Pada tahun 2005 Penulis melakukan kegiatan praktik lapang di PT. Telkom RisTI Geger Kalong Bandung selama kurang lebih dua bulan.
DAFTAR ISI Halaman DAFTAR GAMBAR ............................................................................................................................. ix DAFTAR LAMPIRAN .......................................................................................................................... ix
PENDAHULUAN Latar Belakang............................................................................................................................. 1 Tujuan Penelitian ......................................................................................................................... 1 Ruang Lingkup Penelitian ........................................................................................................... 1
TINJAUAN PUSTAKA Kriptografi.................................................................................................................................... 1 International Data Encryption Algorithm (IDEA) ....................................................................... 1 Key Generator (Pembangkit Kunci) ............................................................................................ 2 NetBeans IDE 6.5 ........................................................................................................................ 4 Proses Enkripsi IDEA ................................................................................................................. 4 Proses Dekripsi IDEA .................................................................................................................. 6 Kelebihan Algoritma IDEA ........................................................................................................ 6 Analisis Algoritme ....................................................................................................................... 7
METODE PENELITIAN Tahapan Penelitian ....................................................................................................................... 7 Spesifikasi Uji Implementasi ....................................................................................................... 7 Lingkungan Penelitian ................................................................................................................. 7
HASIL DAN PEMBAHASAN Konsep Program ........................................................................................................................... 7 Input dan Output .......................................................................................................................... 8 Uji Coba ....................................................................................................................................... 8 Hasil Implementasi ..................................................................................................................... 8
KESIMPULAN DAN SARAN Kesimpulan ................................................................................................................................ 11 Saran .......................................................................................................................................... 11
DAFTAR PUSTAKA ........................................................................................................................... 11 LAMPIRAN ......................................................................................................................................... 12
DAFTAR TABEL Halaman 1
Daftar Pengacakan Kunci ................................................................................................................ 4
2
Dekripsi Kunci Subblok ................................................................................................................... 6
3
Hasil Waktu Enkripsi File Teks ....................................................................................................... 8
4
Hasil Waktu Dekripsi File Teks ....................................................................................................... 8
5
Hasil Waktu Enkripsi File Dokumen ............................................................................................... 9
6
Hasil Waktu Dekripsi File Dokumen ............................................................................................... 9
7
Penggunaan Memori Enkripsi File Teks .......................................................................................... 9
8
Penggunaan Memori Dekripsi File Teks........................................................................................ 10
9
Penggunaan Memori Enkripsi File Dokumen ................................................................................ 10
10 Penggunaan Memori Dekripsi File Dokumen................................................................................ 10
DAFTAR GAMBAR Halaman
1
Alur Kriptografi Simetris ................................................................................................................ 2
2
Interruption...................................................................................................................................... 2
3
Interception ..................................................................................................................................... 2
4
Modification .................................................................................................................................... 2
5
Fabrication ..................................................................................................................................... 2
6
Pembangkit Kunci .......................................................................................................................... 2
7
Pembentukan Subkunci IDEA ......................................................................................................... 3
8
Proses Enkripsi IDEA ..................................................................................................................... 5
9
Proses Dekripsi IDEA...................................................................................................................... 6
10 Waktu Enkripsi File Teks ............................................................................................................... 8 11 Waktu Dekripsi File Teks ................................................................................................................ 9 12 Waktu Enkripsi File Dokumen ........................................................................................................ 9 13 Waktu Dekripsi File Dokumen ........................................................................................................ 9 14 Penggunaan Memori Enkripsi File Teks........................................................................................ 10 15 Penggunaan Memori Dekripsi File Teks ....................................................................................... 10 16 Penggunaan Memori Enkripsi File Dokumen ................................................................................ 11 17 Penggunaan Memori Dekripsi File Dokumen ............................................................................... 11
DAFTAR LAMPIRAN Halaman
1
Tampilan Awal Program ............................................................................................................... 13
2
Tampilan Pemilihan File................................................................................................................ 13
3
Tampilan Open File Teks atau Dokumen ...................................................................................... 14
4
Tampilan File Dokumen yang akan di Enkripsi ............................................................................ 14
5
Tampilan Masukan Kunci Password ............................................................................................. 15
6
Tampilan Durasi Waktu Enkripsi .................................................................................................. 15
7
Tampilan Enkripsi ......................................................................................................................... 16
8
Tampilan Dekripsi ......................................................................................................................... 16
9
Perincian Perhitungan Waktu eksekusi Enkripsi File Teks ........................................................... 17
10 Perincian Perhitungan Waktu eksekusi Dekripsi File Teks ........................................................... 17 11 Perincian Perhitungan Waktu eksekusi Enkripsi File Dokumen ................................................... 18 12 Perincian Perhitungan Waktu eksekusi Dekripsi File Dokumen ................................................... 18 13 Perincian Perhitungan Memori pada Proses Enkripsi File Teks .................................................... 19 14 Perincian Perhitungan Memori pada Proses Dekripsi File Teks .................................................... 20 15 Perincian Perhitungan Memori pada Proses Enkripsi File Dokumen ............................................ 21 16 Perincian Perhitungan Memori pada Proses Enkripsi File Dokumen ............................................ 22
PENDAHULUAN Latar Belakang Dalam era globalisasi sekarang ini, keamanan merupakan aspek yang sangat penting dalam transaksi informasi. Informasi yang dipertukarkan tidak semuanya terbuka bagi setiap orang. Informasi tersebut terkadang hanya ditujukan bagi kalangan tertentu saja dan dijaga kerahasiaannya dari orang lain. Teknik mengamankan informasi tersebut erat kaitannya dengan kriptografi. Algoritme kriptografi dapat dibagi ke dalam kelompok algoritme simetris dan algoritme asimetris. Algoritme simetris merupakan algoritme kriptografi yang menggunakan kunci yang sama baik untuk proses enkripsi maupun dekripsi. Algoritme simetris dapat dikelompokkan menjadi dua kategori, yaitu cipher aliran (stream chiper) dan cipher blok (block chiper). Chiper aliran merupakan algoritme kriptografi yang beroperasi dalam bentuk bit tunggal. Sedangkan algoritme kriptografi kategori cipher blok beroperasi dalam bentuk blok bit. Saat ini sudah banyak berkembang algoritme kriptografi simetris baik untuk kategori cipher aliran maupun cipher blok. Di dalam dunia informatika dikenal International Data Encryption Algorithm (IDEA) dan beberapa algoritme lainnya seperti DES, Blowfish dan AES. Algoritme IDEA beroperasi dalam bentuk blok bit (cipher blok), dengan ukuran blok sebesar 64 bit dan dapat bekerja dengan menerima panjang kunci 128 bit. Algoritme IDEA dikenal cukup tangguh dalam mengamankan informasi karena sampai saat ini belum ada yang berhasil menembus keamanan algoritme ini (Andi 2003). Oleh karena itu penulis tertarik untuk mengimplementasikan algoritme IDEA dalam suatu program aplikasi enkripsi dan dekripsi data untuk mengetahui waktu eksekusi dan penggunaan physical memory yang dibutuhkan. Tujuan Kerahasiaan informasi merupakan hal yang menjadi target utama dalam proses enkripsi. Tujuan penelitian ini adalah:
Ruang Lingkup Algoritme yang dibahas adalah algoritme International Data Encryption Algorithm (IDEA) dimana kategori file yang di enkripsi dibatasi pada file berektensi .txt dan .doc.
TINJAUAN PUSTAKA Kriptografi Kriptografi adalah studi teknik matematik yang berkaitan dengan aspek keamanan informasi seperti kerahasiaan, integritas data, autentikasi entitas, dan autentikasi asal data (Menezes et al 1996). Kriptografi dapat memenuhi kebutuhan umum suatu transaksi yaitu: 1 Kerahasiaan (confidentiality) dijamin dengan melakukan enkripsi (penyandian). 2 Keutuhan (integrity) atas data-data pembayaran dilakukan dengan fungsi hash satu arah. 3 Jaminan atas identitas dan keabsahan (authenticity) pihak-pihak yang melakukan transaksi dilakukan dengan menggunakan password atau sertifikat dijital. Sedangkan keautentikan data transaksi dapat dilakukan dengan tanda tangan dijital. 4 Transaksi dapat dijadikan barang bukti yang tidak bisa disangkal (non-repudiation) dengan memanfaatkan tanda tangan digital dan sertifikat dijital. International (IDEA)
Data
Encryption
Algorithm
IDEA (International Data Encryption Algorithm) merupakan algoritme simetris yang beroperasi pada sebuah blok pesan terbuka dengan lebar 64 bit dan panjang kunci berukuran 128 bit. Algoritme IDEA menggunakan algoritme yang sama untuk proses enkripsi dan dekripsi. Dan pesan rahasia yang dihasilkan oleh algoritme ini berupa blok pesan rahasia dengan lebar atau ukuran 64 bit. Algoritme IDEA menggunakan operasi campuran dari tiga operasi aljabar yang berbeda, yaitu: Operasi XOR (⊕), Operasi penjumlahan modulo 216 (), dan Operasi perkalian modulo (216+1) ( •). Semua operasi ini dilakukan pada subblok 16 bit. Algoritme IDEA melakukan iterasi sebanyak 8 iterasi dan terdapat transformasi keluaran setelah melakukan 8 iterasi.
1 Mengimplementasikan algoritme IDEA pada proses enkripsi dan dekripsi data; 2 Mengukur waktu eksekusi dan memori yang dibutuhkan dalam proses enkripsi dan dekripsi data.
1
4
Fabrication
Pada serangan ini, penyerang berhasil mengirimkan data ke tujuan dengan memanfaatkan identitas orang lain. Fabrication merupakan pola penyerangan terhadap sifat authenticity.
Gambar 1 Alur kriptografi simetris (Bishop 2003)
B
A C
Beberapa bentuk ancaman terhadap komunikasi data dalam komputer dapat dijabarkan sebagai berikut : 1
Interruption
Interruption terjadi bila data yang dikirimkan dari pengirim A tidak sampai pada penerima (B). Interruption merupakan pola penyerangan terhadap sifat availability (ketersediaan data).
A
B
Ancaman-ancaman di atas menjadi masalah terutama dengan semakin meningkatnya komunikasi data yang bersifat rahasia seperti: transaksi dana elektronik dalam dunia perbankan dan pengiriman dokumen rahasia dari dan oleh instansi militer / pemerintah. Untuk mengantisipasi ancaman-ancaman tersebut maka perlu dilakukan perancangan usaha perlindungan data yang dikirim melalui media komunikasi, salah satunya dengan menggunakan teknik enkripsi. Key Generator (Pembangkit Kunci)
Gambar 2 Interruption (Ariyus 2006) 2
Gambar 5 Fabrication (Ariyus 2006)
Interception
Pada serangan ini pihak ketiga C berhasil membaca data yang dikirimkan. Interception merupakan pola penyerangan terhadap sifat confidentiality (kerahasiaan data).
B
A C Gambar 3 Interception (Ariyus 2006) 3
Modification
Serangan ini terjadi bila pihak ketiga C berhasil mengubah pesan yang dikirimkan. Modification merupakan pola penyerangan terhadap sifat integrity (keaslian data).
A
B
Gambar 6 Pembangkit Kunci (Bishop 2003) Karena algoritme ini menggunakan kunci yang sama untuk proses enkripsi maupun dekripsi, diperlukan suatu metode untuk menghasilkan kunci, antara lain dengan memanfaatkan fasilitas pembangkit kunci dari program pengacak bilangan pada komputer, atau dengan membuat kunci secara manual. Cara pertama sangat efektif dalam mencegah serangan yang dapat mengubah kunci, namun sukar dihafal oleh pengguna. Akan tetapi cara kedua lebih rentan terhadap serangan pengubah kunci, meskipun kunci lebih mudah diingat.
C Gambar 4 Modification (Ariyus 2006)
2
Langkah selanjutnya adalah mengolah bilangan acak tersebut agar dapat digunakan pada algoritme IDEA. Sangat dianjurkan untuk menyimpan kunci dalam suatu file sehingga lebih meminimasi kemungkinan kunci hilang atau lupa. Kunci dibagi menjadi 52 subkunci yaitu: a
Enam subkunci tiap iterasi untuk delapan kali iterasi
b
Empat subkunci untuk transformasi akhir.
Subkunci dibentuk dengan cara membagi kunci 128 bit menjadi delapan subkunci masing-masing sebesar 16 bit. Bentuk subkunci untuk delapan iterasi awal adalah Bentuk K11 , K21 , K31 , K41 , K51 , K61 , K12 , K22 . Gambar 7 Pembentukan (Hidayat 2006)
Subkunci
IDEA
Karena IDEA merupakan algoritme kriptografi kunci simetris, maka kunci untuk melakukan proses enkripsi dan dekripsi adalah sama. Sebagai konsekuensinya kunci tersebut harus dirahasiakan agar tidak diketahui oleh orang yang tidak berhak, sehingga kunci simetris ini disebut juga dengan kunci rahasia (Secret Key). Salah satu langkah aman dalam menciptakan suatu kunci simetris yang tahan terhadap serangan adalah dengan membuat kunci dari bilangan acak (Random Number). Java Virtual Machine (JVM) dan Java Cryptographic Extension (JCE) menyediakan suatu layanan untuk membangkitkan bilangan acak yang dapat digunakan oleh algoritme IDEA, yaitu dengan menggunakan kelas java.security.SecureRandom.
potongan algoritmenya adalah sebagai berikut: byte[][] b3 = new byte[2][2]; int k2=0; for i3=0;i3
for (int j2=0;j2<8;j2++){ char[][] c1 = an.toCharArray(i3, j2); b3[i3][j2] b2.getBytes(i, j, byte, 0);
import java.util.Random.*; Panjang kunci untuk algoritme IDEA adalah 128-bit, atau sama dengan 16x8-bit (1 byte = 1 karakter = 8 bit). Artinya panjang kunci maksimal untuk algoritme ini adalah 16 karakter. SecureRandom sr = SecureRandom.getInstance("SHA1PR NG");
=
k2++; } } for i3=0;i3
(int
for (int j2=0;j2<8;j2++){
import java.security.NoSuchAlgorithm Exception.*; import java.security.*;
(int
System.out.print(b3+""); } } Kemudian kunci tersebut digeser sebanyak 25 bit ke kiri dan dibagi lagi menjadi delapan 2 2 2 2 3 3 3 3 subkunci K3 , K4 , K5 , K6 , K1 , K 2 , K3 , K 4 . Bentuk potongan algoritmenya adalah sebagai berikut: an = an>>25; Proses pengacakan ini berulang sampai semua 52 subkunci terbentuk.
byte[ ] b = new byte[16]; sr.nextBytes(b);
3
Tabel 1 Daftar Pengacakan Kunci Putaran Ke-1
K1 K2 K3 K4 K5 K6
Putaran Ke-2
K7 K8 K9 K10 K11 K12
Putaran Ke-3
K13K14 K15 K16 K17 K18
Putaran Ke-4
K19 K20 K21 K22 K23 K24
Putaran Ke-5
K25 K26 K27 K28 K29 K30
Putaran Ke-6
K31 K32 K33 K34 K35 K36
Putaran Ke-7
K37 K38 K39 K40 K41 K42
Putaran Ke-8
K43 K44 K45 K46 K47 K48
Transformasi Output
K49 K50 K51 K52
Kita perhatikan pada potongan algoritme diatas terdapat bentuk boolean yn; yn = (an>=0 && an<=123); if(yn){ System.out.print(new String(b2)); } else System.out.print(Math.abs( an)); yn dipandang sebagai fungsi boolean dari bilangan integer int an dimana 0 an 123. Jika yn bernilai true maka nilai variabel an akan diganti menjadi karakter String yang nilainya bersesuaian pada tabel ASCII. Jika tidak, maka nilai an akan diubah menjadi bilangan absolut |an|. for (int i2=1;i2<=8;i2++){ try{
Paltform NetBeans memungkinkan aplikasi dibangun dari sekumpulan komponen perangkat lunak moduler yang merupakan suatu arsip Java yang memuat kelas-kelas Java untuk berinteraksi dengan NetBeans Open API dan file manifestasi yang mengidentifikasinya sebagai modul. Proses Enkripsi IDEA Langkah awal dalam pemrosesan enkripsi dengan algoritme IDEA ini yaitu blok pesan terbuka dengan lebar 64 bit (diperumpamakan dengan X), dibagi menjadi 4 subblok 16 bit, X1, X2, X3, X4, sehingga X = (X1, X2, X3, X4). Keempat subblok 16 bit itu ditransformasikan menjadi subblok 16 bit, Y1, Y2, Y3, Y4, sebagai pesan rahasia 64 bit Y = (Y1, Y2, Y3, Y4) yang berada di bawah kendali 52 subkunci 16 bit yang dibentuk dari blok kunci 128 bit. Enkripsi algoritme ini hanya melibatkan tiga operasi aljabar berbeda yang sederhana: exclusive-OR, penjumlahan modulo 216 dan perkalian modulo 216+1. Proses enkripsi dijabarkan sebagai berikut: Pertama, sistem menerima input data, kemudian input dihitung jumlah karakternya. Selanjutnya input dibagi tiap 64 bit blok M =
m1 m64 sebagai blok-blok implementasi
algoritme ini. Untuk setiap blok mi masingmasing dibagi kembali menjadi empat unit subblok plaintext X1 , X 2 , X 3 , X 4 yang berisi
( m1 m16 , m17 m32 , m33 m48 , m49 m64 ) Iterasi ke-n menerima input blok 64-bit sebagai
......
X 1n hingga X 4n , dan Yn menghasilkan empat 16-bit blok, 1 hingga Y4n . empat 16-bit subblok
} catch(NoSuchAlgorithmExcept ion e){ //TODO catch block
NetBeans mengacu pada dua hal, yaitu platform untuk pengembangan aplikasi desktop java dan sebuah Integrated Development Environtment (IDE) yang dibangun menggunakan platform NetBeans.
auto
generated
e.printStackTrace(); } NetBeans IDE 6.5 NetBeans IDE adalah IDE open source yang ditulis sepenuhnya dengan bahasa pemrograman java menggunakan platform NetBeans.
4
9
X 9r ¬ X 8r ∗ Z 6n subkunci Z
10
Kalikan (8) dengan
n 6
X 10r ¬ X 7r Å X 9r Tambahkan (7) dan (9)
11
X 11r ¬ X 1r X 9r XOR hasil dari (1) dan (9)
12
X 12r ¬ X 3r X 9r XOR hasil dari (3) dan (9)
13
X 13r ¬ X 2r X 9r XOR hasil dari (2) dan (10)
14
X 14r ¬ X 4r X 9r XOR hasil dari (4) dan (10)
Hasil iterasinya adalah empat subblok yang didapat dari langkah- langkah (11) hingga (14). Dua subblok bagian dalam dari langkah-langkah (12) dan (13) ditukar, kecuali pada transformasi akhir. Gambar 8 Proses Enkripsi IDEA (Hidayat 2006) 1
X 1r ¬
X 1n ∗ Z1n
Kalikan
X 1r dengan
n
subkunci Z1 2
X 2r ¬ X 2n Å Z 2n Tambahkan
X 2r
Pada transformasi akhir dilakukan suatu metode khusus untuk menghasilkan ciphertext. Misalkan Y1 , Y2 , Y3 , Y4 menandakan empat 16bit subblok dalam blok ciphertext 64-bit. Operasi yang dilakukan dalam transformasi akhir adalah: 1
n
X
dengan subkunci Z 2 3
X 3r ¬ X 3n Å Z 3n Tambahkan n
X 4r ¬ X 4n ∗ Z 4n
2 Kalikan
6
8 2
Z7
untuk
Y1
dan sub-key
Tambahkan
subblok
Z 8 untuk memperoleh
3
Y3 ¬ X 38 Å Z 9
Tambahkan
subblok
X 38 dan sub-key Z 9 untuk memperoleh
X 6r ¬ X 2 X 4 XOR hasil dari (2)
Y3 4
X ¬ X ∗Z r 7
r 5
n 5
Kalikan
hasil
(5)
n
dengan subkunci Z 5 8
sub-key
dan (3)
dan (4) 7
dengan
subblok
Y2
n
X 5r ¬ X 1 X 3 XOR hasil dari (1)
Kalikan
Y2 ¬ X 28 Å Z 8 X
X 4r dengan
subkunci Z 4 5
8 1
memperoleh
X 3n
dengan subkunci Z 3 4
Y1 ¬ X 18 ∗ Z 7
X 8r ¬ X 6r Å X 7r Tambahkan (6) dan (7)
Y4 ¬ X 48 ∗ Z10 X
8 4
dengan
memperoleh
Y4
Kalikan sub-key
subblok
Z10
untuk
.
Hasil transformasi akhir adalah plaintext yang telah dienkripsi (ciphertext), sehingga karakter yang muncul adalah karakter acak yang
5
sulit dibaca. Dengan demikian proses enkripsi telah selesai.
a.
dengan subkunci Z
Proses Dekripsi IDEA Proses dekripsi menggunakan algoritme yang sama dengan proses enkripsi. Perbedaannya hanya pada 52 buah subkunci yang digunakan masing-masing merupakan hasil turunan 52 buah subkunci enkripsi. Tabel 2 Dekripsi kunci subblok (Hidayat 2006) Round 1 Round 2
Z3
Z1(9) -1, Z2(9) -1, , Z4(9) -1, Z5(8),Z6(8)
(9) -1
Z1(8) -1, Z2(8) -1, (8) -1 Z3 , Z4(8) -1, Z5(7),Z6(7) (7) -1
Round 3 Round 4 Round 5
Round 7 Round 8
Transformasi Akhir
(7) -1
Z1 , Z2 , Z3(7) -1, Z4(7) -1, Z5(6),Z6(6) Z1(6) -1, Z2(6) -1, , Z4(6) -1, Z5(5),Z6(5)
Z3
(6) -1
Z3
(5) -1
Z1(5) -1, Z2(5) -1, , Z4(5) -1, Z5(4),Z6(4) (4) -1
Round 6
X 7r ¬ X 5r ∗ Z 5n
(4) -1
Z1 , Z2 , Z3(4) -1, Z4(4) -1, Z5(3),Z6(3) Z1(3) -1, Z2(3) -1, , Z4(3) -1, Z5(2),Z6(2)
Z3
(3) -1
Z3
(2) -1
Z3
(1) -1
b.
Kalikan hasil (5) n 5
X 8r ¬ X 6r Å X 7r Tambahkan hasil (6) dan (7)
Pada studi kasus b, nilai variabel X7 merupakan hasil kali antara variabel X5 dengan subkunci enkripsi Z5. Pada proses dekripsi, operator yang digunakan adalah invers dari operator multiplikatif ” ∗” yaitu operator pembagi “ ¸ ”. Sehingga kalimat tersebut diubah menjadi
X 5r ¬ X 7r ¸ Z 5n karena variabel X 7r diketahui dan Z 5n adalah subkunci. Demikian pula pada studi kasus c. Operator subtraktif “-“ digunakan menggantikan operator aditif “ ”. Karena r
r
variabel X 8 dan X 7 telah diketahui maka kalimat tersebut diubah menjadi
X 6r ¬ X 8r - X 7r Sebagai akibatnya, alur keseluruhan proses enkripsi mengalami inversi menjadi kebalikannya.
Z1(2) -1, Z2(2) -1, , Z4(2) -1, Z5(1),Z6(1) Z1(1) , Z4(1) -1
-1
, Z2(1)
-1
,
Proses dekripsi dimulai dengan menerima data masukan berupa ciphertext. Seperti halnya pada proses enkripsi, dekripsi juga melakukan proses pemeriksaan dan penghitungan jumlah karakternya. Setelah data masukan diperiksa, program akan meminta masukan kunci dekripsi untuk menjalankan proses dekripsi. Masukan kunci dekripsi harus sama dengan kunci enkripsi, karena jika kunci berbeda walaupun hanya satu karakter akan sangat berpengaruh terhadap hasil dekripsi, bahkan hasil dekripsi dapat menjadi file redundan. Pada saat kunci diterima, algoritme dekripsi beroperasi sebagai invers algoritme enkripsi. Sebagai contoh, diberikan bagian dari algoritme enkripsi sebagai berikut:
Gambar 9 Proses Deskripsi IDEA (Hidayat 2006) Kelebihan Algoritma IDEA Algoritme IDEA mempunyai kelebihankelebihan sebagai berikut:
6
1
Dalam segi keamanan penyandian data algoritme IDEA mempunyai standar yang lebih sederhana namun cukup ampuh untuk mencegah serangan cryptanalysis terhadap kunci enkripsi dan dekripsi. Pembangkit kunci yang diperoleh dengan menjalankan fungsi Pembangkit Bilangan Acak terbukti dapat menyandikan data plaintext menjadi ciphertext yang sulit diterjemahkan langsung namun mudah didekripsi dengan menggunakan kunci dekripsi asli.
2 Dari segi efisiensi waktu algoritme IDEA mempunyai akselerasi yang cukup baik dalam mengenkripsi dan mendekripsi data, terutama karena struktur algoritmenya lebih singkat namun tidak mengurangi kemampuan dasar dalam mengamankan penyandian data. 3 Dalam membangkitkan kunci kriptografi simetris fitur Java.SecureRandom memiliki kemampuan yang baik dalam mengolah dan mengacak kunci sehingga tidak ditemukan kunci kriptografi yang menyerupai ataupun yang sama persis. Akibatnya algoritme IDEA yang sudah cukup dikenal ketahanannya mempunyai daya dukung yang lebih baik dalam pengamanan data. Analisis Algoritme Analisis algoritme dilakukan untuk menduga besarnya sumber daya waktu yang dibutuhkan untuk sembarang ukuran input n (Cormen et al. 1990). Kompleksitas, T(n), didefinisikan sebagai waktu yang dibutuhkan oleh suatu algoritme untuk menyelesaikan proses dengan input berukuran n. Berdasarkan waktu eksekusi program T(n), dapat ditentukan growth rate-nya, yaitu laju pertumbuhan waktu terhadap variasi ukuran input. Sebagai contoh, analisis suatu algoritme menghasilkan T(n) = an2 + bn + c, dengan a, b, dan c adalah suatu konstanta, maka dapat dikatakan growth rate algoritme tersebut adalah n2 yang merupakan bagian paling signifikan pada polinomial an2 + bn + c. Nilai-nilai konstanta a, b, dan c tergantung pada jenis komputer dan platform bahasa pemrograman yang hanya dapat ditentukan melalui percobaan eksekusi program. Kompleksitas komputasi dari suatu algoritme memberikan gambaran umum bagaimana perubahan T(n) terhadap n. Waktu eksekusi ini tidak dipengaruhi oleh faktor-faktor nonteknis implementasi seperti bahasa pemrograman ataupun sarana perangkat lunak tertentu. Dalam platform uji yang seragam, suatu algoritme dengan growth rate yang
rendah, misalkan log n atau n log n, lebih cepat jika dibandingkan dengan algoritme yang memiliki growth rate lebih besar, misalnya n2, n3, n!, dan nn.
METODE PENELITIAN Tahapan Penelitian Tahap-tahap yang dilakukan dalam penelitian ini: 1 Tahap pembangunan program enkripsi dan dekripsi data menggunakan algoritme IDEA dengan bahasa pemrograman Java, dengan komponen JAVA Swing digunakan untuk membuat tampilan berbasis Graphical User Interface (GUI), dan Windows XP sebagai sistem operasi. 2 Tahap pengujian program terhadap file teks (.txt) dan dokumen (.doc). Pada tahap ini, uji coba dilakukan dengan cara menghitung waktu eksekusi enkripsi dan dekripsi data dan untuk mengetahui penggunaan memori pada saat enkripsi dan dekripsi data digunakan fasilitas Task Manager yang tersedia pada sistem operasi windows. Spesifikasi Uji Implementasi Uji implementasi dilakukan dengan menggunakan 10 ukuran file teks yang berbeda, dengan ukuran file minimum 5 kb dan maksimum 273 kb dengan selang acak. Begitupula dengan 10 ukuran file dokumen yang berbeda, dengan ukuran file minimum 32 kb dan maksimum 300 kb dengan selang acak sebagai obyek kajian, pengujian ini dilakukan penghitungan waktu eksekusi dan penggunaan memori dari setiap perlakuan. Ulangan setiap perlakuan dilakukan sebanyak 10 kali untuk masing-masing file teks dan dokumen. Lingkungan Penelitian Perangkat keras dan perangkat lunak yang digunakan adalah sebagai berikut. a. Perangkat lunak: sistem operasi Windows Vista Home Basic dan aplikasi bahasa pemrograman Java, b. Perangkat keras: Prosesor Intel Core2 Duo.
HASIL DAN PEMBAHASAN Konsep Program Program yang dibuat adalah aplikasi enkripsi dan dekripsi IDEA. Program ini digunakan untuk mengenkripsikan dan mendekripsikan sebuah file untuk tipe file teks (.txt) dan dokumen (.doc).
7
Input dan Output Input program untuk proses enkripsi adalah nama file yang akan dienkripsi. Output yang didapatkan setelah proses enkripsi file yang sudah terenkripsi dan file kunci (key). Pada saat melakukan dekripsi file, pengguna memasukkan nama file terenkripsi yang akan didekripsi, serta secara tidak langsung juga memasukkan nama file kunci (key).
Hasil Implementasi Implementasi algoritme IDEA dilakukan dengan menggunakan bahasa pemrograman Java. Hal ini didasarkan atas pertimbangan bahwa Java mampu membangkitkan bilangan besar. Platform Java yg digunakan adalah Netbeans IDE 6.5. Implementasi program dapat dilihat pada lampiran 1. Untuk pemilihan file yang akan di enkripsi dan dekripsi, dalam hal ini ada dua jenis file, yaitu file teks dan dokumen dapat dilihat pada lampiran 2. Proses memasukkan key password ada pada lampiran 5 dan untuk melihat durasi waktu dalam proses enkripsi dapat dilihat pada lampiran 6. Tampilan proses enkripsi dan dekripsi dapat dilihat pada lampiran 7 dan 8. Uji implementasi dilakukan dengan menggunakan 10 ukuran file teks yang berbeda, dengan ukuran file minimum 5kb dan maksimum 273kb dengan selang acak. Begitupula dengan 10 ukuran file dokumen yang berbeda, dengan ukuran file minimum 32 kb dan maksimum 300 kb dengan selang acak sebagai obyek kajian, pengujian ini dilakukan penghitungan waktu eksekusi dan penggunaan memori dari setiap perlakuan. Ulangan setiap perlakuan dilakukan sebanyak 10 kali untuk masing-masing file teks dan dokumen.
54
17,5
6
77
26,1
7
111
34,8
8
152
42,9
9
193
71,3
10
273
108,7
Waktu Rata-rata (ms)
No
Ukuran File (kb)
Average (ms)
1
5
5,5
2
7
7,8
3
9
12,4
4
23
21,4
5
54
43,2
6
77
59,7
7
111
96,7
8
152
101,6
9
193
156,9
10
273
152,1
Waktu Rata-rata (ms)
65,73
Pada Tabel 3 dan 4 waktu rata-rata enkripsi file teks lebih kecil dari waktu rata-rata dekripsi. Seiring meningkatnya ukuran file, waktu enkripsi juga mengalami peningkatan. Dapat dilihat pada gambar 10 dan 11. Waktu Enkripsi File teks (.txt) 110 100 90 80 70 60 50 40 30 20 10 0 0
Tabel 3 Waktu enkripsi file teks
38,62
Tabel 4 Waktu dekripsi file teks
Average Time (ms)
Uji Coba Untuk mengetahui penghitugan kinerja algoritme IDEA dalam hal waktu eksekusi (ms) dan pemakaian memori (KB) pada saat proses enkripsi dan dekripsi maka dilakukan pengujian terhadap file teks (.txt) dan dokumen (.doc). Untuk penghitungan penggunaan memori, penulis menggunakan fasilitas Task Manager yang terdapat pada sistem operasi Windows.
5
50
100 150 200 250 300
Size File (kb) No
Ukuran File (kb)
Average (ms)
1
5
5,4
2
7
26
3
9
15,2
4
23
38,3
Gambar 10 Waktu enkripsi file teks
8
Pada Tabel 5 dan 6 waktu rata-rata enkripsi file dokumen lebih kecil daripada waktu ratarata dekripsi.
Waktu Dekripsi File teks (.txt)
Waktu Enkripsi File Dokumen (.doc)
0
50 100 150 200 250 300 Size File (kb)
Gambar 11 Waktu dekripsi file teks
80 60 40 20 0
Average Time (ms)
Average Time (ms)
180 160 140 120 100 80 60 40 20 0
0 32 64 96 128160192224256288 Size File (kb)
Tabel 5 Waktu enkripsi file dokumen
Ukuran File (kb)
Average (ms)
1
32
4,7
2
37
9,5
3
59
14,3
4
62
17,3
5
81
18,8
6
115
28,2
7
141
37,7
8
175
42,1
9
245
57,3
10
300
64,1
Waktu Rata-rata (ms)
29,4
Gambar 12 Waktu enkripsi file dokumen
Waktu Dekripsi File Dokumen (.doc) Average Time (ms)
No
200 150 100 50 0 0
200 Size File (kb)
400
Gambar 13 Waktu dekripsi file dokumen
Tabel 7 Penggunaan memori enkripsi file teks Tabel 6 Waktu dekripsi file dokumen Ukuran File (kb)
Average (KB)
No
Ukuran File (kb)
Average (ms)
No 1
5
1607,2
1
32
9,4
2
7
1390,6
9
1715,6
2
37
10,8
3
3
59
20,2
4
23
1779
4
62
26,5
5
54
1925,6
5
81
40,6
6
77
2078,8
6
115
63,8
7
111
2450
7
141
82,5
8
152
2903,3
8
175
82,7
9
193
2976,7
9
245
110,9
10
273
10
300
Waktu Rata-rata (ms)
143,5
Memori Rata-rata (KB)
2881,6 2170,84
59,09
9
Tabel 8 Penggunaan memori dekripsi file teks No
Ukuran File (kb)
Average (KB)
No
Ukuran File (kb)
Average (KB)
1
5
486,4
2
7
689,9
1
32
1009,2
3
9
867,6
2
37
1330,8
4
23
1190,2
3
59
1308
5
54
1233,6
4
62
1380
6
77
1424
5
81
1705,6
7
111
1096,8
6
115
1994,8
141
1700,6
8
152
2828,6
7
9
193
3213,4
8
175
2261
10
273
3140,2
9
245
2123,7
1617,07
10
300
2595,2
Memori Rata-rata (KB)
Pada Tabel 7 dan 8 penggunaan memori rata-rata pada proses enkripsi file teks lebih besar daripada penggunaan memori pada saat dekripsinya. Hal ini menandakan pada proses enkripsi file, chipertext yang dihasilkan lebih besar daripada plaintext. Memory Enkripsi File teks (.txt) Average Memory (KB)
Tabel 9 Penggunaan memori enkripsi file dokumen
3000 2500 2000 1500 1000
Memori Rata-rata (KB)
Tabel 10 Memori dekripsi file dokumen No
Ukuran File (kb)
Average (KB)
1
32
519,4
2
37
545,8
3
59
798
4
62
1038,8
5
81
1125,2
6
115
1162,4
0 30 60 90120150180210240270300
7
141
735,7
Size File (kb)
8
175
1571,8
9
245
1231,1
10
300
2807,3
Gambar 14 Memori enkripsi file teks
Memori Rata-rata (KB)
Average Memory (KB)
1740,89
Memory Enkripsi File Dokumen (.doc) 3000 2500 2000 1500 1000
1153,55
Pada Tabel 9 dan 10 penggunaan memori rata-rata pada proses enkripsi file teks lebih besar daripada penggunaan memori pada saat dekripsinya. Hal ini menandakan pada proses enkripsi file, chipertext yang dihasilkan lebih besar daripada plaintext.
0 306090120150180210240270300 Size File (kb)
Gambar 15 Memori dekripsi file teks
10
Saran Untuk penelitian selanjutnya, bisa lebih dikembangkan pada file gambar, audio, video, atau file teks lainnya. Penelitian ini mengimplementasikan algoritme IDEA yang selanjutnya dapat dikembangkan dengan mengimplementasi algoritme simetris lainnya sebagai uji perbandingan algoritme.
DAFTAR PUSTAKA Gambar 16 Memori enkripsi file dokumen Andi R. 2003. Memahami Model Enkripsi & Security Data. Andi: Yogyakarta. Ariyus D. 2006. Kriptografi, Keamanan Data dan Komunikasi. Graha Ilmu: Yogyakarta. Bishop D. 2003. Introduction to Cryptography with Java Applets, Sudbury Massachusetts: Jones and Bartlett Publishers. Gambar 17 Memori dekripsi file dokumen
KESIMPULAN DAN SARAN Kesimpulan Program enkripsi dan dekripsi algoritme IDEA ini dapat berjalan dengan baik dan dapat digunakan untuk enkripsi dan dekripsi file .txt dan file .doc. Berdasarkan hasil pengujian dapat disimpulkan bahwa semakin besar ukuran file yang akan dienkripsi atau didekripsi maka semakin panjang waktu yang diperlukan, serta semakin banyak ruang memori yang dibutuhkan untuk proses enkripsi atau dekripsi file tersebut. Algoritme IDEA memiliki tingkat keamanan yang cukup tangguh dalam hal mengamankan data atau informasi. Hal ini disebabkan karena algoritme IDEA mempunyai fungsi Confusion (Pengacakan) dan Diffusion (Penyebaran). Fungsi pengacakan didefinisikan sebagai suatu cara untuk “memaksa” tiap-tiap plaintext bit agar dapat mempengaruhi tiap-tiap ciphertext bit dan tiap-tiap kunci bit untuk mempengaruhi tiap-tiap ciphertext bit. Sedangkan fungsi penyebaran didefinisikan sebagai penggabungan tiga operasi grup aljabar yang berbeda.
Cottom AB. 2004. Handbook of Cryptography CS 6520. [Online]. Tersedia: http://www.mcs.csuhayward.edu/~pwo ng/cs6520_sum04/sec1/blowfish.pdf Cormen TH, Leiserson CE, dan Rivest RL 1990. Introduction to Algorithms. Massachussets-London: The MIT Press Hariyanto B. 2005. Esensi-esensi Bahasa Pemrograman Java. Bandung: Informatika. Hidayat
T. 2006. Sistem Kriptografi IDEA. [Online]. Tersedia: http://budi.insan.co.id/courses/namadi k menjur/taufik-report.pdf . http://cryptix.org/cryptix-jce20050328-snap, 11 April 2006.
Kristianto A. 2003. Keamanan Data pada Jaringan Komputer. Yogyakarta: Gava Media. Menezes A. et.al. 1996. Handbook of Applied Cryptography. [Online]. Tersedia: http://www.cacr.math.uwaterloo.ca/ha c/. [20 Agustus 2007]
11
LAMPIRAN
12
Lampiran 1 Tampilan awal program
Lampiran 2 Tampilan pemilihan file
13
Lampiran 3 Open file teks atau dokumen
Lampiran 4 Tampilan file dokumen yang akan di Enkripsi
14
Lampiran 5 Tampilan masukan kunci password
Lampiran 6 Tampilan durasi waktu enkripsi
15
Lampiran 7 Tampilan enkripsi
Lampiran 8 Tampilan dekripsi
16
Tabel Perhitungan waktu eksekusi enkripsi dan dekripsi file teks
17
Tabel Perhitungan waktu eksekusi enkripsi dan dekripsi file dokumen
18
Tabel Perhitungan memori pada proses enkripsi file teks
Ulang an 1
2
3
4
5
6
7
8
9
10
5 19432 19944 512 17424 19412 1988 20804 22212 1408 20764 22212 1448 17472 19504 2032 17404 19412 2008 17460 19596 2136 20164 21312 1148 17392 19416 2024 20760 22128 1368
7 18696 19756 1060 17348 19388 2040 20692 22080 1388 20768 22084 1316 20740 22028 1288 20392 21070 678 20728 22064 1336 20728 22184 1456 17512 19524 2012 20824 22156 1332
9 17592 20180 2588 22272 23260 988 20896 22392 1496 20840 22256 1416 17524 19388 1864 17148 19188 2040 17664 19600 1936 20840 22256 1416 17552 19472 1920 20988 22480 1492
23 17924 19708 1784 17648 19984 2336 17612 19864 2252 20908 22412 1504 17600 19940 2340 19046 20120 1074 17980 19912 1932 20928 22492 1564 20904 22544 1640 21168 22532 1364
Ukuran File .txt 54 77 19032 18976 20452 21332 1420 2356 19076 18904 20520 20872 1444 1968 18968 19008 20592 20824 1624 1816 21164 18872 23364 20896 2200 2024 18840 18876 20852 21476 2012 2600 18104 21338 19922 22256 1818 918 20984 21196 23360 23828 2376 2632 21154 18842 23464 20856 2310 2014 18900 21208 20656 23648 1756 2440 21068 18952 23364 20972 2296 2020
111 19252 20808 1556 21668 24656 2988 21672 23976 2304 19320 21904 2584 21612 24536 2924 22180 24058 1878 19260 21884 2624 19310 21204 1894 19160 21988 2828 21712 24632 2920
152 19284 22472 3188 19220 22480 3260 19380 22516 3136 19364 22636 3272 19440 22592 3152 20308 21813 1505 19296 22436 3140 19164 22036 2872 21692 24016 2324 19388 22572 3184
193 22528 24172 1644 20224 24048 3824 20264 24940 4676 22592 24308 1716 20128 24188 4060 24012 25111 1099 20136 24380 4244 24592 25308 716 20108 23652 3544 20220 24464 4244
273 22576 24704 2128 20308 25816 5508 22828 24968 2140 20268 25956 5688 20236 25992 5756 24228 25690 1462 19016 19132 116 20238 21956 1718 22628 24752 2124 22632 24808 2176
19
Tabel Perhitungan memori pada proses dekripsi file teks
Ulangan 1
2
3
4
5
6
7
8
9
10
5 19964 20344 380 19512 19960 448 22228 22732 504 22228 22732 504 19744 20024 280 19764 20454 690 19620 20516 896 19852 19924 72 19544 20114 570 22144 22664 520
7 19776 20856 1080 19428 20372 944 22088 22588 500 22104 22616 512 22044 22540 496 19528 20532 1004 22080 22588 508 19556 20472 916 22011 22450 439 22168 22668 500
9 20456 20816 360 23372 23864 492 22400 23520 1120 22268 22692 424 19420 20624 1204 22100 23620 1520 19620 20748 1128 19736 20592 856 19420 20624 1204 22500 22868 368
23 20064 20580 516 20004 21232 1228 19888 21336 1448 22440 23292 852 19964 20568 604 22240 23892 1652 19920 21650 1730 22564 23376 812 18964 20468 1504 22540 24096 1556
Ukuran File .txt 54 77 21156 21328 22340 23068 1184 1740 21544 21120 22156 22820 612 1700 20608 21636 22628 23092 2020 1456 23384 20920 24380 22872 996 1952 20868 21500 22200 22684 1332 1184 23187 21150 24680 22720 1493 1570 23376 23844 24636 24352 1260 508 20668 23660 21636 24780 968 1120 20868 21510 22300 22584 1432 1074 23388 20988 24427 22924 1039 1936
111 21868 23348 1480 24688 25460 772 24836 25072 236 21920 23416 1496 24572 25368 796 24136 25760 1624 21896 23396 1500 22000 23484 1484 24572 25368 796 24656 25440 784
152 22050 25616 3566 23172 25860 2688 22548 25576 3028 22660 26312 3652 22620 25660 3040 22152 24160 2008 22468 25504 3036 24052 25376 1324 22620 25560 2940 22604 25608 3004
193 24180 27676 3496 25052 27952 2900 24956 27872 2916 24312 28376 4064 24192 27404 3212 24002 27676 3674 24404 27292 2888 24684 27576 2892 25192 28404 3212 24496 27376 2880
20
273 24732 29584 4852 25916 29000 3084 25920 29920 4000 25988 28712 2724 26012 28736 2724 26584 28126 1542 191036 191304 268 24776 29604 4828 25012 27636 2624 24832 29588 4756
Tabel Perhitungan memori pada proses enkripsi file dokumen
Ulangan
1
2
3
4
5
6
7
8
9
10
32 19604 20908 1304 23108 23652 544 19904 21128 1224 23216 23624 408 19876 21648 1772 19968 21184 1216 23204 23832 628 23316 23624 308 19892 21324 1432 19900 21156 1256
37 20404 21948 1544 20420 22100 1680 20600 21796 1196 20520 21796 1276 20572 21892 1320 20536 21956 1420 23312 24008 696 20520 22796 2276 23392 24104 712 20564 21752 1188
59 20808 22184 1376 20728 22160 1432 20728 22144 1416 20956 22300 1344 20796 22160 1364 20928 22420 1492 20632 22048 1416 20956 22300 1344 23476 24420 944 23524 24476 952
62 23692 24816 1124 23456 24424 968 20796 22232 1436 20704 22240 1536 23532 24468 936 20680 22124 1444 20752 22036 1284 20504 22340 1836 20568 22048 1480 20808 22564 1756
ukuran file .doc 81 115 20940 21620 23240 23572 2300 1952 21348 21732 22732 23876 1384 2144 21012 21668 22908 23568 1896 1900 21008 21756 22780 23776 1772 2020 20948 21776 22780 23792 1832 2016 21032 23940 22416 25404 1384 1464 20776 21720 22396 23752 1620 2032 21008 21756 22760 23776 1752 2020 21156 21752 22736 23708 1580 1956 23824 21460 25360 23904 1536 2444
141 25040 26108 1068 22404 24516 2112 25012 25760 748 22504 24616 2112 25140 25904 764 22488 24472 1984 22492 24464 1972 22314 24616 2302 22480 24456 1976 22484 24452 1968
175 22704 24672 1968 22428 24892 2464 22468 24836 2368 22420 24772 2352 22624 24500 1876 22136 24492 2356 22296 24620 2324 22420 24652 2232 22412 24736 2324 22296 24652 2356
245 24420 27852 3432 26072 26980 908 24356 27528 3172 26192 27076 884 26628 27472 844 24304 27464 3160 24188 27624 3436 26182 27063 881 24092 27476 3384 26268 27404 1136
21
300 24320 28176 3856 25704 27448 1744 25488 26908 1420 24316 28184 3868 25648 26520 872 25676 27040 1364 25444 26856 1412 24716 28284 3568 24344 28236 3892 24280 28236 3956
Tabel Perhitungan memori pada proses dekripsi file dokumen
Ulangan 1
2
3
4
5
6
7
8
9
10
32 20920 21972 1052 23684 23964 280 21156 21612 456 24056 24140 84 21648 22096 448 21212 21668 456 23848 24140 292 21344 21808 464 23544 23964 420 21176 22418 1242
37 21960 22472 512 22116 22808 692 21816 22352 536 21800 22376 576 21896 22456 560 21968 22560 592 24040 24564 524 24132 24608 476 22116 22518 402 21772 22360 588
59 22524 23248 724 22184 23012 828 22156 22928 772 22300 23076 776 22164 22956 792 22448 23268 820 22076 22884 808 24436 25312 876 22184 23052 868 24488 25204 716
62 25136 25948 812 24608 25300 692 22236 23100 864 22402 23112 710 24492 25308 816 22472 23076 604 22388 25992 3604 22404 23020 616 23208 24300 1092 22594 23172 578
ukuran file .doc 81 115 23244 23600 24200 24700 956 1100 23072 23888 24312 24924 1240 1036 22916 23592 23800 24888 884 1296 22784 23784 23724 24948 940 1164 22804 23812 24192 25120 1388 1308 22676 25820 23800 26264 1124 444 22412 23772 23788 25060 1376 1288 22760 23716 24056 25004 1296 1288 23072 23688 24412 25324 1340 1636 25372 23920 26080 24984 708 1064
141 26132 26656 524 24528 24844 316 25776 26336 560 24644 25532 888 25920 26452 532 24512 25236 724 24476 24788 312 24480 25376 896 24528 26541 2013 24672 25264 592
175 24696 26680 1984 24920 26268 1348 24872 26248 1376 24804 26184 1380 24528 26256 1728 24519 25896 1377 24644 26048 1404 24764 26148 1384 24911 27268 2357 24688 26068 1380
245 27872 28740 868 26972 28720 1748 27532 28608 1076 27104 29120 2016 28980 29200 220 27472 28092 620 27640 28480 840 27489 28532 1043 26972 29736 2764 27420 28536 1116
22
300 28204 29992 1788 27484 30980 3496 26940 30456 3516 28212 30004 1792 26552 30140 3588 27072 30552 3480 26896 30376 3480 28264 29968 1704 27459 30980 3521 28268 29976 1708
23