Anda di halaman 1dari 13

IMPLEMENTASI ALGORITMA ADVANCED ENCRYPTION STANDARD (AES)

UNTUK ENKRIPSI DAN DEKRIPSI PADA DOKUMEN TEKS

Ana Kurniawati1, Muhammad Dwiky Darmawan2


1)
Sistem Informasi, Fakultas Ilmu Komputer dan Teknologi Informasi, Universitas Gunadarma
2)
Teknik Informatika, Fakultas Teknologi Industri, Universitas Gunadarma
Jl. Margonda Raya No.100 Pondok Cina Depok
e-mail : ana@staff.gunadarma.ac.id1), darmawandwiky95@gmail.com2)

ABSTRAK

Dalam penggunaan teknologi sehari-hari, manusia tidak terlepas dari yang namanya internet
sebagai kebutuhan untuk saling bertukar informasi. Salah satu informasi yang sering dicari
ataupun dikirim adalah dokumen. Di dalam dokumen banyak mengandung informasi-informasi
penting di dalamnya. Keamanan dokumen tentu menjadi sangat penting agar tidak adanya pihak-
pihak yang tidak berwenang meretas atau memanipulasi informasi dari dokumen tersebut. Ada
cara untuk mengamankan suatu informasi agar informasi itu tidak bocor kepada pihak yang tidak
berwenang, yaitu dengan menggunakan kriptografi.

Kriptografi merupakan salah satu teknik yang digunakan untuk meningkatkan aspek keamanan
suatu informasi. Kriptografi digunakan untuk mengubah pesan rahasia yang dapat dimengerti
menjadi sebuah pesan yang tidak dapat dimengerti lagi. Pesan yang akan dirahasiakan sebelum
disamarkan disebut plaintext, sedangkan pesan setelah disamarkan disebut chipertext. Proses
penyamaran plaintext ke chipertext disebut enkripsi, sedangkan pengembalian chipertext menjadi
plaintext semula disebut dekripsi.
Dalam penelitian ini algoritma yang digunakan adalah algoritma kriptografi Advanced
Encryption Standard (AES). Dokumen yang digunakan untuk pengujian adalah dokumen teks
jurnal jurnal penelitian berbahasa Indonesia sebanyak 15 dokumen. Dokumen yag diuji adalah
dokumen bertipe pdf, doc dan txt. Dari hasil implementasi dan pengujian didapat kesimpulan
bahwa algoritma kriptografi AES dapat diimplementasikan dalam menjaga kerahasiaan dan
keamanan pesan rahasia.

Kata Kunci: Dekripsi, Enkripsi, Dokumen Teks.

1. PENDAHULUAN

Dalam penggunaan teknologi sehari-hari, manusia tidak terlepas dari yang namanya internet
sebagai kebutuhan untuk saling bertukar informasi. Salah satu informasi yang sering dicari
ataupun dikirim adalah dokumen. Di dalam dokumen banyak mengandung informasi-informasi
penting di dalamnya. Keamanan dokumen tentu menjadi sangat penting agar tidak adanya pihak-
pihak yang tidak berwenang meretas atau memanipulasi informasi dari dokumen tersebut. Ada
cara untuk mengamankan suatu informasi agar informasi itu tidak bocor kepada pihak yang tidak
berwenang, yaitu dengan menggunakan kriptografi.
Kriptografi adalah salah satu teknik yang digunakan untuk meningkatkan aspek
keamanan suatu informasi. Kriptografi merupakan kajian ilmu dan seni untuk menjaga suatu
berkas agar berkas tersebut aman. Bentuk tersandi ini hanya dapat dibaca oleh pihak yang berhak
membacanya. Pesan yang akan dirahasiakan sebelum disamarkan disebut plaintext, sedangkan
pesan setelah disamarkan disebut chipertext. Proses penyamaran plaintext ke chipertext disebut
enkripsi, sedangkan pengembalian chipertext menjadi plaintext semula disebut dekripsi.
Kriptografi mendukung kebutuhan dari dua aspek keamanan informasi, yaitu secrecy dan
authenticity. Secrecy merupakan perlindungan terhadap kerahasiaan berkas informasi, sedangkan
Authenticity merupakan perlindungan terhadap pemalsuan dan pengubahan informasi yang tidak
diinginkan.
Kriptografi dengan algoritma yang baik akan memerlukan waktu yang lama untuk
memecahkan berkas yang telah tersandikan. Seiring dengan perkembangan komputer, maka
dunia teknologi informasi membutuhkan algoritma kriptografi yang lebih kuat dan aman.
Algortima dalam kriptografi dibagi dalam dua kategori, yaitu algoritma dengan kunci simetrik
dan kunci asimetrik. Dalam beberapa algoritma kunci simetrik, Advanced Encryption Standard
(AES) merupakan algoritma kunci simetrik yang sangat baik, juga merupakan algoritma cipher
blok yang menggunakan teknik subtitusi, permutasi dan sejumlah putaran pada setiap blok yang
akan dienkripsi.
Penelitian ini membahas bagaimana membuat perangkat lunak untuk mengamankan
dokumen teks dengan menerapkan prinsip kriptografi menggunakan Advanced Encryption
Standard (AES). Perangkat lunak ini bertujuan untuk mengamankan dokumen sebelum
mengirimnya melalui jaringan internet, sehingga hanya orang yang berkepentingan mengetahui
isi dari dokumen tersebut. Dengan aplikasi ini, diharapkan user merasakan aman dalam
mengirim dokumen berbasis online dan terjaga kerahasiaannya.

