19
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

HYBRID CRYPTOSYSTEM UNTUK PENGAMANAN E …repository.amikom.ac.id/files/Publikasi_11.11.5425.pdf · Contoh dari sistem ini adalah Data Encryption Standard (DES), Blowfish, IDEA, RC2,

Embed Size (px)

Citation preview

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

ii

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