HYBRID CRYPTOSYSTEM UNTUK PENGAMANAN E …repository.amikom.ac.id/files/Publikasi_11.11.5425.pdf ·...
Transcript of HYBRID CRYPTOSYSTEM UNTUK PENGAMANAN E …repository.amikom.ac.id/files/Publikasi_11.11.5425.pdf ·...
i
HYBRID CRYPTOSYSTEM UNTUK PENGAMANAN E-DOKUMEN
MENGGUNAKAN ALGORITMA RC4, RSA DAN MD5
NASKAH PUBLIKASI
diajukan oleh
Rano Alyas
11.11.5425
kepada
JURUSAN TEKNIK INFORMATIKA
SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER
AMIKOM YOGYAKARTA
YOGYAKARTA
2014
iii
HYBRID CRYPTOSYSTEM FOR SECURITY E-DOCUMENT USING ALGORITHM RC4, RSA AND
MD5
HYBRID CRYPTOSYSTEM UNTUK PENGAMANAN E-DOKUMEN MENGGUNAKAN ALGORITMA
RC4, RSA DAN MD5
Rano Alyas
Ema Utami
Jurusan Teknik Informatika
STMIK AMIKOM YOGYAKARTA
ABSTRACT
The exchange of documents in cyberspace already widely used in commercial transactions .
Therefore , the document is an important role that must be secured by each user . Security of a
document is to be considered in maintaining the confidentiality of information , especially for the
contents of information that should only be known by the authorities alone . Delivery of data or
information without any security will be at risk to eavesdropping and the information in it can be easily
identified by parties who are not authorized .
One way to secure the document is to use a cryptographic algorithm . The principle of security
of this document is how the system can secure the storage and delivery of documents using a hybrid
cryptosystem . In this research , the use of hybrid cryptosystem is combination the RC4 algorithm ,
RSA and MD5. The stages of the security document includes three stages: data security processes ,
security locks , and testing the integrity of a file.
Applications built can perform encryption and decryption of file / document. The results of the
testing that has been done can be concluded that the application has been able to show and perform
encryption and decryption on a document of file. The performance of these applications can be
concluded that the larger the file size the longer the process in encrypted and the higher spec
computer used the faster encryption and decryption processes are processed bin SecureDoc
applications.
Keywords : Hybrid Cryptosystem , Cryptography , RC4 , RSA , MD5 and Documents.
4
1. PENDAHULUAN
1.1 Latar Belakang
Pertukaran dokumen berbasis komputer seperti pesan e-mail atau dokumen dalam pesan e-mail
di internet sudah luas digunakan sebagai transaksi komersiil. Dokumen sering berisi informasi penting
seperti kontrak resmi, transaksi keuangan, record penjualan dan lain-lain. Keamanan dari suatu data
merupakan hal yang perlu diperhatikan dalam menjaga kerahasiaan data terutama bagi dokumen
yang isinya hanya boleh diketahui oleh pihak yang berhak saja. Pengiriman data atau dokumen tanpa
dilakukan pengamanan akan beresiko terhadap penyadapan, kerahasiaan dan keotentikan data. Oleh
karena itu diperlukan suatu sistem pengamanan data yang bertujuan untuk meningkatkan keamanan
data, melindungi suatu data atau pesan agar tidak dibaca oleh pihak yang tidak berwenang, dan
mencegah pihak yang tidak berwenang untuk menyisipkan, menghapus, ataupun merubah data.
Salah satu ilmu pengamanan data yang terkenal adalah kriptografi. Kriptografi adalah ilmu
sekaligus seni untuk menjaga kerahasiaan pesan, data, atau informasi dengan cara
menyamarkannya menjadi bentuk tersandi yang tidak mempunyai makna (Munir, 2006). Dalam
kriptografi, terdapat 2 proses utama, enkripsi dan dekripsi. Enkripsi adalah proses penyandian pesan
asli atau plaintext menjadi ciphertext (teks tersandi). Sedangkan dekripsi adalah proses penyandian
kembali ciphertext menjadi plaintext (Munir, 2006). Untuk membangun sistem penyimpanan dokumen
yang hasil simpanannya tidak dapat dibaca oleh orang, dalam penelitian ini telah dikembangkan
model sistem pengamanan dengan proses enkripsi dan dekripsi dengan metode simetrik kriptosistem
dan asimetrik kriptosistem. Gabungan algoritma simetrik kriptosistem dan asimetrik kriptosistem
disebut sebagai hybrid cryptosystem (Fauziah, 2008).
Penggunaan hybrid cryptosystem dalam penelitian ini merupakan gabungan algoritma RC4,
RSA dan MD5 yang digunakan dalam tiga tahapan pengamanan data pada dokumen. Adapun
tahapan pengamanan data meliputi : proses setup key, proses enkripsi data, dan proses dekripsi
data. Maka dari itu, pada penelitian ini penulis akan menggabungkan tiga algoritma sekaligus yaitu
algoritma RC4 digunakan sebagai pengamanan data, RSA digunakan dengan alasan tingkat
keamanannya sangat tinggi sebagai pengamanan kunci dan MD5 digunakan sebagai pengujian
integritas sebuah berkas. .
Berdasarkan latar belakang diatas, maka penulis mencoba mengembangkan aplikasi desktop
yang digunakan untuk pengamanan dokumen. Dengan adanya aplikasi ini, diharapkan dapat
membantu dalam pengamanan sebuah dokumen dengan cara enkripsi dan enkripsi. Untuk itu penulis
membuat penelitian skripsi dengan judul “Hybrid Cryptosystem Untuk Pengamanan E-dokumen
Menggunakan Algoritma RC4, RSA dan MD5”.
2. LANDASAN TEORI
2.1 Dokumen
Dokumen merupakan salah satu hal yang sangat penting karena merupakan sumber informasi
yang diperlukan oleh suatu instansi , organisasi , atau Negara.
5
2.1.1 Pengertian Dokumen
Dokumen adalah surat penting atau berharga yang sifatnya tertulis atau tercetak yang berfungsi
atau dapat di pakai sebagai bukti ataupun keterangan(Alwi, 2000).
2.1.2 Jenis-jenis Dokumen
Menurut Alwi Hasan (2000), ada tiga jenis dokumen yang harus dipahami dan diketahui
sebagai berikut :
1. Jenis dokumen dari segi pemakaian
2. Jenis dokumen dari segi fungsinya
3. Jenis dokumen dari segi ruang lingkupnya
2.1.3 E-Dokumen (Elektronik Dokumen)
Menurut undang-undang ITE pasal 1 angka 4, dokumen elektronik (e-dokumen) adalah setiap
Informasi Elektronik yang dibuat, diteruskan, dikirimkan, diterima, atau disimpan dalam bentuk
analog, digital, elektromagnetik, optikal, atau sejenisnya, yang dapat dilihat, ditampilkan, dan/atau
didengar melalui Komputer atau Sistem Elektronik, termasuk tetapi tidak terbatas pada tulisan, suara,
gambar, peta, rancangan, foto atau sejenisnya, huruf, tanda, angka, Kode Akses, simbol atau
perforasi yang memiliki makan atau arti atau dapat dipahami oleh orang yang mampu memahaminya.
2.2 Konsep Dasar Kriptografi
Kriptografi mempunyai peranan penting dalam dunia komputer. Hal ini disebabkan karena
banyaknya informasi rahasia yang disimpan dan dikirim melalui media komputer. Informasi-informasi
ini biasanya berisikan dokumen-dokumen penting dan data keuangan dari suatu instansi yang tidak
ingin dibaca oleh orang yang tidak berwenang atas informasi tersebut.
2.2.1 Pengertian Kriptografi
Kata kriptografi berasal dari bahasa Yunani. Dalam bahasa Yunani kriptografi terdiri dari dua
buah kata yaitu cryptos dan graphia. Kata crypto berarti rahasia (secret) sedangkan graphia berarti
tulisan. Sehingga makna dari kriptografi adalah tulisan rahasia. Menurut terminologinya kriptografi
adalah ilmu yang mempelajari tentang bagaimana menjaga kerahasiaan suatu pesan, agar isi pesan
yang disampaikan tersebut aman sampai ke penerima pesan (Dony Ariyus, 2008).
2.2.2 Tujuan Kriptografi
Aspek-aspek keamanan di dalam kriptografi adalah sebagai berikut (Rinaldi Munir, 2006) :
1. Confidentiality (kerahasiaan)
2. Authentication (otentikasi)
3. Non-repudiation (nir penyangkalan)
4. Integrity (data Integritas)
2.2.3 Cryptosystem dan Hybrid Cryptosystem
Menurut Rinaldi Munir (2006), sistem kriptografi (cryptosystem) adalah kumpulan yang terdiri
dari algoritma, semua plaintext dan ciphertext.
Hybrid cryptosystem yaitu kombinasi kriptografi dengan menggabungkan algoritma simetris dan
algoritma asimetris atau dengan public key dan private key(Fauziah, 2008). Secara umum
cryptosystem dapat digolongkan menjadi dua buah, yaitu(Kristanto, 2003) :
6
2.2.3.1 Symetric Cryptosystem
Dalam Symetric cryptosystem ini, kunci yang digunakan untuk proses enkripsi dan dekripsi
pada prinsipnya sama tetapi satu buah kunci dapat pula diturunkan dari kunci yang lainnya, kunci-
kunci ini harus dirahasiakan. Contoh dari sistem ini adalah Data Encryption Standard (DES), Blowfish,
IDEA, RC2, RC3, RC4, dan lain-lain.
2.2.3.2 Assymetric Criptosystem
Dalam Assymetric Cryptosystem ini digunakan dua buah kunci yang berbeda dalam proses
enkripsi dan dekripsinya. Satu kunci yang disebut kunci publik ( public key ) yang dapat
dipublikasikan, sedangkan kunci yang lain yang disebut kunci privat ( private key ) yang harus
dirahasiakan. Contoh dari sistem ini antara lain RSA Scheme dan Merkie Hellman Scheme.
2.3 RC4
Menurut Rinaldi Munir, RC4 merupakan salah satu jenis stream cipher yang didesain oleh
Ronald Rivest dil laboratorium RSA (RSA Data Security inc) pada tahun 1987. RC4 sendiri
merupakan kepanjangan dari Ronald Code atau Rivest’s Cipher. RC4 stream cipher ini merupakan
salah satu jenis algoritma yang mempunyai S-Box dan menggunakan variable yang panjang kuncinya
1 sampai 256 bit yang digunakan untuk menginisialisasikan tabel sepanjang 256 bit.
2.4 RSA
Algoritma RSA pertama kali ditemukan oleh Ron Rivest, Adi Shamir dan Leonard Aldeman.
RSA adalah singkatan dari huruf depan 3 orang yang menemukannya pada tahun 1977 di
MIT(Massachussets Institute of Technology). Pada tahun 1983, Massachusets Institute of Technology
menerima hak paten atas sebuah makalah yang berjudul “Cryptography Communication System and
Method” yang mengaplikasikan pengguna algoritma kriptografi RSA.(Yusuf Kurniawan, 2004)
2.5 MD5
Algoritma MD5 menerima masukan berupa pesan dengan ukuran sembarang dan
menghasilkan message digest yang panjangnya 128 bit. Dengan panjang message digest 128 bit,
maka secara brute force dibutuhkan percobaan sebanyak 2128 kali untuk menemukan dua buah
pesan atau lebih yang mempunyai message digest yang sama(Rinaldi, 2006).
2.6 Definisi Program dan Bahasa Pemrograman
Program merupakan kata, ekspresi atau pernyataan yang disusun dan dirangkai menjadi satu
kesatuan prosedur yang berupa urutan langkah untuk menyelesaikan masalah yang
diimplementasikan dengan menggunakan bahasa pemrograman sehingga dapat dieksekusi oleh
komputer.
Bahasa pemrograman adalah bahasa yang digunakan untuk memprogram komputer, yang
dibagi menjadi tiga level bahasa yaitu bahasa tingkat rendah (low level language), bahasa tingkat
menengah (middle level language) dan bahasa tingkat tinggi (high level language).
2.7 Java
Java adalah bahasa pemrograman yang kecil, sederhana, aman, objek-oriented, dijalankan
oleh interprater (kode program di-optimalisasi secara dinamis pada saat run-time), tidak tergantung
pada arsitektur (hardware), alokasi data yang tidak terpakai dibersihkan secara otomatis (oleh
7
garbage-collector), mendukung multithreading, serta mempunyai mekanisme penanganan exception
yang strongly-type (tipe exception diketahui secara pasti pada saat compile-time).
2.7.1 Karakteristik Java
Menurut Soesilo Wijono, G.Sri Hartati Wijono,B.Herry Suharto (2005), Keunggulan java
adalah sebagai berikut:
1. Java bersifat sederhana dan relatif mudah
2. Java berorientasi pada objek
3. Java bersifat terdistribusi
4. Java bersifat multiplatform
5. Java bersifat multithread
2.7.2 Teknologi Java
Platform java 2 tersedia dalam beberapa edisi. Masing-masing edisi ditunjukan untuk
membuat aplikasi yang berbeda. Edisi-edisi dalam platform Java 2 sebagai berikut (Matius Soesilo
Wijono,G.Sri Hartati Wijono,B.Herry Suharto.2005:9) :
1. Standard Edition (J2SE) , berisikan class-class yang merupakan inti dari bahasa java.
2. Enterprise Edition (J2EE), berisikan class-class dari java J2SE, ditambah dengan class-
class yang dipakai untuk membangun aplikasi enterprise.
3. Micro Edition (J2ME), berisikan subset dari class-class J2SE dan dipakai dalam produk-
produk consumer-electronic.
2.7.3 Java Class Library
Java menyediakan library-library standar yang telah di compile dan dapat langsung dipakai.
Dalam library ini terdapat bermacam-macam class yang dikelompokkan dalam package-package.
2.7.4 IDE NetBean
Menurut G.Sri Hartati, B.Herry Suharto, M.Soesilo Wijono(2007:3) IDE NetBeans dirancang
untuk memudahkan perancangan dan pemakaian komponen Beans..
Keunggulan konsep IDE Netbeans adalah sebagai berikut:
1. Open-source, IDE NetBeans bersifat gratis
2. Berbasis visual dan event-driven
3. User-interface
4. Compiler atau builder dan debugger internal
5. Source control
2.8 Teori Analisis SWOT
Analisis SWOT adalah metode perencanaan strategis yang digunakan untuk mengevaluasi
kekuatan (strengths), kelemahan (weaknesses), peluang (opportunities), dan ancaman (threats)
dalam suatu proyek atau suatu spekulasi bisnis (Freddy, 2005). Keempat faktor itulah yang
membentuk akronim SWOT (strengths, weaknesses, opportunities, dan threats).
2.9 UML
UML merupakan bahasa yang distandarkan sebagai peralatan untuk dokumen analisis dan
perancangan suatu sistem perangkat lunak (Kendall, 2003:430). UML dikembangkan sebagai suatu
8
alat untuk analisis dan desain berorientasi object oleh Grady Booch, James Rumbaugh, dan Ivar
Jacobson. Unified Modeling Language (UML) terdiri dari beberapa bagian sebagai berikut :
2.9.1 Usecase Diagram
Use case merupakan fungsionalitas yang diharapkan dari sebuah sistem. Use case
merepresentasikan dekripsi lengkap tentang interaksi yang terjadi anatara para actor dengan
sistem/perangkat lunak yang sedang dikembangkan (Nugroho, 2009: 7)
2.9.2 Class Diagram
Class diagram adalah suatu diagram yang memperlihatkan struktur sebuah sistem. Class
diagram yang menggambarkan struktur class, package, dan objek beserta hubungan satu sama lain
seperti dinamis, pewarisan, asosiasi, dan agregasi.
2.9.3 Sequence Diagram
Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem
(termasuk pengguna, display, dan sebagainya) berupa message yang digambarkan terhadap waktu.
Sequence diagram terdiri atas dimensi vertical (waktu) dan horizontal (objek-objek terkait).
2.9.4 Activity Diagram
Activity diagram adalah sebuah diagram yang menunjukkan urutan aktivitas sebuah
proses(Rama).
3. ANALISIS DAN PERANCANGAN
3.1 Gambaran Umum Aplikasi
Pada bab ini membahas analisis dan perancangan aplikasi pengamanan e-dokumen
menggunakan algoritma RC4, RSA dan MD5.
3.1.1 Model Sistem Aplikasi Lama
1. Hanya menggunakan satu atau dua algoritma saja.
2. Masih menggunakan algoritma standar yang dengan adanya perkembangan teknologi
berkemungkinan untuk lebih cepat di bobol / hack.
3. Pengamanannya kurang kuat karena kunci yang digunakan untuk enkripsi tidak di
enkripsi lagi.
3.1.2 Model Sistem Aplikasi Baru
Model sistem aplikasi yang baru menggunakan kombinasi 3 buah algoritma yang
memadukan antara algoritma simetris, assimetris dan fungsi hash.
3.2 Analisis SWOT
3.2.1 Kekuatan (Strengths)
3.2.2 Kelemahan (Weakness)
3.2.3 Peluang (Opportunities)
3.2.4 Ancaman (Threats)
Tabel 3.1 Kesimpulan analisis SWOT
Internal
Strength Weakness
- Open Source - Keterbatasan jenis file
9
- Keamanan - Mudah digunakan
- Ukuran file - Keterbatasan komputer percobaan
Eksternal
Opportunity Threat
- Belum ada aplikasi pengamanan e-dokumen menggunakan tiga algoritma (hybrid cryptosystem) yaitu RC4, RSA dan MD5
- Perkembangan aplikasi sejenis tetapi beda konsep
3.3 Analisis Kebutuhan Sistem 3.3.1 Analisis Kebutuhan Fungsional
Analisis kebutuahan fungsional adalah berisi paparan proses-proses apa saja yang nantinya dilakukan oleh sistem, paparan mengenai fitur-fitur yang akan dimasukan kedalam aplikasi yang akan dibuat. 3.3.2 Analisis Kebutuhan Non Fungsional
Analisis kebutuhan non fungsional adalah bagian yang akan mendukung jalannya proses pembuatan aplikasi hybrid cryptosystem untuk pengamanan e-dokumen. Kebutuhan ini melibatkan kebutuhan peragkat keras (hardware), kebutuhan perangkat lunak (software) dan kebutuhan SDM (brainware). 3.3.2.1 Analisis kebutuhan perangkat keras (hardware)
Tabel 3.2 Spesifikasi Komputer
Spesifikasi laptop Asus A43S Series
Processor intel® Pentium® CPU B940 2.0 GHz
RAM Memory 2.00 GB
VGA Nvidia GT 520M
Harddisk 320 GB
Monitor 14” HD LED Color Shine
DVD-RW DVD-RW
3.3.2.2 Analisis kebutuhan perangkat lunak (software) Tabel 3.3 Spesifikasi Perangkat lunak (software)
Spesifikasi perangkat lunak
Sistem Operasi Windows 8 64-bit
Software NetBean 7.2 , Java JDK
Bahasa Pemrograman Java
Modelling Astah Community 6.7, Visual Paradigm 11.0, yED Graph Editor
3.3.2.3 Analisis kebutuhan SDM (brainware)
a. Analis
b. Programmer
c. User
3.4 Analisis Kelayakan Sistem
1. Kelayakan Teknik
2. Kelayakan Hukum
3. Kelayakan Operasional
10
3.5 Analisis Data
3.5.1 Hasil Hitung Manual RC4
3.5.2 Hasil Hitung Manual RSA
3.5.3 Hasil Hitung Manual MD5
3.6 Perancangan Sistem
Rancangan sistem secara umum dilakukan dengan maksud untuk memberikan gambaran
umum tetang sistem yang baru atau sistem yang akan diusulkan.
3.6.1 Perancangan Prosedural
Perancangan prosedural ini berisi tentang flowchart dari aplikasi hybrid cryptosystem untuk
pengamanan e-dokumen menggunkana algoritma RC4, RSA dan MD5. Flowchart adalah salah satu
bagan yang menggambarkan arus logika dari data yang akan diproses dalam suatu program dari
awal sampai akhir. Flowchart dari program aplikasi hybrid cryptosystem dapat dilihat pada gambar
dibawah :
Gambar 3.1 Flowchart Enkripsi dan Dekripsi
3.6.2 Perancangan Proses
Perancangan sistem yang digunakan dalam aplikasi “Hybrid cryptosystem untuk
pengamanan e-dokumen menggunakan algoritma RC4, RSA dan MD5” adalah dengan UML(Unified
Modeling Language). UML adalah bahasa standar yang digunakan untuk menjelaskan dan
memvisualisasikan artifak dari proses analisis dan desain berorientasi objek.
11
3.6.2.1 Use Case Diagram
3.6.2.2 Activity Diagram
3.6.2.3 Sequence Diagram
Sequence diagram digunakan untuk menggambarkan interaksi antar objek dalam dan sekitar
sistem (termasuk pengguna) berupa message yang digambarkan terhadap waktu. Sequence diagram
terdiri atas dimensi vertical (waktu) dan dimensi horizontal (objek-objek yang terkait).
3.6.2.4 Class Diagram
Class diagram merupakan diagram yang selalu ada dalam permodelan sistem berorientasi
objek.
3.6.3 Perancangan Interface / Antarmuka
Rancangan interface / antarmuka program berperan untuk menghubungkan antara pengguna
dan aplikasi.
4. IMPLEMENTASI DAN PEMBAHASAN
4.1 Implementasi
Implementasi adalah terapan hasil rancangan yang telah dibuat dari beberapa kode program
serta tampilan-tampilan yang telah direncanakan sebelumnya menjadi sebuah aplikasi.
4.1.1 Implementasi Algoritma
4.1.1.1 Implementasi Algoritma RC4
Algoritma RC4 diimplementasikan dalam kelas “Enkripsi” dan “Dekripsi”
4.1.1.2 Implementasi Algoritma RSA
Algoritma RSA diimplementasikan dalam kelas “Enkripsi” dan “Dekripsi”
4.1.1.3 Implementasi Algoritma MD5
Algoritma MD5 diimplementasikan dalam kelas “Enkripsi” dan “Dekripsi”
4.1.2 Implementasi Interface
Implemetasi interface adalah penerapan tampilan yang berdasarkan pada desain yang telah
dirancang sebelumnya yang dapat dilihat dari sisi pengguna aplikasi.
1. Tampilan Splash Screen
Gambar 4.1 Tampilan Spalsh Screen
2. Tampilan Menu Utama
12
Gambar 4.2 Tampilan Menu Utama
3. Tampilan Enkripsi
Gambar 4.3 Tampilan Enkripsi
4. Tampilan Dekripsi
Gambar 4.4 Tampilan Dekripsi
5. Tampilan Bantuan
13
Gambar 4.5 Tampilan Menu Bantuan / Help
6. Tampilan Tentang
Gambar 4.6 Tampilan Menu Tentang Aplikasi / About
7. Tampilan Keluar
Gambar 4.7 Tampilan Keluar / Exit
4.2 Pembahasan
Pembahasan merupakan bagian akhir dari tahap pembuatan program. Pembahasan kode
program atau tampilan dilakukan bila seluruh rancangan input – output aplikasi telah selesai.
4.2.1 Pembahasan Program
4.2.1.1 Kode Program Pada Splash Screen
Kode berikut digunakan untuk menampilkan splash screen sebelum masuk ke menu utama.
4.2.1.2 Kode Program Untuk Mencari File
Kode berikut digunakan untuk membuka jendela pencarian file yang akan dienkripsi ataupun
didekripsi pada button browse.
4.2.1.3 Kode Program Untuk Membuat Tandatangan MD5 pada Button
Kode berikut digunakan untuk membuat tandatangan MD5 pada button proses MD5
14
4.2.1.4 Kode Program Untuk Menyimpan Dalam Ekstensi .zip
Kode berikut digunakan untuk memnyimpan file dengan ekstensi .zip pada button simpam.
Berikut listing programnya :
4.2.2 Pengujian Aplikasi
Pengujian aplikasi dilakukan bila seluruh rancangan input – output aplikasi telah selesai.
Tujuan pengujian aplikasi adalah dimaksudkan agar mengetahui seberapa jauh aplikasi ini dapat
berjalan. Berikut manual programnya atau langkah-langkah nya :
1. Buka aplikasi “SecureDoc.jar” pada media penyimpanan masing-masing.
2. Sebelum ke menu utama akan muncul terlebih dahulu splash screen.
3. Tampil menu utama dan pilih menu enkripsi.
4. Klik tombol proses buat tandatangan MD5, makan akan tampil hasil tandatangan MD5 berupa
abjad dan numeric sebanyak 16 byte (32 karakter) kemudian memasukan kunci RC4. Proses
enkripsi file tidak akan berjalan jika belum menginputkan kunci RC4 terlebih dahulu.
5. Setelah file disimpan dengan format .zip kemudian kita buka apakah file sudah benar-benar
tersimpan atau belum.
6. Selanjutnya melakukan proses dekripsi dimana diawali dengan menginputkan cipherteks
RSA atau kunci RC4 yang terenkripsi.
7. Browse file yang akan didekripsi.
8. File Berhasil Didekripsi
9. Tahap selanjutnya Buat tandatangan MD5 dalam proses Dekripsi
10. Bandingkan dengan hasil MD5 pengirim sebagai pengintegritas data. Jika hasilnya berbeda
maka file rusak atau tidak asli. Sebaliknya jika hasilnya sama maka file masih asli dan tidak
rusak.
4.2.3 Pengujian Program
Uji coba sistem perlu dilakukan untuk memastikan bahwa komponen-komponen dari sistem
ini telah berfungsi sesuai dengan yang diharapkan. Ada dua macam pengujian perangkat lunak yang
akan dilakukan, yaitu menggunakan metode whitebox testing dan blackbox testing.
4.2.3.1 Whitebox Testing
Whitebox testing adalah perancangan test case yang menggunakan struktur kontrol dari
perancangan prosedural untuk mendapatkan test case.
4.2.3.2 Blackbox Testing
Blackbox testing dapat dilakukan pada testing interface perangkat lunak. Test case ini
bertujuan untuk menunjukan fungsi perangkat lunak tentang cara beroperasi, lebih spesifik, metode
ini lebih bertujuan untuk mencari kesalahan pada :
a. Fungsi salah / hilang
b. Kesalahan pada interface
c. Kesalahan performa
d. Kesalahan instalasi dan petunjuk akhir
15
Berikut hasil tabel blackbox testing yang diperoleh dari pengujian pada aplikasi yang dibuat
oleh penulis.
Tabel 4.1 BlackBox Testing
No Halaman Tombol Halaman/Fungsi yang dituju Hasil Status
1. SplashScreen Menu Utama Berhasil Proses
Loading
2. Menu Utama Menu Utama Berhasil
3. Menu Utama Exit Exit Berhasil
4. Menu Utama Bantuan Bantuan Berhasil
5. Menu Utama Tentang Tentang Berhasil
6. Menu Utama Enkripsi Enkripsi Berhasil
7. Menu Utama Dekripsi Dekripsi Berhasil
8. Enkripsi Browse Membuka jendela pencarian
file yang akan di proses
enkripsi
Berhasil
9. Enkripsi Buat
Tandatang
an MD5
Buat tandatangan MD5 (32
karakter)
Berhasil
10. Enkripsi Enkripsi
RC4
Melakukan proses enkripsi
RC4
Berhasil Enkripsi
Berhasil
11. Enkripsi Buat Kunci
RSA
Melakukan proses buat kunci
RSA dengan membangkitkan
dan menampilkan kunci yang
telah dibuat
Berhasil
12. Enkripsi Enkripsi
RSA
Melakukan proses enkripsi
RSA
Berhasil Enkripsi
Berhasil
13. Enkripsi Reset Membersihkan Text Field Berhasil
14. Enkripsi Simpan Melakukan proses Simpan Berhasil Simpan
Berhasil
15. Dekripsi Dekripsi
RSA
Melakukan proses dekripsi
RSA untuk membuka kunci
RC4
Berhasil
16. Dekripsi Browse Membuka jendela pencarian
file yang akan di proses
dekripsi
Berhasil
17. Dekripsi Dekripsi
RC4
Melakukan proses dekripsi
RC4
Berhasil Enkripsi
Berhasil
16
18. Dekripsi Buat
Tandatang
an MD5
Buat tandatangan MD5 (32
karakter)
Berhasil
19. Dekripsi Reset Membersihkan Text Field Berhasil
20. Dekripsi Simpan Melakukan proses Simpan Berhasil Simpan
Berhasil
4.2.4 Hasil Pengujian Aplikasi
Proses akhir dari pembuatan aplikasi ini adalah ujicoba aplikasi. Aplikasi diujicobakan pada
komputer atau laptop dengan spek yang berbeda untuk mendapatkan hasil dan kinerja aplikasi yang
telah dibuat. Apakah aplikasi dapat berjalan di komputer atau laptop yang berbeda atau tidak. Selain
spek komputer yang berbeda, parameter lain yang diujikan adalah kecepatan enkripsi dengan ukuran
file yang berbeda dalam satu komputer atau laptop.
Tabel 4.2 Hasil Ujicoba Aplikasi Pada Spek Komputer Yang Berbeda
No Spek Komputer Status Ukuran File Enkripsi Dekripsi
1 Intel® Pentium RAM
1,00 GB Berjalan 2.147 KB
0,4863375486
detik
0,2673890986
detik
2 Intel Core 2 Duo
RAM 2 GB Berjalan 2.147 KB
0,2740855486
detik
0,1522378027
detik
3 Intel Core i3 RAM 4
GB Berjalan 2.147 KB
0,1978036673
detik
0,0927836733
detik
4 Intel Core i5 RAM 4
GB Berjalan 2.147 KB
0,1285007686
detik
0,0363782909
detik
5 IntelCore i7 RAM 4
GB Berjalan 2.147 KB
0,0215623076
detik
0,0204544486
detik
0
0.1
0.2
0.3
0.4
0.5
0.6
Core i7 Core i5 Core i3 Core 2 Duo Pentium
Enkripsi
Dekripsi
Grafik Kecepatan Enkripsi dan Dekripsi Pada Komputer Yang Berbeda
17
Gambar 4.8 Grafik Kecepatan Enkripsi dan Dekripsi Pada Komputer Yang Berbeda
Tabel 4.3 Hasil Kecepatan Enkripsi Dengan Ukuran File Berbeda
No Ukuran File Yang
Digunakan Waktu Yang diperlukan Keterangan
1 17 KB 0,0008574434 detik Berhasil
2 508 KB 0,1530656308 detik Berhasil
3 899 KB 0,2863375381 detik Berhasil
4 1.009 KB 0,3199263098 detik Berhasil
5 2.147 KB 0,4863375486 detik Berhasil
6 3.657 KB 0,5779066106 detik Berhasil
7 4.696 KB 0,9744528098 detik Berhasil
Gambar 4.9 Grafik Kecepatan Enkripsi Pada Ukuran File Yang Berbeda
Berdasarkan Hasil proses pengujian kecepatan enkripsi dan dekripsi pada spek komputer yang
berbeda yang telah dilakukan pada perangkat dengan prosesor intel® Pentium® B940 @2,0 GHz dan
dengan memory 2 Gb, dapat dilihat bahwa kecepatan proses antara spek komputer yang satu
dengan yang lainnya sangat berbeda sehingga dapat disimpulkan bahwa semakin tinggi spek
komputer yang digunakan maka semakin cepat pula proses enkripsi dan dekripsinya. Begitu juga
dengan tabel 4.3 dapat disimpulkan bahwa semakin besar file yang dienkripsi maka semakin lama
pula proses enkripsinya.
5. PENUTUP
5.1 Kesimpulan
1. Pengamanan sebuah dokumen yang bersifat rahasia dengan cara enkripsi dan dekripsi
menggunakan hybrid cryptosystem yaitu dengan algoritma RC4, RSA dan MD5 yaitu dengan
cara membuat aplikasi yang bernama “SecureDoc” berbasis Java. Aplikasi ini mampu
meningkatkan keamanan dalam mengirim dokumen rahasia dengan cara enkripsi dan
dekripsi karena RC4 digunakan sebagai pengamanan data, RSA sebagai pengamanan kunci
dan MD5 sebagai integritas data.
00.20.40.60.8
11.2
Enkripsi
Enkripsi
18
2. Membangun aplikasi “hybrid cryptosystem untuk pengamanan e-dokumen menggunakan
algoritma RC4, RSA dan MD5” telah berhasil dibuat. Aplikasi yang dibangun ini dapat
melakukan proses enkripsi dan dekripsi file / dokumen serta aplikasi ini dibuat menggunakan
bahasa pemrograman Java. Hasil dari pengujian yang telah dilakukan dapat disimpulkan
bahwa aplikasi telah mampu menampilkan dan melakukan proses enkripsi dan dekripsi pada
suatu dokumen atau file.
3. Setelah dilakukan pengujian yang telah dilakukan oleh penulis, kinerja dari aplikasi ini dapat
disimpulkan bahwa semakin besar ukuran file yang dienkripsi maka semakin lama prosesnya
dan semakin tinggi spek komputer yang digunakan maka semakin cepat pula proses enkripsi
dan dekripsi yang diproses dalam aplikasi SecureDoc.
4. Aplikasi ini didesain user friendly sehingga mudah digunakan, karena tampilannya yang
menarik serta terdapat menu panduan penggunaan aplikasi yang dapat membantu. Aplikasi
ini juga dibuat melalui tahap analisis yaitu dengan menggunakan analisis kebutuhan dan
analisis kelayakan, setelah itu tahap perancangan yaitu dimulai rancangan aplikasi dan
rancangan interface serta implementasi dan pengujian sistem atau aplikasi.
5.2 Saran
1. Tampilan aplikasi bisa menjadi daya tarik khusus, sehingga penambahan theme atau tema
pada aplikasi sehingga aplikasi tidak membosankan.
Bisa ditambahkan pilihan bahasa seperti Bahasa Inggris dan yang lainnya untuk
memudahkan pengguna, karena yang digunakan saat ini hanya Bahasa Indonesia.
2. Ekstensi file yang dapat di enkripsi lebih banyak karena dalam penelitian ini file yang
dienkripsi hanya teks dalam ekstensi .docx.
3. Maksimal file yang dapat dienkripsi saat ini maksimal 5MB sehingga bisa ditambah lagi untuk
kapasitasnya.
4. File yang dienkripsi sebaiknya merupakan file yang benar-benar perlu untuk dilindungi,
seperti file informasi pribadi, file yang berhubungan dengan pekerjaan / proyek, file data-data
transaksi keuangan, serta file sejenis agar penggunaan aplikasi ini tepat sasaran.
5. Saat ini aplikasi hanya dapat dijalankan dengan baik di sistem operasi berbasis window yang
terintegritas dengan java karena keterbatasan yang dimiliki oleh penulis. Sehingga untuk
keperluan pengembangan selanjutnya diharapkan dapat diimplementasikan di sistem operasi
lain yang dapat diintegritaskan dengan java.
6. Diharapkan juga untuk pengembangan selanjutnya dapat mengintegritasikan aplikasi ini
dengan database online yang digunakan untuk menyimpan kunci dan juga password yang
terenkripsi sehingga sewaktu-waktu dapat digunakan guna menghindari adanya kejadian file
kunci yang terenkripsi terhapus secara tidak sengaja.
19
DAFTAR PUSTAKA
Ariyus, Dony. 2006. Computer Security. Penerbit Andi : Yogyakarta
Ariyus, Dony. 2008. Pengantar Ilmu Kriptografi : teori, analisis dan implementasi Penerbit Andi :
Yogyakarta
Fatta Al, Hanif. 2007. Analisis dan Perancangan Sistem Informasi untuk Keunggulan Bersaing
Perusahaan dan Organisasi Modern. Penerbit Andi: Yogyakarta, hal 91
Fauziah, Yuli. 2008. Pengamanan Pesan Dalam Editor Teks Menggunakan Hybrid
Cryptosystem.Seminar nasional Informatika 2008 (SemNasIF 2008) ISSN: 1979-2328
Yogyakarta, 24 Mei 2008
G.Sri Hartati, B.Herry Suharto,M.Soesilo Wijono 2007. Pemrograman GUI Swing Java dengan
NetBeans 5. Penerbit ANDI : Yogyakarta
Hasan, Alwi, dkk. 2000. Tata Bahasa Baku Bahasa Indonesia (Edisi Ketiga). Balai Pustaka : Jakarta.
Kristanto, Andri. 2003.Keamanan Data Pada Jaringan Komputer. Penerbit Gava Media : Yogyakarta
Kurniawan, Yusuf. 2004. Kriptografi Keamanan Internet dan Jaringan Komunikasi. Cetakan
Pertama.Informatika : Bandung
Munir, R. 2006. Kriptografi. Informatika, Bandung.
Nugroho, Adi. 2009. Rekayasa Perangkat Lunak mwnggunakn UML dan JAVA. Penerbit Andi:
Yogyakarta, hal 7
Rangkuti, Freddy. 2005. Analisa SWOT Teknik Membedah Kasus Bisnis. PT.Gramedia Pustaka:
Jakarta.
Soesilo Wijono, Matius, dkk. 2005. Java 2 SE dengan JBuilder. ANDI : Yogyakarta