2. METODE PENELITIAN

Model proses pengembangan perangkat lunak yang digunakan dalam penelitian ini yaitu
menggunakan metode waterfall yang terdiri dari tahap analisa kebutuhan, tahap perancangan
dan tahap pembuatan program serta tahap pengujian. Metode waterfall dapat dilihat pada gambar
1.

Analisis
Kebutuhan
Perancangan

Pengkodean

Pengujian

Pengoperasian

Gambar 1. Metode Waterfall


3. HASIL DAN PEMBAHASAN

3.1. Tahap Analisa Kebutuhan


Pada tahap analisa kebutuhan ini dilakukan menganalisis perangkat lunak dengan
menggunakan algortima advanced encryption standard (AES). Analisa meliputi analisa
kebutuhan data, kebutuhan fungsional dan kebutuhan non fungsional.

3.1.1 Analisis Kebutuhan Data


Kebutuhan data yang dibutuhkan pada perangkat lunak ini adalah dokumen yang dapat
dienkripsi dan didekripsi. Dokumen merupakan dokumen jurnal-jurnal penelitian yang
mempunyai format teks yaitu Word (*.doc/x), Plain Text (.*txt) dan PDF (*.pdf).

3.1.2 Analisis Kebutuhan Fungsional


Fungsi-fungsi yang dibutuhkan pada perangkat lunak yang akan dibangun antara lain:
- Kemampuan untuk bisa meng-enkripsi dokumen, serta membangkitkan kunci untuk dokumen
yang di-enkripsi.
- Kemampuan program yang dapat meng-enkripsi dokumen text.
- Kemampuan program untuk meng-dekripsikan kembali dokumen yang telah dienkripsi.

3.1.3 Analisis Kebutuhan Non Fungsional


Kebutuhan ini menjelaskan hal-hal yang dibutuhkan selama pembuatan perangkat
lunak, yaitu spesifikasi perangkat keras dan perangkat lunak.
1. Spesifikasi Perangkat Keras
Spesifikasi perangkat keras yang digunakan dalam pembuatan program ini adalah sebagai
berikut:
- Processor Intel Core i5-2450M CPU @ 2.50 GHz
- Hard disk 500GB
- RAM 2GB
- VGA Intel HD Graphics Family

2. Spesifikasi Perangkat Lunak


Spesifikasi perangkat lunak yang digunakan dalam pembuatan situs ini adalah sebagai
berikut:
- Windows 7 Ultimate 32-bit
- Netbeans 8.1

3.2. Tahap Perancangan


Pada tahap perancangan, meliputi perancangan perangkat lunak secara umum seperti
perancangan antar-muka pengguna, struktur program dan perancangan proses dengan UML.

3.2.1. Struktur Menu Perangkat Lunak


Struktur Menu Perangkat Lunak ini dapat dilihat pada gambar 2.
Gambar 2. Struktur Menu Perangkat Lunak
3.2.2 Perancangan Proses
Dalam merancang proses ini menggunakan alat bantu UML (Unified Modeling
Language). Terdapat beberapa diagram yang digunakan yaitu Use-case Diagram dan Activity
Diagram.

