Post on 25-May-2019
1
BAB I
PENDAHULUAN
1.1. Latar Belakang
Dunia teknologi informasi saat ini semakin berkembang, semua
informasi terkirim dengan lebih cepat dan mudah melalui suatu jaringan
komputer dengan tingkat keamanan yang relatif rendah. Hal ini dapat
mengakibatkan adanya pencurian atau penyalahgunaan file-file dokumen
tersebut oleh pihak yang tidak bertanggung jawab, Untuk itulah peranan
teknologi khususnya dalam keamanan informasi benar-benar dibutuhkan.
Keamanan informasi (Information Security) merupakan bagian yang sangat
penting dari sebuah sistem di dalam sebuah jaringan komputer terutama yang
terhubung dengan internet, hal ini dikarenakan ada pihak-pihak tertentu
seperti (hacker dan cracker) yang menginginkan informasi tersebut dengan
melakukan penyadapan pada saluran komunikasi yang digunakan. Sebuah
sistem yang mempermudah dan memanjakan pengguna (user) tidak akan
berguna tanpa adanya sistem keamanan yang tinggi. Oleh karena itu,
informasi penting atau data rahasia yang dikirimkan harus disandikan agar
tidak dapat dibaca oleh orang lain.
Penulis menggunakan algoritma RC4 (Rivest Code 4) dan Blowfish karna
algoritma ini mempunyai kecepatan dan efisiensi untuk diimplementasikan
baik dalam hardware maupun software, serta mudah untuk dikembangkan.
Efisiensi yang dimaksudkan ialah efisien dalam segi ukuran file, karna setelah
2
di enkripsi ukuran file menjadi lebih kecil dari ukuran file aslinya. Algoritma
RC4 (Rivest Code 4) ini merupakan salah satu jenis Stream Chiper, stream
chipper adalah suatu sistem dimana proses enkripsi dan dekripsinya
dilakukan dengan cara bit per bit. Sedangkan algoritma Blowfish
menggunakan metode cipher blok, dimana selama proses enkripsi dan
dekripsi, blowfish bekerja dengan membagi pesan-pesan menjadi blok-blok
bit dengan ukuran sama panjang yaitu 64-bit dengan panjang kunci bervariasi
yang mengenkripsikan data ke dalam 8 byte blok. Pesan yang bukan
merupakan kelipatan 8 byte akan ditambahkan dengan bit-bit tambahan
(padding) sehingga ukuran tiap blok sama. Dalam hal ini algoritma RC4
(Rivest Code 4) dan Blowfish dapat digunakan untuk mengamankan file-file
dokumen pada perusahaan-perusahaan atau instansi yang mempunyai file
penting dan bersifat private.
Berdasarkan latar belakang tersebut, penulis tertarik untuk membuat suatu
aplikasi yang dapat mengamankan file-file dokumen dengan judul “Aplikasi
Keamanan Dokumen Menggunakan Algoritma Rivest Code 4 dan Blowfish
Berbasis Java”.
1.2. Perumusan Masalah
Berdasarkan latar belakang tersebut maka penulis merumuskan masalah
pada penelitian ini yaitu :
1. Bagaimana membuat Aplikasi Keamanan Dokumen Menggunakan
Algoritma Rivest Code 4 dan Blowfish Berbasis Java.
3
2. Bagaimana menerapkan dan implementasi Aplikasi Keamanan Dokumen
Menggunakan Algoritma Rivest Code 4 dan Blowfish Berbasis Java.
1.3. Batasan Masalah
Seiring dengan kemampuan penulis yang sangat terbatas, dan untuk
menghindari meluasnya permasalahan, maka pada penulisan skripsi ini hanya
mencakup :
1. Penulisan ini difokuskan pada segi enkripsi dan deskripsi data dengan
algoritma Rivest Code 4 dan Blowfish berbasis Java disertai dengan
password.
2. Aplikasi ini hanya berfungsi untuk mengenkripsi dan mendekripsi file-file
dokumen khususnya file text.
3. Implementasi aplikasi yang dibuat dengan menggunakan bahasa
pemrograman java eclipse.
4. Aplikasi ini berfungsi dengan cara menambahkan ekstensi pada file asli.
1.4. Tujuan Penelitian
Tujuan yang ingin dicapai dalam penelitian ini adalah membuat suatu
aplikasi pengamanan file dokumen yang dapat digunakan pada perusahaan-
perusahaan dan instansi, sehingga data-data penting yang berada pada sebuah
perusahaan atau instansi dapat lebih terjaga keamanannya, terutama dalam
proses pengiriman dokumen tersebut.
4
1.5. Manfaat Penelitian
Adapun manfaat dari penelitian ini adalah :
1. Manfaat bagi penulis ialah dapat menerapkan ilmu yang didapat
selama mengikuti kegiatan belajar di STMIK PALCOMTECH
Palembang serta dapat menambah wawasan bagi penulis tentang
aplikasi java.
2. Manfaat bagi perusahaan, instansi dan orang lain ialah dapat
meningkatkan keamanan file dokumennya dengan menggunakan
aplikasi yang penulis buat.
3. Manfaat bagi akademik ialah diharapkan dengan penelitian ini dapat
membuktikan kepada masyarakat bahwa mahasiswa lulusan STMIK
PALCOMTECH bisa diandalkan dan patut diperhitungkan.
1.6. Sistematika Penulisan
Demi terwujudnya suatu hasil yang baik dalam penyususnan skripsi ini,
penulis menggunakan pembahasan yang sesuai dengan ketentuan yang
diberikan. Adapun sistematika pembahasan tersebut meliputi antara lain:
BAB I PENDAHULUAN
Bab ini penulis akan menguraikan tentang latar belakang,
perumusan masalah, batasan masalah, tujuan penelitian dan
manfaat penelitian, serta sistematika penulisan.
BAB II GAMBARAN UMUM PERANGKAT LUNAK YANG
DIKEMBANGKAN
5
Bab ini penulis menguraikan tentang gambaran umum perangkat
lunak yang akan dikembangkan yaitu Aplikasi Keamanan
Dokumen Menggunakan Algoritma Rivest Code 4 dan Blowfish
Berbasis Java.
BAB III TINJAUAN PUSTAKA
Bab ini penulis akan membahas teori-teori yang mendasari
penulisan skripsi ini.
BAB IV METODE PENELITIAN
Bab ini penulis membahas mengenai metodelogi penelitian beserta
waktu dan lokasi penelitian, jenis data, teknik pengumpulan data,
jenis penelitian, alur dan teknik pengembangan system yang akan
dibuat dalam skripsi.
BAB V HASIL DAN PEMBAHASAN
Bab ini penulis membahas mengenai tahap-tahap perancangan,
pengembangan serta pengimplementasian Aplikasi Keamanan
Dokumen Menggunakan Algoritma Rivest Code 4 dan Blowfish
Berbasis Java.
BAB VI PENUTUP
Bab akhir ini penulis memberikan simpulan atas analisis pada BAB
IV dan memberikan saran yang dapat bermanfaat bagi para
instansi, perusahaan maupun orang yang akan menggunakan.
6
BAB II
GAMBARAN UMUM PERANGKAT LUNAK YANG
DIKEMBANGKAN
2.1. Fenomena Perangkat Lunak Yang Dikembangkan
Perkembangan teknologi saat ini sangat pesat, salah satunya ialah cara
mengamankan data menggunakan teknik kriptografi. Pada penelitian ini
penulis membuat sebuah aplikasi keamanan dokumen menggunakan
algoritma rivest code 4 dan blowfish berbasis java, adapun gambaran umum
dari perangkat lunak yang dikembangkan ialah :
1. Layanan aplikasi yang dihasilkan dari penelitian ini adalah
memberikan kemudahan serta rasa aman kepada pengguna nantinya
dalam hal pengamanan data atau file penting yang ingin diamankan
oleh pengguna.
2. Perbedaan aplikasi sebelumnya dengan aplikasi yang diterapkan
ialah, jika pada penelitian terdahulunya hanya menggunakan satu
algoritma yaitu RC4 (Rivest Code 4) untuk penelitian yang kami
terapkan pada saat ini yaitu menggunakan dua algorima yaitu
algoritma RC4 (Rivest Code 4) dan Blowfish. Dengan menggunakan
dua algoritma tentu hasil yang dihasilkan lebih optimal.
3. Tools yang digunakan serta fungsi aplikasi ini ialah :
a. Aplikasi ini dibuat dengan menggunakan java eclipse.
b. Aplikasi ini digunakan untuk enkripsi dan dekripsi file / data.
7
c. Implementasi program aplikasi yang dibuat dengan
menggunakan bahasa pemrograman java.
d. Sistem operasi yang digunakan adalah windows 7.
e. Algoritma yang digunakan pada aplikasi ini ialah algoritma RC4
(Rivest code 4) dan Blowfish.
8
BAB III
TINJAUAN PUSTAKA
3.1. Teori Pendukung
3.1.1. Aplikasi
Menurut Santoso (2005:9), Aplikasi : Yang dimaksud dengan
pengertian ‘aplikasi’ adalah suatu kelompok file (form, class, report) yang
bertujuan untuk melakukan aktivitas tertentu yang saling terkait, misalnya
aplikasi Payroll, aplikasi Fixed Asset.
3.1.2. Keamanan
Menurut Hartika (2012:12), Keamanan adalah keadaan bebas dari
bahaya. Istilah ini dapat digunakan dengan hubungan kepada kejahatan, dan
segala bentuk kecelakaan. Keamanan merupakan topik yang luas termasuk
keamanan nasional terhadap serangan teroris, keamanan komputer terhadap
crecker, keamanan rumah terhadap maling dan penyusup lainnya, keamanan
finansial terhadap kehancuran ekonomi dan banyak situasi berhubungan
lainnya (Kristianto, 2003).
3.1.3. Criptography
Menurut Hartika (2012:12), Criptography berasal dari bahasa yunani,
terdiri dari dua suku kata yaitu cripto dan graphia. Cripto artinya
menyembunyikan, sedangkan graphia artinya tulisan. Criptography adalah
ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan
aspek keamanan informasi seperti kerahasiaan data, keabsahan data,
9
integritas data, serta autentikasi data (Manezes, Oorschot and Vanstone,
1997).
3.1.4. Java Development kit (JDK)
Menurut Hakim (2009:2), Java Development kit merupakan
seperangkat aplikasi yang digunakan untuk mengembangkan program dengan
bahasa Java.
3.1.5. Algoritma
Menurut Kurniadi (2011:1), algoritma adalah sekumpulan langkah
(tahapan) logis untuk menyelesaikan suatu pekerjaan (permasalahan).
3.1.6. Algoritma RC 4 (Rivest Code 4 )
Menurut Bastari (2011:2), Algoritma RC4 (Rivest Code 4) adalah
stream chipher yang diciptakan oleh Ron Rivest Cipher (kadang juga disebut
Ron’s Code). Pada awalnya algoritma RC4 ini dirahasiakan sampai
dikirimkan ke milis Cypherpunks secara anonim pada tahun 1994.
Setelah itu algoritma RC4 mulai diketahui banyak orang dan
menyebar luas melalui internet. RC4 pun menjadi populer dan banyak
dipakai untuk berbagai kegunaaan, terutama dalam koneksi internet seperti
Wi-Fi. Faktor-faktor dalam kesuksesan RC4 antara lain adalah kecepatan,
efesien untuk diimplentasikan baik dalam hardware maupun software, dan
mudah untuk dikembangkan.
Serupa dengan skema umum stream cpher, RC4 membangkitkan
keystream dengan keystream generator lalu dilakukan XOR antara key
tersebut dengan plainteks. Algoritma enkripsi RC4 beroperasi dalam byte,
10
berarti XOR dilakukan setiap satu byte plainteks dengan satu byte key dari
keystream. RC4 menggunakan fungsi dekripsi dan enkripsi yang sama karena
operasi yang dilakukan hanyalah XOR antara keystream yang dibangkitkan
dengan plainteks.
Keystream generator pada RC4 menggunakan Intial State yang
berupa S-box yang berukuran 16x16. Pertama S-box diinisialisasi secara
linier, berarti S[i]=i. Lalu dilakukan permutasi isi S-box dengan
memanfaatkan kunci yang dimiliki.
Algoritma RC4 secara umum adalah sebagai berikut :
1. Inisialisai S-box dengan linier
2. Lakukan padding pada kunci apabila panjang kunci kurang
dari 256
3. Permutasi isi dari S-box dengan mengacaknya
menggunakan kunci
4. Bangkitkan keystream lalu di-XOR-kan dengan plainteks
Permutasi pada S-box dilakukan seperti pada pseudocode
berikut (S adalah S-box dan K adalah kunci yang telah di-padding jika
perlu):
for i = 0 to 255:
j = (j + S[i] + K[i]) mod 256
swap S[i] and S[j]
11
Sementara itu dalam membangkitkan keystream algoritma yang
dilakukan adalah sebagai berikut :
Setelah itu akan dilakukan operasi XOR antara K yang diperoleh
dan satu byte plainteks, P[i]. Operasi permutasi dan pembangkitan
keystream yang dilakukan sebelumnya sudah cukup baik untuk membuat
K sebuah byte yang acak. Bahkan dengan permutasi tersebut bisa terdapat
sebanyak 21700
(256! X 2562)
kemungkinan S-box.
3.1.7. Algoritma Blowfish
Algoritma Blowfish adalah algoritma kunci simetrik cipher blok yang
dirancang pada tahun 1993 oleh Bruce Schneier (presiden perusahaan
Counterpane Internet Security.Inc), dan dipublikasikan pada tahun 1994.
Blowfish dibuat untuk digunakan pada komputer dengan microproccessor
besar (32 bit keatas dengan cache data yang besar).
Blowfish menggunakan metode cipher blok, dimana selama proses
enkripsi dan dekripsi, blowfish bekerja dengan membagi pesan-pesan menjadi
blok-blok bit dengan ukuran sama panjang yaitu 64-bit dengan panjang kunci
bervariasi yang mengenkripsikan data ke dalam 8 byte blok. Pesan yang
i = (i + 1) mod 256
j = (j + S[i]) mod 256
swap S[i] and S[j]
t = (S[i] + S[j]) mod 256
K = S[t]
12
bukan merupakan kelipatan 8 byte akan ditambahkan dengan bit-bit
tambahan (padding) sehingga ukuran tiap blok sama.
Algoritma Blowfish dibagi menjadi 2 proses, yaitu ekspansi kunci dan
enkripsi data (Schneier, 1996) :
a. Ekspansi kunci (Key-expansion)
Berfungsi merubah kunci (minimum 32-bit, maksimum 448-bit)
menjadi beberapa array subkunci (subkey) dengan total 4168 byte
(18x32-bit untuk P-array dan 4x256x32-bit untuk S-box sehingga
totalnya 33344 bit atau (4168 byte). Kunci disimpan dalam K-array:
K1, K2, ... Kj 1
≤ j ≤ 14
Kunci-kunci ini yang dibangkitkan (generate) dengan
menggunakan subkunci yang harus dihitung terlebih dahulu sebelum
enkripsi atau dekripsi data. Sub-sub kunci yang digunakan terdiri dari:
P-array yang terdiri dari 18 buah 32-bit subkunci,
P1, P2, ..., P18
S-box yang terdiri dari 4 buah 32-bit, masing-masing
memiliki 256 entri :
S1,0, S1,1, ..., S1,255
13
b. Enkripsi Data
Terdiri dari iterasi fungsi sederhana (Feistel Network) sebanyak
16 kali putaran (iterasi), masukannya adalah 64- bit elemen data X.
Setiap putaran terdiri dari permutasi kunci-dependent dan substitusi
kunci- dan data dependent.
Semua operasi adalah penambahan (addition) dan XOR pada
variabel 32-bit. Operasi tambahan lainnya hanyalah empat
penelusuran tabel array berindeks untuk setiap putaran.
Langkahnya adalah seperti berikut :
1. Bagi X menjadi dua bagian yang masing-masing terdiri dari
32-bit: XL,
XR.
2. Lakukan langkah berikut
For i = 1 to
16:
XL = XL Pi
XR = F(XL)
S2,0, S2,1, ..., S2,255
S3,0, S3,1, ..., S3,255
S4,0, S4,1, ..., S4,255
14
XR
Tukar XL
dan XR
3. Setelah iterasi ke-16, tukar XL dan XR lagi untuk melakukan
membatalkan pertukaran terakhir
4. Lalu lakukan.
XR = XR
XOR P17
XL = XL
XOR P18
5. Terakhir, gabungkan kembali XL dan XR untuk
mendapatkan cipherteks.
c. Enkripsi dan Dekripsi
Enkripsi adalah suatu proses yang melakukan perubahan kode
dari bias dimengerti (yang disebut plaintext) menjadi kode yang tidak
bias dimengerti (yang disebut chipertext). Sedangkan proses
kebalikannya yaitu memperoleh kembali plaintext dari chipertext
disebut dekripsi.
d. Bahasa Java
Menurut Nugroho (2008:4) Java adalah bahasa pemrograman
yang mirip dengan C/C++. Java terutama adalah bahasa pemrograman
15
yang umum digunakan untuk pemrograman Web. Java juga
merupakan bahasa pemrograman yang cukup ampuh untuk digunakan
menyusun berbagai aplikasi yang canggih karena sederhana dalam
perancangan dan implementasinya.
e. Eclipse
Menurut Tanujaya (2009:12) Eclipse merupakan IDE (Integrated
Development Environment) yang dikembangkan pertama kali oleh
IBM yang kemudian diserahkan kepada Eclipse Foundation. Setelah
diserahkan Eclipse menjadi IDE open source. Eclipse bersifat open
source yang bertujuan untuk menghasilkan platform pemerograman
terbuka.
f. Flowchart
Bagan alir (flowchart) adalah bagan yang menunjukkan alir di
dalam program atau prosedur sistem secara logika. Bagan alir
digunakan terutama untuk alat bantu komunikasi dan untuk
dokumentasi (Jogiyanto, 2005:795).
Tabel 2.1 Tabel Flowchart
No Simbol Keterangan
1 Document
2 Manual Input
3 Decision
4 Process
16
5 File Terminal
6 Flow of Process
Sumber : Jogiyanto (2005: 796).
3.2. Hasil Penelitian Terdahulu
Untuk mendukung penelitian yang akan kami ambil, maka kami
memaparkan hasil penelitian terdahulu untuk keaslian penelitian sekaligus
peneliti dapat menunjukan perbedaan penelitiannya dengan penelitian
sejenis sebelumnya. Berikut adalah penelitian terdahulu :
Tabel 3.2 Penelitian Terdahulu
No Judul Penulis/ Tahun Hasil
1 PENERAPAN
ALGORITMA
GABUNGAN RC4 DAN
BASE64PADA
SISTEMKEAMANAN
E-COMMERCE.
1.Febrian
Wahyu C
2.Adriana P
Rahangiar
3.Febryde
Fretes
Tahun 2012
Penelitian ini
dimaksutkan untuk
membuat suatu sistem
keamanan e-commerce
dengan menggunakan
gabungan algoritma
RC4 dan BASE6.
Algoritma RC4 dan
BASE6 adalah jenis
algoritma kriptografi
yang mengubah data
17
plaintext menjadi
chipher text. Enkripsi
data yang dilakukan
dengan menggunakan
dua algoritma ini dapat
mengenkripsi data
password nasabah di
bank sehingga
password dari nasabah
tidak dapat diketahui
oleh pihak-pihak yang
tidak berkepentingan
saat nasabah
melakukan transaksi
dengan menggunakan
e-commerce.
Penerapan dua
algoritma ini di sisi
penyedia e-commerce
diharapkan akan
meningkatkan
kepercayaan pelanggan
untuk bertransaksi
18
menggunakan sistem
e-commerce.
2 IMPLEMENTASI
ENKRIPSI DATA
DENGAN ALGORITMA
BLOWFISH
MENGGUNAKAN JAVA
PADA APLIKASI
EMAIL.
1.Apriyanti E
Pratiwi
2.Kemas
Muslim
Lhaksmana
3.Setia JuliRizal
Tahun 2011
Salah satunya adalah
algoritma blowfish
yang dapat digunakan
untuk
mengamankan data
pada aplikasi email.
Algoritma blowfish
menggunakan kunci
simetris sehingga
lebih
cepat dalam proses
enkripsi dan dekripsi
data. Algoritma
blowfish dapat ditera
karena dapat berjalan
pada jalur komunikasi
atau enkripsi file
otomatis.
blowfish digunakan
untuk proses enkripsi
dan dekripsi dokumen
19
pada email.
data dilakukan
terhadap dokumen
yang dilampirkan oleh
mengamankan data
dengan proses
enkripsi sehingga,
pengiriman pesan
dengan email menjadi
lebih
aman. Pada aplikasi
ini, proses enkripsi
dan dekripsi
menggunakan
belah pihak. Proses
pertukaran kunci
dilakukan secara
manual.
(Sumber : Diolah sendiri)
20
3.3. Kerangka Penelitian
Gambar 3.1 Bagan Kerangka Penelitian
Latar Belakang
Masalah, Keamanan informasi
merupakan bagian yang sangat penting
dari sebuah sistem didalam sebuah
jaringan komputer terutama yang
terhubung dengan internet, hal ini
dikarenakan ada pihak-pihak tertentu
seperti hacker dan cracker yang
menginginkan informasi tersebut
dengan melakukan penyadapan pada
saluran komunikasi yang digunakan.
Maka dari itu dibutuhkan sebuah
aplikasi yang dapat mengamankan file
dokumen tersebut.
Teori Pendukung
- Algoritma RC4 (Rivest
Code 4)
- Algoritma Blowfish
- Java Eclipse
- Flowchart
Metode Perancangan
Metode yang digunakan ialah RAD (Rafid
Application Development), pada penelitian ini kami
sampai pada fase Pelaksanaan/implementasi
.
Hasil Penelitian
Hasil dari penelitian ini ialah sebuah “Aplikasi
Keamanan Dokumen Menggunakan Algoritma
Rivest Code 4 Dan Blowfish Berbasis Java”.
21
Aplikasi ini berguna bagi intansi, perusahaan dan orang untuk
mengamankan datanya, sehingga data-data penting yang berada pada
sebuah perusahaan atau instansi dapat lebih terjaga keamanannya.
Teori yang mendukung penelitian ini seperti Criptography, Algoritma,
Algoritma RC4 (Rivest Code 4), Algoritma Blowfish, Enkripsi dan
Dekripsi, Bahasa Java, Eclipse, Flowchart.
Pada penulisan skripsi ini penulis menggunakan metode RAD. Model
RAD ini merupakan sebuah adaptasi “kecepatan tinggi” dari model
sekuensial linier dimana perkembangan cepat dicapai dengan
menggunakan model pendekatan konstruksi berbasis komponen. Berikut
adalah gambar dari model inkremental:
(Sumber : Diolah sendiri.)
Gambar 3.2 Proses RAD (Rapid Application Development)
Hasil akhir yang diharapkan oleh penulis adalah untuk
memudahkan para instansi, perusahaan dan orang untuk mengamankan
datanya, sehingga data-data penting yang berada pada sebuah perusahaan
atau instansi dapat lebih terjaga keamanannya.
22
BAB IV
METODE PENELITIAN
4.1. Lokasi dan Waktu Penelitian
4.1.1. Lokasi
Untuk mendapatkan data-data yang dibutuhkan untuk laporan
skripsi, maka penulis memilih tempat dan waktu di kediaman saudara
Wayan Crisdiyanto. Jl. Seduduk Putih. Komplek Garuda Putra No. D59.
4.1.2. Waktu Penelitian
Penelitian dilakukan mulai tanggal 04 Maret 2015 s/d bulan juli.
Tabel 4.1 Jadwal Penelitian
(Sumber : Diolah Sendiri)
No Kegiatan
Maret April Mei Juni Juli
1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4
1 Fase
Perencanaan
2 Fase
Perancangan
3 Fase
Kontruksi
4 Fase
Pelaksanaan
23
4.2. Jenis Data
Dalam penelitian ini ada beberapa jenis data yang ditemukan.
Adapaun jenis-jenis data tersebut adalah sebagai berikut :
4.2.1. Data Primer
Menurut Umar (2007:42), data primer merupakan data yang
didapat dari sumber pertama baik secara individu atau perorangan seperti
hasil wawancara atau hasil pengisian kuisioner yang biasa dilakukan
oleh peneliti. Dari hasil wawancara, penulis mendapat info untuk
mendapatkan data-data yang dibutuhkan dalam penelitian yang nantinya
juga berguna dalam pembuatan aplikasi keamanan dokumen
menggunakan algoritma rivest code 4 dan blowfish berbasis java.
4.2.2. Data Sekunder
Menurut Umar (2007:42), data sekunder merupakan data primer
yang telah diolah lebih lanjut dan disajikan baik oleh pihak pengumpul
data primer maupun oleh pihak lain. Dalam hal ini adalah yang diperoleh
dari hasil pengamatan mengenai aplikasi keamanan dokumen
menggunakan algoritma rivest code 4 dan blowfish berbasis java.
4.3. Teknik Pengumpulan Data
Adapun metode pengumpulan data yang digunakan dalam Dalam
penyusunan laporan ini adalah sebagai berikut:
1. Observasi
Observasi adalah pengamatan langsung suatu kegiatan yang
sedang dilakukan. Dalam penelitian ini penulis melakukan
24
pengumpulan data menggunakan observasi karena penulis bisa
langsung mengamati kegiatan yang dilakukan oleh responden, selain
itu kelebihan dari observasi adalah :
a. Dengan observasi maka peneliti akan memperoleh pengamatan
secara langsung, sehingga memungkinkan peneliti menggunakan
pendekatan induktif.
b. Dengan observasi, peneliti dapat melihat hal-hal yang tidak akan
terungkap oleh responden terutama dalam wawancara.
c. Dengan observasi, peneliti dapat menemukan ha-hal yang diluar
persepsi responden, sehingga peneliti memperoleh gambaran yang
akurat.
d. Melalui pengamatan dilapangan, peneliti tidak hanya
mengumpulkan data yang banyak tetapi juga merasakan sarana
atau situasi sosial yang diteliti.
2. Studi Pustaka.
Dalam penelitian ini penulis menggunakan teknik studi
pustaka dalam pengumpulan data, dikarenakan lebih efisien selain
itu, kelebihan metode ini dapat memperoleh banyak sumber tanpa
memerlukan banyak biaya, tenaga dan waktu karena buku-bukunya
terkumpul di dalam perpustakaan.
25
4.4. Alat dan Teknik Pengembangan Sistem
4.4.1. Alat Pengembangan Sistem.
Dalam pengembangan, aplikasi ini menggunakan
spesifikasi perangkat keras dan perangkat lunak komputer.
Perangkat keras yang digunakan dalam penelitian ini memiliki
spesifikasi berikut:
1. Laptop.
Spesifikasi :
a. Processor : Intel (R) celeron (R) CPU 887 @ 1.50GHz
b. Memory RAM : DDR3 2.00 Gb
c. Kartu VGA : Intel (R) HD Graphics 3000
d. Hardisk : 320 Gb
2. Flowchart.
Bagan alir (flowchart) adalah bagan yang menunjukkan alir
di dalam program atau prosedur sistem secara logika. Bagan alir
digunakan terutama untuk alat bantu komunikasi dan untuk
dokumentasi (Jogiyanto, 2005:795).
Tabel 4.2 Tabel Flowchart.
No Simbol Keterangan
1 Document
2 Manual Input
3 Decision
4 Process
26
5 File Terminal
6 Flow of Process
(Sumber : Diolah Sendiri)
4.4.2. Teknik Pengembangan Sistem
4.4.2.1. Model RAD (Rapid Application Develoment)
Rapid Application Develoment (RAD) adalah sebuah model
proses perkembangan perangkat lunak sekuensial linier yang
menekankan siklus perkembangan yang sangat pendek. Model
RAD ini merupakan sebuah adaptasi “kecepatan tinggi” dari model
sekuensial linier dimana perkembangan cepat dicapai dengan
menggunakan model pendekatan konstruksi berbasis komponen.
Jika kebutuhan dipahami dengan baik, proses RAD memungkinkan
tim pengembang menciptakan “sistem fungsional yang utuh”
dalam waktu periode yang sangat pendek karena dipakai terutama
pada aplikasi sistem konstruksi. Hamzah (2011:51).
Menurut Kendall (2006:239), ada beberapa tahapan dalam
pengembangan sistem menggunakan model RAD antara lain :
1. Fase Perencanaan Syarat-syarat
Fase ini merupakan fase dimana
pengembangan harus dapat memutuskan fungsi-
fungsi apa yang harus diterapkan dalam
pengembangan aplikasi serta pengembangan sistem
27
harus dapat mencari informasi untuk memenuhi
kebutuhan aplikasi yang dibangun.
2. Fase Perancangan Pengguna
Fase ini merupakan fase yang membahas
desain non- teknis dari sistem dengan bimbingan
penganalisis.
3. Fase Konstruksi
Fase Konstruksi merupakan fase yang
berasal dari fase sebelumnya kemudian ditingkatkan
dengan menggunakan perangkat PAC dalam hal ini
merancang pemerograman yang dimana ketika
fungsi yang baru tersedia, dapat ditunjukan kepada
pengguna untuk mendapatkan interaksi, komentar
dan revisi.
4. Fase Pelaksanaan
Fase pelaksanaan merupakan tahapan untuk
pengujian sistem yang telah dibuat, pelatihan
pengguna berdasarkan prosedur-prosedur yang telah
ada.
28
Gambar 4.1 Proses RAD (Rafid Application Develoment)
(Sumber : Diolah Sendiri)
4.5. Alat dan Teknik Pengujian
Metode pengujian sistem yang dipakai yaitu Algoritma RC4
(Riverst Code 4) dan Algoritma Blowfish :
4.5.1. Algoritma Rivest Code 4 (RC4)
Menurut Bastari (2011:2), Algoritma RC4 (Rivest Code 4)
adalah stream chipher yang diciptakan oleh Ron Rivest Cipher
1. Fase perencanaan syarat-syarat
1.1 Analisa Tujuan Informasi
1.2 Studi kelayakan
1.3 Kelengkapan hardware yang
digunakan
1.4 Kelengkapan software yang
digunakan
1.5 Mendefinisikan masalah
2. Fase Perancangan
2.1 Flow Chart diagram
2.2 perancangan antar
muka
2.3Perancangan algoritma
program kriptografi
3. Fase Konstruksi
3.1 Instalasi Program
Pendukung
3.2 Menjalankan Program
Aplikasi
4. Fase Pelaksanaan
4.1 Spesifikasi Laptop/PC yang
digunakan
4.2 Pengujian Aplikasi
4.2.1 Pengujian Black Box Mandiri
4.2.2 Respon oleh User Tentang
Aplikasi
4.3 Analisis Hasil Pengujian
4.3.1 Analisisn Hasil Pengujian
Black Box Mandiri
4.3.2 Analisis Hasil Respon oleh
User
29
(kadang juga disebut Ron’s Code). Pada awalnya algoritma RC4
ini dirahasiakan sampai dikirimkan ke milis Cypherpunks secara
anonim pada tahun 1994.
Setelah itu algoritma RC4 mulai diketahui banyak orang
dan menyebar luas melalui internet. RC4 pun menjadi populer dan
banyak dipakai untuk berbagai kegunaaan, terutama dalam koneksi
internet seperti Wi-Fi. Faktor-faktor dalam kesuksesan RC4 antara
lain adalah kecepatan, efesien untuk diimplentasikan baik dalam
hardware maupun software, dan mudah untuk dikembangkan.
Serupa dengan skema umum stream cpher, RC4
membangkitkan keystream dengan keystream generator lalu
dilakukan XOR antara key tersebut dengan plainteks. Algoritma
enkripsi RC4 beroperasi dalam byte, berarti XOR dilakukan setiap
satu byte plainteks dengan satu byte key dari keystream. RC4
menggunakan fungsi dekripsi dan enkripsi yang sama karena
operasi yang dilakukan hanyalah XOR antara keystream yang
dibangkitkan dengan plainteks.
Keystream generator pada RC4 menggunakan Intial State
yang berupa S-box yang berukuran 16x16. Pertama S-box
diinisialisasi secara linier, berarti S[i]=i. Lalu dilakukan permutasi
isi S-box dengan memanfaatkan kunci yang dimiliki.
30
Algoritma RC4 secara umum adalah sebagai berikut :
1. Inisialisai S-box dengan linier.
2. Lakukan padding pada kunci apabila panjang kunci
kurang dari 256.
3. Permutasi isi dari S-box dengan mengacaknya
menggunakan kunci.
4. Bangkitkan keystream lalu di-XOR-kan dengan
plainteks.
Permutasi pada S-box dilakukan seperti pada pseudocode
berikut (S adalah S-box dan K adalah kunci yang telah di-padding
jika perlu):
for i = 0 to 255:
j = (j + S[i] + K[i]) mod 256
swap S[i] and S[j]
Sementara itu dalam membangkitkan keystream algoritma
yang dilakukan adalah sebagai berikut :
.
i = (i + 1) mod 256
j = (j + S[i]) mod 256
swap S[i] and S[j]
t = (S[i] + S[j]) mod 256
K = S[t]
31
Setelah itu akan dilakukan operasi XOR antara K yang
diperoleh dan satu byte plainteks, P[i]. Operasi permutasi dan
pembangkitan keystream yang dilakukan sebelumnya sudah cukup
baik untuk membuat K sebuah byte yang acak. Bahkan dengan
permutasi tersebut bisa terdapat sebanyak 21700
(256! X 2562)
kemungkinan S-box.
4.5.2. Algoritma Blowfish.
Algoritma Blowfish adalah algoritma kunci simetrik cipher
blok yang dirancang pada tahun 1993 oleh Bruce Schneier
(presiden perusahaan Counterpane Internet Security.Inc), dan
dipublikasikan pada tahun 1994. Blowfish dibuat untuk digunakan
pada komputer dengan microproccessor besar (32 bit keatas
dengan cache data yang besar).
Blowfish menggunakan metode cipher blok, dimana selama
proses enkripsi dan dekripsi, blowfish bekerja dengan membagi
pesan-pesan menjadi blok-blok bit dengan ukuran sama panjang
yaitu 64-bit dengan panjang kunci bervariasi yang
mengenkripsikan data ke dalam 8 byte blok. Pesan yang bukan
merupakan kelipatan 8 byte akan ditambahkan dengan bit-bit
tambahan (padding) sehingga ukuran tiap blok sama.
Algoritma Blowfish dibagi menjadi 2 proses, yaitu ekspansi
kunci dan enkripsi data (Schneier, 1996) :
32
4.5.3. Ekspansi kunci (Key-expansion)
Berfungsi merubah kunci (minimum 32-bit, maksimum
448-bit) menjadi beberapa array subkunci (subkey) dengan total
4168 byte (18x32-bit untuk P-array dan 4x256x32-bit untuk S-box
sehingga totalnya 33344 bit atau (4168 byte). Kunci disimpan
dalam K-array:
K1, K2, ... Kj 1 ≤ j ≤ 14
Kunci-kunci ini yang dibangkitkan (generate) dengan
menggunakan subkunci yang harus dihitung terlebih dahulu
sebelum enkripsi atau dekripsi data. Sub-sub kunci yang digunakan
terdiri dari :
P-array yang terdiri dari 18 buah 32-bit subkunci,
P1, P2, ..., P18
S-box yang terdiri dari 4 buah 32-bit, masing-masing
memiliki 256 entri :
S1,0, S1,1, ..., S1,255
S2,0, S2,1, ..., S2,255
S3,0, S3,1, ..., S3,255
33
4.5.4. Enkripsi Data
Terdiri dari iterasi fungsi sederhana (Feistel Network)
sebanyak 16 kali putaran (iterasi), masukannya adalah 64-bit
elemen data X. Setiap putaran terdiri dari permutasi kunci-
dependent dan substitusi kunci- dan data dependent.
Semua operasi adalah penambahan (addition) dan XOR
pada variabel 32-bit. Operasi tambahan lainnya hanyalah empat
penelusuran tabel array berindeks untuk setiap putaran.
Langkahnya adalah seperti berikut.
1. Bagi X menjadi dua bagian yang masing-masing terdiri
dari
32-bit: XL,
XR.
2. Lakukan-langkah berikut
For i = 1 to 16:
XL = XL Pi
XR = F(XL) XR
Tukar XL dan XR
S4,0, S4,1, ..., S4,255
34
3.Setelah iterasi ke-16, tukar XL dan XR lagi untuk
melakukan membatalkan pertukaran terakhir
4. Lalu lakukan
XR = XR XOR P17
XL = XL XOR P18
5. Terakhir, gabungkan kembali XL dan XR untuk
mendapatkan cipherteks.
35
BAB V
HASIL DAN PEMBAHASAN
5.1. Hasil
Berikut adalah tahapan-tahapan dari metode RAD (Rapid
Application Development),yang penulis lakukan dalam pembutan “Aplikasi
Keamanan Dokumen Menggunakan Algoritma Rivest Code 4 Dan Blowfish
Berbasis Java”. Aplikasi ini adalah aplikasi yang menggunakan java eclips
sebagai tools untuk membuat sebuah aplikasi. Aplikasi dibangun dengan
menggunakan bahasa pemrograman java dan algoritma. Pada hasil ini akan
dijelaskan mengenai bagaimana Aplikasi Keamanan Dokumen
Menggunakan Algoritma Rivest Code 4 Dan Blowfish Berbasis Java akan
bekerja.
5.1.1. Fase Perencanaan Syarat – Syarat
Pada tahap ini dilakukan analisa kebutuhan masalah untuk
pembuatan aplikasi, kelengkapan hardware dan software serta
mendefinisikan masalah.
5.1.1.1. Tujuan Informasi
Seperti yang penulis uraikan dalam BAB I, tujuan
dibuatnya aplikasi ini adalah membuat suatu aplikasi pengamanan
file dokumen yang dapat digunakan pada perusahaan-perusahaan
dan instansi, sehingga data-data penting yang berada pada sebuah
perusahaan atau instansi dapat lebih terjaga keamanannya dan
36
menjamin keaslian file tersebut, terutama dalam proses pengiriman
file dokumen tersebut.
5.1.1.2. Studi Kelayakan
Ada 2 studi kelayakan yang akan dijabarkan pada bagian
ini yaitu, feasibilitas ekonomi dan feasibilitas teknis, penjelasan
dari kedua studi tersebut adalah sebagai berikut :
1. Feasibilitas Ekonomi
Secara ekonomi aplikasi ini layak dikembangkan
karena aplikasi yang dikembangkan bersifat gratis, secara
sosial aplikasi dapat membantu untuk mencerdaskan
lingkungan baik kalangan mahasiswa ataupun seseorang
yang tertarik pada pemrograman java.
2. Feasibilitas Teknis
Pengembangan aplikasi ini layak secara teknis
dikarenakan untuk mengembangkan dan
mengimplementasikan kemampuan para mahasiswa
ataupun seseorang yang memiliki kemampuan tentang
pemrograman.
5.1.1.3. Kelengkapan Hardware yang digunakan
1. Satu buah laptop untuk membuat program dengan
spesifikasi sebagai berikut :
a. Processor : Intel (R) Celeron(R) CPU 887 @
1.50GHz
37
b. Memory RAM : DDR3 2.00 Gb
c. Kartu VGA : Intel(R) HD Graphics 3000
d. Hardisk : 320 Gb
5.1.1.4. Kelengkapan Software yang digunakan
1. Java Eclipse
2. Algoritma RC4 (Rivest Code 4)
3. Algoritma Blowfish
4. Flowchart
5. JDK (Java Development Kit)
6. Sistem operasi Windows 7 yang berjalan pada laptop
5.1.1.5. Mendefinisikan Masalah
Masalah yang ingin diselesaikan dengan sistem ini adalah
bagaimana cara mengimplementasikan kedua algoritma dan tools
apa yang mendukung dalam implementasi tersebut. Pada penulisan
ini, penulis akan mengimplementasikan algoritma RC4 dan
Blowfish menggunakan Java Eclips. Dengan demikian dari
implementasi ini dapat diketahui kelebihan dari kedua algoritma
tersebut.
5.1.2. Fase Perancangan
Dalam perancangan aplikasi keamanan data menggunakan
algoritma RC4 dan Blowfish berbasis java ini, perancangan Flowchart
Diagram.
38
5.1.2.1. Flowchart Diagram
Agar lebih mudah dalam pembuatan program, maka
penulis membuat diagram flowchart yang akan menggambarkan
alur program secara umum. Flowchart tersebut dapat dilihat pada
gambar dibawah ini
Gambar 5.1 Flowchart Aplikasi
(Sumber : Diolah Sendiri)
39
Flowchart pada gambar 5.1 menggambarkan alur proses
dan urutan-urutan prosedur dalam aplikasi enkripsi dan dekripsi
yang dibuat.
Untuk enkripsi Dimulai dari memasukkan plaintext,
kemudian membaca isi serta jenis file, dan selanjutnya masukkan
password dan konfirmasi password untuk keamanan file yang akan
dienkripsi, jika proses berhasil atau password yang dimasukkan
benar maka akan berlanjut ke proses enkripsi hingga menghasilkan
ciphertext dan selesai. Jika salah maka akan diminta untuk
mengkonfirmasi dengan password yang benar.
Untuk dekripsi dimulai dengan memasukkan file ciphertext,
kemudian membaca isi serta jenis file, dan selanjutnya masukkan
password dan konfirmasi password untuk file yang akan
didekripsi, jika proses berhasil atau password uang dimasukan
benar maka akan berlanjut ke proses dekripsi hingga menghasilkan
plaintext dan selesai. Jika salah memasukkan password maka akan
diminta untuk mengkonfirmasi dengan password yang benar.
5.1.2.2. Perancangan Antarmuka
Perancangan antarmuka yang dibuat penulis pada aplikasi
ini terdiri dari beberapa halaman, antara lain :
1. Menu Halaman Pembuka
Menu ini merupakan tampilan awal ketika
membuka Aplikasi Keamanan Dokumen Menggunakan
40
Algoritma Rivest Code 4 Dan Blowfish Berbasis Java.
Pada halaman ini menampilkan judul aplikasi serta
beberapa menu yang dapat dipilih oleh pengguna atau
user. Adapun menu yang terdapat pada halaman utama ini
adalah Home, Dekripsi, Help dan About.
Gambar 5.2 Menu Halaman Pembuka.
(Sumber : Diolah Sendiri)
2. Menu Enkripsi
Menu ini merupakan tampilan untuk melakukan
proses enkripsi pada berbagai jenis file dan ukuran.
Dimulai dari memilih file yang akan di enkripsi sampai
dengan memasukkan password untuk file yang akan
dienkripsi.
41
Gambar 5.3 Menu Enkripsi
(Sumber : Diolah Sendiri)
3. Menu Dekripsi
Menu ini merupakan tampilan untuk melakukan
proses dekripsi untuk file yang telah di enkripsi
sebelumnya. Dimulai dari memilih file yang akan di
dekripsi sampai dengan memasukkan password untuk file
yang akan di dekripsi.
Gambar 5.4 Menu Dekripsi
(Sumber : Diolah Sendiri)
42
4. Menu About
Menu ini merupakan menu yang berisi tentang tata
cara penggunaan aplikasi enkripsi dan dekripsi file.
Gambar 5.5 Menu About
(Sumber : Diolah Sendiri)
5. Menu Help
Menu ini berisi profil tentang aplikasi enkripsi dan
dekripsi file menggunakan algoritma RC4 dan Blowfish.
Gambar 5.6 Menu Help
(Sumber : Diolah Sendiri)
43
5.1.2.3. Perancangan Algoritma Program Kriptografi
Aplikasi yang penilis buat menggunakan 2 algoritma
kriptografi dalam mengenkripsi ataupun mendekripsi file. Pada saat
akan melakukan proses enkripsi pilih file yang akan di enkripsi,
kemudian setelah itu masukan password untuk melindungi hasil
eksekusi file, dan masukan kembali password yang sama untuk
menkonfirmasi password, selanjutnya lakukan proses enkripsi
dengan memilih menu enkripsi.
Tahapan selanjutnya adalah proses dekripsi, pada
tahapan ini file yang telah dienkripsi akan dikembalikan lagi
seperti file aslinya dengan cara membalik proses enkripsi. File
yang telah di dekripsi menggunakan algoritma RC4 dan Blowfish,
pada saat akan mendekripsi file tidak lupa untuk memasukan
password yang sama pada saat melakukan enkripsi, dan masukan
kembali password yang sama untuk mengkonfirmasi password
nya, selanjutnya lakukan proses dekripsi dengan memilih menu
dekripsi.
5.1.2.4. Pseudo Code
Berikut pseudo code untuk mengupload file yang ingin
di enkripsi.
44
Gambar 5.7 Pseudo Code untuk mengupload file
(Sumber : Diolah Sendiri)
Setelah file asli berhasil di upload, maka file akan dienkripsi dan
berikut pseudo codenya.
Gambar 5.8 Pseudo Code proses enkripsi file
(Sumber : Diolah Sendiri)
45
Gambar 5.9 Pseudo Code proses enkripsi file
(Sumber : Diolah Sendiri)
Gambar 5.10 Pseudo Code proses enkripsi file
(Sumber : Diolah Sendiri)
46
Setelah ciphertext file berhasil di upload, maka file
akan didekripsi dan berikut pseudo codenya.
Gambar 5.11 Pseudo Code proses dekripsi file
(Sumber : Diolah Sendiri)
49
5.1.3. Fase Konstruksi
5.1.3.1. Instalasi JDK (Java development Kit)
Penulis akan Menjabarkan langkah-langkah dalam
melakukan instalasi JDK (Java development Kit), adalah
sebagai berikut :
Klik menu file Jdk-6u26-nb7-0-windows-ml
Gambar 5.14 menu file Jdk-6u26-nb7-0-windows-ml
(Sumber : Diolah Sendiri)
Proses Configurasi instalasi Java SE Development Kit and
NetBeans IDE Installer. Kemudian klik tombol Next
50
Gambar 5.15 Proses Configurasi instalasi
(Sumber : Diolah Sendiri)
Klik Next pada menu file Welcome to the JDK 6 update 26
and NetBeans IDE 7.0 Installer
Gambar 5.16 menu file Instalasi JDK
(Sumber : Diolah Sendiri)
Pilih I accept the terms in agrement. Install JUnit. Kemudian
klik tombol Next.
51
Gambar 5.17 menu file Instalasi JDK
(Sumber : Diolah Sendiri)
Klik menu browser untuk memilih tempat penyimpanan file.
Kemudian klik tombol Next
Gambar 5.18 menu browser
(Sumber : Diolah Sendiri)
52
Klik Install to start the installation
Gambar 5.19 menu file Instalasi JDK
(Sumber : Diolah Sendiri)
Kemudian Klik tombol Next
Gambar 5.20 menu file Instalasi JDK
(Sumber : Diolah Sendiri)
53
Proses Installing JDK 6 Update 26
Gambar 5.21 menu file Instalasi JDK
(Sumber : Diolah Sendiri)
Click Finish to Finish the NetBeans IDE setup
Gambar 5.22 menu file Instalasi JDK
(Sumber : Diolah Sendiri)
54
5.1.3.2. Instalasi Java Eclipse
Buka Folder tempat penyimpanan data Eclipse
Gambar 5.23 Menu Instalasi Java Eclipse
(Sumber : Diolah Sendiri)
Klik icon Eclipse application
Gambar 5.24 Menu Instalasi Java Eclipse
(Sumber : Diolah Sendiri)
55
Setelah di Klik Menu file eclipse, kemudian muncul tampilan
menu eclipse
Gambar 5.25 Menu Instalasi Java Eclipse
(Sumber : Diolah Sendiri)
Klik tombol browser pada menu Workspace Launcher,kemudian
klik tombol Ok.
Gambar 5.26 Menu Instalasi Java Eclipse
(Sumber : Diolah Sendiri)
56
Pada menu Select Workspace Directory, pilih file eclips pada
folder. Kemudian klik ok, untuk melakukan proses
penyimpanan data.
Gambar 5.27 Menu Instalasi Java Eclipse
(Sumber : Diolah Sendiri)
Tampilan Menu Java Eclipse yang telah berhasil di install
Gambar 5.28 Menu Instalasi Java eclipse
(Sumber : Diolah Sendiri)
57
5.1.4. Fase Pelaksanaan
Pada fase pelaksanaan ini sesuai dengan sub bagian 4.2 pengujian
aplikasi, penulis melakukan pengujian aplikasi secara black box mandiri
dan secara black box oleh user. Untuk black box penulis menganalisis
spesifikasi laptop yang digunakan untuk menerapkan aplikasi ini, setelah
melakukan ujicoba untuk mengetahui apakah aplikasi dapat bekerja
dengan baik, penulis meminta tanggapan kepada user untuk aplikasi yang
penulis buat ini.
5.1.4.1. Spesifikasi Laptop/PC yang digunakan
Perangkat yang digunakan pada saat menjalankan aplikasi
ini memiliki spesifikasi sebagai berikut :
a. Processor : Intel (R) Celeron(R) CPU 887 @ 1.50GHz
b. Memory RAM : DDR3 2.00 Gb
c. Kartu VGA : Intel(R) HD Graphics 3000
d. Hardisk : 320 Gb
Adapun perangkat lunak OS (Operating System) yang
digunakan untuk menjalankan aplikasi ini adalah windows 7.
5.1.4.2. Pengujian Aplikasi
Setelah mengeksekusi program aplikasi maka dilakukan
pengujian aplikasi. Pengujian aplikasi yang telah dibuat bertujuan
untuk melihat jalannya program, stabilitas dan mengetahui tingkat
kepuasan pengguna pada aplikasi ini, oleh karena itu pengujian
58
dilakukan dengan dua tahap yaitu dengan pengujian secara black
box mandiri dan hasil respon oleh user (pengguna).
5.1.4.2.1. Pengujian Black Box Mandiri
Pengujian aplikasi secara black box mandiri
yaitu pengujian yang dilakukan secara langsung pada
laptop/PC yang digunakan untuk menjalankan aplikasi
keamanan dokumen menggunakan algoritma rivest code4
dan blowfish berbasis java.
Berikut hasil pengujian aplikasi keamanan
dokumen menggunakan algoritma rivest code4 dan
blowfish berbasis java pada berbagai file dan dari
berbagai ukuran yaitu :
1. File dengan format .avi dengan ukuran 23.6 MB
2. File dengan format .docx dengan ukuran 51 KB
3. File dengan format .JPEG dengan ukuran 96 KB
4. File dengan format .MP3 dengan ukuran 4,388 MB
5. File dengan format .pdf dengan ukuran 813 KB
64
5.1.4.2.2. Respon Oleh User Tentang Aplikasi
Respon oleh user tentang aplikasi ini yaitu
berupa angket yang berisi pertanyaan yang meminta
tanggapan user setelah menggunakan aplikasi ini yang
diberikan kepada beberapa mahasiswa (user) yang
diambil dari lingkungan kampus penulis. Angket ini
bertujuan untuk mendapatkan tingkat validitas apabila
digunakan langsung oleh pengguna. Hasil angket dapat
dilihat secara lengkap pada lampiran.
5.1.4.3. Analisis Hasil Pengujian
5.1.4.3.1. Analisis Hasil Pengujian Black Box mandiri
Berdasarkan hasil pengujian yang dilakukan
secara black box mandiri dan ditunjukan oleh
gambar pada sub bab 5.1.4.2.1, maka dapat
disimpulkan bahwa aplikasi berjalan dengan baik
pada laptop/PC. Program dapat dikomplikasi
dengan baik dan tidak ada error yang terjadi
ketika program dijalankan.
5.1.4.3.2. Analisis Hasil Respon oleh User
Setelah dilakukan analisis, hasil respon oleh
user berupa angket kepada pengguna
menghasilkan penilaian terhadap aplikasi yang
65
dibangun. Dari angket yang diberikan kepada user
nilai persentase tingkat kepuasan terhadap aplikasi
cukup baik. ini dapat disimpulkan berdasarkan
hasil angket dan respon oleh user pada beberapa
pertanyaan yang telah diajukan.
5.2. Pembahasan.
5.2.1. Proses Enkripsi dan Dekripsi File pada Aplikasi ini
Berikut proses enkripsi yang berjalan dalam aplikasi ini :
1. File asli yang berupa file dengan ekstensi .doc/docx, jpg/jpeg, dan
sebagainya akan dimasukkan ke dalam aplikasi, kita contohkan
dengan bab 1.doc atau bab 1.docx yang berukuran 20 KB.
2. Lalu file tersebut akan diubah menjadi file dengan tipe byte.
3. Setelah file diubah menjadi tipe byte dan akan didapat besarnya bit
pada file tersebut, besarnya bit yang dapat dijalankan pada aplikasi
ini adalah 64-bit, jika besarnya bit tidak mencapai 64-bit maka bit
akan ditambahkan sehingga menjadi 64-bit.
4. Setelah itu maka file tersebut akan di enkripsi dengan cara dibagi
menjadi 2 bagian, yaitu file yang telah menjadi 64-bit tersebut akan
dibagi menjadi masing-masing 32-bit, kemudian dilakukan proses
iterasi dengan kunci atau password yang telah dimasukkan sampai
16 kali iterasi hingga file tersebut menjadi ciphertext file.
66
5. Lalu file tersebut ditambahkan ekstensinya menjadi bab 1.doc.RCE
atau bab 1.docx.RCE, sehingga menjadi tipe file yang berupa
karakter word dengan besarnya ukuran file 20 KB.
Berikut proses dekripsi yang berjalan dalam aplikasi ini :
1. Ciphertext file akan dimasukkan ke dalam aplikasi dengan nama bab
1.doc.RCE atau bab 1.docx.RCE dengan ukuran file20 KB.
2. Lalu file tersebut akan diubah menjadi file dengan tipe byte.
3. Setelah file diubah menjadi tipe byte dan akan didapat besarnya bit
pada file tersebut, maka file tersebut akan didekripsi dengan cara
yang sama seperti proses enkripsi namun dilakukan secara terbalik,
kemudian dilakukan proses iterasi hingga 16 kali proses iterasi,
sehingga menjadi plaintext file atau file asli kembali.
4. Lalu file tersebut akan dihilangkan ekstensi.RCE nya, hingga
menjadi tipe file asli kembali dengan nama bab 1.docx, dengan
ukuran file sebesar 20 KB.
5.2.2. Pembahasan Hasil Enkripsi dan Dekripsi
Pada tahapan ini, penulis akan membahas hasil dari proses
enkripsi dan dekripsi pada Aplikasi keamanan dokumen
menggunakan algoritma rivest code 4 dan blowfish berbasis java
ini. Adapun pembahasan hasil dari enkripsi dan dekripsi ini berupa
pengujian dengan melakukan enkripsi dan dekripsi terhadap
67
beberapa file, berikut hasilnya dapat dilihat pada tabel 5.1 dan tabel
5.2.
Tabel 5.1 Beberapa hasil enkripsi setelah dilakukan pengujian.
No Nama File Format File Ukuran File Lamanya Proses
1 AKB48 heavy rotation .avi 57.6 MB 6.7 Detik
2 BAB 1 .docx 22 KB 0.6 Detik
3 Superman Is Dead -
Poppies Dog Anthem
.mp3 2.98 MB 0.9 Detik
Tabel 5.2 Beberapa hasil dekripsi setelah dilakukan pengujian.
No Nama File Format File Ukuran File Lamanya Proses
1 AKB48 heavy rotation .RCE 57.6 MB 6.5 Detik
2 BAB 1 .RCE 22 KB 0.4 Detik
3 Superman Is Dead -
Poppies Dog Anthem
.RCE 2.98MB 0.7 Detik
68
BAB VI
SIMPULAN DAN SARAN
6.1. Simpulan
Berdasarkan penelitian yang dilakukan oleh penulis mengenai
Aplikasi Keamanan Dokumen Menggunakan Algoritma Rivest Code 4
Dan Blowfish Berbasis Java ini, maka dapat diambil kesimpulan sebagai
berikut :
1. Pembuatan Aplikasi Keamanan Dokumen Menggunakan Algoritma
Rivest Code 4 Dan Blowfish Berbasis Java ini telah berhasil dilakukan
dengan pengujian sistem tersebut.
2. Dari hasil pengujian pada sistem dan aplikasi diperoleh kesimpulan
bahwa fungsi-fungsi yang disediakan oleh sistem dan aplikasi berjalan
dengan baik sesuai dengan yang diharapkan, sehingga layak digunakan
oleh user.
3. Aplikasi Keamanan Dokumen Menggunakan Algoritma Rivest Code 4
Dan Blowfish Berbasis Java ini dapat membantu pihak instansi atau
perusahaan untuk mengamankan dan menjaga keaslian file yang bersifat
private atau rahasia yang terdapat pada instansi maupun perusahaan
tersebut.
69
6.2. Saran
Berdasarkan dari hasil penelitian yang penulis lakukan terdapat
beberapa saran yaitu :
1. Diharapkan bahwa aplikasi ini dapat diimplementasikan pada
perusahaan atau instansi, sehingga dapat mengamankan data atau file
penting pada perusahaan atau instansi tersebut.
2. Untuk penelitian kedepannya diharapkan adanya pengembangan terhadap
aplikasi ini.
70
DAFTAR PUSTAKA
Bastari, A. Thoriq Abrowi. (2011). Analisis Perbandingan Stream Chiper RC4
dan SEAL. Makalah IF3058 Kriptografi – Sem. II Tahun 2010/2011.
Hakim, Rachmad S. (2009). Konsep Pemrograman Java dan penerapannya
untuk membuat software aplikasi. Jakarta : PT. Elex Media Komputindo.
Hamzah, Rio. (2011). Implementasi Algoritma RSA dan Blowfish untuk
Enkripsi dan Dekripsi Data Menggunakan Delphi 7.
Jogiyanto, Prof. Dr., HM, MBA, Akt. (2005). Analisis Dan Desain. Yogyakarta :
C.V Andi Offset.
Kurniadi, Indarwoko. (2011). Logika Dan Algoritma Dasar menggunakan
Bahasa C++. Jakarta : Mitra Wacana Media.
Nugroho, Adi. (2008). Pemrograman Java Menggunakan IDE Eclipse Callista
dalam Penerapannya pada Pengembangan Aplikasi Mandiri (Stand Alone)
dan Aplikasi Berbasis Web. Yogyakarta : C.V Andi Offset.
Pratiwi, Apriyanti E. (2011). Implementasi Enkripsi Data Algoritma Blowfish
Menggunakan Java Pada Aplikasi Email. Bandung : Politeknik Telkom
Bandung.
Santoso, Harip. (2005). Membuat Multiaplikasi menggunakan Visual Basic 6.
Jakarta : PT. Elex Media Komputindo.
Schneier, Bruce. 1996. Applied Cryptography, Second Edition. New York : John
Wiley & Son.
71
Wahana Komputer. (2009). Menguasai Java Programming. Jakarta : Salemba
Infotek.
Wahyu, Febrian. (2012). Penerapan Algoritma Gabungan RC4 dan BASE64
Pada Sistem Keamanan E-COMMERCE. Yogyakarta : Seminar Nasional
Aplikasi Teknologi Informasi.
Zain, Ruri Hartika. (2012). Perancangan Dan Implementasi Cryptography
Dengan Metode Algoritma Rc4 Pada Type File Document Menggunakan
Bahasa Pemrograman Visual Basic 6.0. Jurnal Momentum. Vol. 12.No.1.
Februari 2012.