3.2.2.1 Use-case Diagram


Use-case diagram adalah memodelkan konteks diagram dan memodelkan kebutuhan
perangkat lunak. Model kebutuhan perangkat lunak ini memiliki use-case yang disajikan pada
gambar 3.

Gambar 3 Use Case Diagram Perangkat Lunak Enkripsi dan Dekripsi

Pada gambar 3 dijelaskan bahwa user atau pengguna harus memasukan password pada
program sebelum masuk ke menu utama. Jika password yang dimasukan valid, maka pengguna
dapat melakukan enkripsi dan dekripsi pada menu utama yang telah disediakan.
3.2.2.2 Activity Diagram
Activity diagram menggambarkan berbagai alur aktifitas dalam program secara rinci.
Dalam perancangan activity diagram ini menjelaskan activity diagram untuk penggunan dan
perangkat lunak yang dapat dilihat di gambar 4.

Gambar 4. Activity Diagram Perangkat Lunak Enkripsi dan Dekripsi

Pada gambar 4 menjelaskan langkah pertama user atau pengguna harus memasukan
password, jika password valid, program akan menampilkan Menu Utama. Pengguna mencari
dokumen untuk dienkripsi dan dekripsi, setelah itu pengguna melakukan proses meng-enkripsi
atau dekripsi dokumen, yang kemudian perangkat lunak akan menampilkan Pop-Up berhasil.
Setelah proses enkripsi dan dekripsi berhasil, pengguna akan mendapatkan hasil dokumen yang
telah dienkripsi atau didekripsi.
3.2.2.3 Sequence Diagram
Sequence diagram memperlihatkan kolaborasi dinamik antara objek-objek dengan suatu
urutan pesan antar objek tersebut. Dalam perancangan sequence diagram ini menjelaskan
sequence diagram untuk pengguna dan perangkat lunak untuk enkripsi dan dekripsi yang dapat
dilihat di gambar 5 dan gambar 6.

Pengguna Login Enkripsi

Masukan Password

Pilih Berkas & Proses Eknripsi

Hasil Enkripsi

Gambar 5. Sequence Diagram Enkripsi

Pengguna Login Dekripsi

Masukan Password

Pilih Berkas & Proses Dekripsi

Hasil Dekripsi

Gambar 6. Sequence Diagram Dekripsi


3.2.3 Perancangan Tampilan
Tahap perancangan tampilan sangat dibutuhkan dalam pembuatan perangkat lunak ini,
karena rancangan tampilan akan memberikan gambaran tampilan perangkat lunak yang akan
dibuat semudah mungkin agar pengguna tidak mendapatkan kesulitan saat menggunakan
perangkat lunaknya.

3.2.3.1 Rancangan Tampilan Password


Tampilan password adalah pertama kali muncul ketika program dijalankan. Tampilan
password ini terdiri dari satu Text Field untuk memasukan password dan dua Button: YA untuk
masuk ke menu utama dan BATAL untuk gagal masuk ke menu utama. Gambarnya dapat dilihat
seperti gambar 7.

jTextField
!

Button Button

Gambar 7. Rancangan Tampilan Password

3.2.3.2 Rancangan Tampilan Menu Utama


Tampilan menu utama adalah tampilan yang terdapat beberapa TabPane, yaitu: Enkripsi,
Dekripsi, Petunjuk dan Tentang.
- Rancangan tampilan Tab Enkripsi terdapat satu buah Text Field untuk menampilkan path
dokumen, Button Cari untuk mencari dokumen dan Button Enkripsi untuk meng-enkripsi
dokumen. Gambarnya dapat dilihat di gambar 8.
TabPane TabPane TabPane TabPane

jLabel jTextField Button Button

Gambar 8. Rancangan Tampilan Menu Tab Enkripsi

- Rancangan tampilan Tab Dekripsi terdapat dua Text Field dan tiga Button, Text Field
pertama untuk menampilkan path berkas enkripsi, Text Field kedua untuk menampilkan
path dokumen kuncinya. Button pertama dan kedua untuk mencari dokumen enkripsi dan
kunci, sedangkan Button ketiga untuk meng-dekripsi dokumen. Gambarnya dapat dilihat
di gambar 9.

TabPane TabPane TabPane TabPane


jTextField Button
jLabel

jLabel jTextField Button

Button

Gambar 9. Rancangan Tampilan Menu Tab Dekripsi

- Rancangan tampilan Tab Petunjuk terdapat Text Area untuk menampilkan informasi tata
cara penggunaan aplikasi. Gambarnya dapat dilihat di gambar 10.

TabPane TabPane TabPane TabPane

jTextArea

Gambar 10. Rancangan Tampilan Menu Tab Petunjuk

- Rancangan tampilan Tab Tentang Petunjuk terdapat Text Area untuk menampilkan
informasi tentang aplikasi. Gambarnya dapat dilihat di gambar 11.

TabPane TabPane TabPane TabPane



jTextArea

Gambar 11. Rancangan Tampilan Menu Tab Tentang Aplikasi

3.3. Tahap Pengujian


Setelah membuat perangkat lunak enkripsi dan dekripsi dokumen teks menggunakan
algoritma advanced encryption standard (AES) di Netbeans 8.1, langkah selanjutnya adalah
tahap pengujian. Tahap pengujian ini dilakukan untuk mengetahui apakah perangkat lunak
sudah berjalan dengan baik. Berikut adalah tahapan uji coba yang dilakukan:

3.3.1. Pengujian Tampilan Password


Pada uji coba ini dilakukan apakah pengguna berhasil masuk ke menu utama perangkat
lunak jika memasukan password yang valid dan sebaliknya.
- Langkah pertama adalah menjalankan program di Netbeans dengan cara klik tombol

- Setelah itu akan muncul form password, dapat dilihat di gambar 12. Jika password: ganis,
maka akan tampil menu utama, dapat dilihat di gambar 14. Jika password tidak sesuai,
maka akan tampil pop-up pemberitahuan kesalahan password dapat dilihat di gambar 13.

Gambar 12. Tampilan Form Password

Gambar 13. Tampilan Kesalahan Password


Gambar 14. Menu Utama Aplikaasi Enkripsi dan
d Dekripssi

3.3.2. Pengujian
P Meng-enkrip
M psi Dokumen
n Text
i dilakukann apakah pengguna beerhasil mengg-enkripsi dokumen. Seetelah
Pada tahap ini
berhasil masuk ke menu
m utama, maka langgkah selanjuutnya adalahh mengenkrippsi atau dekkripsi
dokumenn. Langkah pertama
p untuuk meng-enkkripsi adalahh, pilih tab Enkripsi, laluu cari berkas yang
ingin dienkripsi deng
gan cara klikk tombol Carri. Gambarnnya dapat dilihat di gambbar 15.

Gambbar 15. Cari Dokumen

- Setelah menccari berkas yang


y ingin diienkripsi, lanngkah selanjjutnya adalah enkripsi berkas
teersebut, dengan cara kliik tombol Enkripsi
E maaka hasilnyaa akan ada dua
d berkas, yaitu
berkas yang berekstensi .ENC dan .Key . sebagaai kuncinya. Gambarnyaa dapat dilihhat di
gambar 16.

Gam
mbar 16. Popp-up Berkas Berhasil Dieenkripsi
3.3.3. PPengujian Meng-dekrip
M psi Dokumen n Teks
Pada tahap ini i apakah pengguna dapatd meng--dekripsi dookumen denngan kunci yang
sesuai. Ketika
K penggguna sudah meg-enkrips
m si dokumen, maka akan terdapat duua dokumen yaitu
dokumenn yang berek kstensi .ENC C dan .Key. Fungsi darii berkas .Key adalah sebbagai kunci yang
dibutuhkkan saat inginn meng-dekrripsi berkas .ENC.
- Langkah
L perttama saat inggin meng-deekripsi dokum men yaitu, pilih
p Tab Dekkripsi pada menu
m
uttama, setelah itu cari beerkas yang inngin didekriipsi, yaitu beerkas yang berekstensi
b .
.ENC
dengan cara klik
k tombol Cari. Setelah mencari berkas .ENC C, maka lanngkah selanjuutnya
addalah mencaari berkas kuncinya
k yanng berekstennsi .Key denngan cara klik
k tombol Cari.
C
G
Gambarnya dapat
d dilihat di gambar 17.

Gambar 17. Mencarii berkas .Keyy

- langkah sellanjutnya addalah proses meng-dekrip


m psi berkas. Caranya
C adallah klik tombbol
Deekripsi, laluu akan tampil Pop-up berrhasil sepertii pada gambbar 18.

Gambar 188. Pop-up Beerhasil Dekriipsi

3.3.4. PPengujian Dokumen Teeks


Pengujian paada tampilann perangkat lunak yang sudah dibuaat telah dilakkukan. Penggujian
selanjutnnya adalah menguji
m lim
ma belas (155) dokumen text untukk dienkripsii dan didekkripsi.
Dokumenn merupakaan dokumen jurnal-jurnal penelitiann. Dokumenn terdiri darri lima dokuumen
berformaat .pdf, lima dokumen beerformat .dooc dan lima dokumen
d beerformat .txt. Hasil penggujian
dapat diliihat pada tab
bel 1.
Tabel 1. Hasil Pengujian Dokumen Teks

Proses
Type Ukuran
No Kode Dokumen Enkripsi dan
Dokumen (KB)
Deskripsi
1 Dokumen PDF1 pdf 61 Berhasil
2 Dokumen PDF2 pdf 340 Berhasil
3 Dokumen PDF3 pdf 349 Berhasil
4 Dokumen PDF4 pdf 446 Berhasil
5 Dokumen PDF5 pdf 498 Berhasil
6 Dokumen Word 1 doc 82 Berhasil
7 Dokumen Word 2 doc 91 Berhasil
8 Dokumen Word 3 doc 137 Berhasil
9 Dokumen Word 4 doc 152 Berhasil
10 Dokumen Word 5 doc 181 Berhasil
11 Dokumen TXT 1 txt 16 Berhasil
12 Dokumen TXT 2 txt 17 Berhasil
13 Dokumen TXT 3 txt 38 Berhasil
14 Dokumen TXT 4 txt 43 Berhasil
15 Dokumen TXT 5 txt 88 Berhasil

Hasil pengujian proses enkripsi dalam perangkat lunak ini berhasil bagi dokumen yang
memiliki tipe pdf, doc dan txt. Ukuran dokumen yang diuji adalah 16 498 KB.
PENUTUP

Perangkat lunak enkripsi dan dekripsi menggunakan algoritma advanced encryption standard
(AES) sudah berhasil dikembangkan. Tahap pembuatan aplikasi dimulai dari tahap analisis yang
terdiri dari analisis kebutuhan data, kebutuhan fungsional dan kebutuhan non fungsional. Tahap
perancangan perangkat lunak yang dibuat disesuaikan agar aplikasi user-friendly. Tahap ketiga
adalah pembuatan program dengan menggunakan bahasa pemrograman Java di Netbeans 8.1.
Tahap terakhir adalah tahap pengujian yang dilakukan dengan menguji 15 dokumen berformat
pdf, doc dan txt. Hasil pengujian proses enkripsi dalam perangkat lunak ini berhasil bagi
dokumen yang memiliki tipe pdf, doc dan txt. Ukuran dokumen yang diuji adalah 16 498 KB.

DAFTAR PUSTAKA

[1]. Didi Surian. 2006. Algoritma Kriptografi AES Rijndael. TESLA. Jurnal Teknik Elektro.
Vol. 8 No. 2, 97-101.
[2]. Rifkie Primartha. 2013. Penerapan Enkripsi dan Dekripsi File Menggunakan Algoritma
Advanced Encryption Standard (AES). Journal Of Research in Computer Science and
Applications. Vol. 2 No. 1.
[3]. Kurniawan. 2004. Kriptografi: Keamanan Internet dan Jaringan Komunikasi..
Informatika Bandung.
[4]. Emy Setyaningsih. 2015. Kriptografi dan Implementasinya. Andi Publisher.
[5]. Munir, Rinaldi. 2006. Kriptografi. Bandung: Penerbit Informatika.
[6]. Dr. Eng. R.H Sianipar, M.Eng. 2015. Pemrograman Java Untuk Programmer. Andi
Publisher.
[7]. Bruce Scheneir. 1996. Applied Cryptography. Second edition: John Wiley and Sons, Inc.