Implementasi Algoritma ADFGVX Cipher dan Knapsack Dalam Pengamanan Data Teks

1

IMPLEMENTASI ALGORITMA ADFGVX CIPHER DAN
KNAPSACK DALAM PENGAMANAN DATA TEKS

JUL ILMI HARAHAP
121401048

PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2016

Universitas Sumatera Utara

i

IMPLEMENTASI ALGORITMA ADFGVX CIPHER DAN
KNAPSACK DALAM PENGAMANAN DATA TEKS


SKRIPSI

Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah
Sarjana Ilmu Komputer

JUL ILMI HARAHAP
121401048

PROGRAM STUDI S-1 ILMU KOMPUTER
FAKULTAS ILMI KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2016

Universitas Sumatera Utara

ii

PERSETUJUAN


Judul

: IMPLEMENTASI ALGORITMA ADFGVX CIPHER
DAN KNAPSACK DALAM PENGAMAN DATA
TEKS

Kategori

: KRIPTOGRAFI

Nama

: JUL ILMI HARAHAP

Nomor Induk Mahasiswa

: 121401048

Program Studi


: S-1 ILMU KOMPUTER

Fakultas

: ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA

Komisi Pembimbing

:

Pembimbing 2

Pembimbing 1

Dian Rachmawati S.Si, M.Kom
NIP. 198307232009122004

Drs. Agus Salim Harahap, M.Si
NIP. 195408281981031004


Diketahui/disetujui oleh
Program Studi S1 Ilmu Komputer
Ketua,

Dr. Poltak Sihombing, M.Kom
NIP. 196202171991031001

Universitas Sumatera Utara

iii
PERNYATAAN

IMPLEMENTASI ALGORITMA ADFGVX CIPHER DAN KNAPSACK DALAM
PENGAMANAN DATA TEKS

SKRIPSI

Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan
dan ringkasan yang masing-masing telah disebutkan sumbernya.


Medan, 25 Oktober 2016

Jul Ilmi Harahap
121401048

Universitas Sumatera Utara

iv

PENGHARGAAN

Segala puji dan syukur penulis panjatkan ke hadirat Allah SWT yang telah
memberikan penulis rahmat dan hidayah-Nya sehingga penulis dapat menyelesaikan
skripsi ini tepat waktu dan sesuai dengan peraturan yang ada di Fakultas Ilmu
Kompuer dan Teknologi Informasi. Shalawat beriring salam penulis hadiahkan ke ruh
junjungan kita Nabi Besar Muhammad SAW yang syafa’atnya kita harapkan di hari
akhir kelak.
Dalam penyusunan skripsi ini penulis mendapat banyak bantuan, dukungan
dan bimbingan dari berbagai pihak. Pada kesempatan ini penulis ingin megucapkan

terimakasih banyak dan penghargaan kepada:
1.

Bapak Prof. Dr. Runtung Sitepu, SH, M.Hum selaku Rektor Universitas
Sumatera Utara.

2.

Bapak Opim Salim Sitompul, M.Sc sebagai Dekan Fakultas Ilmu Komputer
dan Teknologi Informasi.

3.

Bapak Dr. Poltak Sihombing, M.Kom sebagai Ketua Program Studi S1 Ilmu
Komputer.

4.

Ibu Maya Silvi Lydia, B.Sc, M.Sc selaku Sekretaris Program Studi Ilmu
Komputer.


5.

Bapak Drs. Agus Salim Harahap, M.Si selaku Dosen Pembimbing I yang telah
meluangkan waktu, tenaga, dan pikiran dalam membimbing, mengarahkan,
menasehati, memotivasi, dan menyemangati penulis agar dapat menyelesaikan
skripsi ini.

6.

Ibu Dian Rachmawati S.Si, M.Kom, selaku Dosen Pembimbing II yang telah
meluangkan waktu, tenaga, dan pikiran dalam membimbing, mengarahkan,
menasehati, memotivasi, dan menyemangati penulis agar dapat menyelesaikan
skripsi ini.

7.

Bapak Ade Candra S.T, M.Kom, selaku dosen Pembanding I yang telah
memberikan kritik dan saran terhadap skripsi penulis.


8.

Bapak Handrizal S.Si, M.Comp, Sc selaku dosen Pembanding II yang telah
memberikan kritik dan saran terhadap skripsi penulis.

Universitas Sumatera Utara

v

9.

Seluruh staf pengajar dan pegawai Fakultas Ilmu Komputer dan Teknologi
Informasi.

10. Teristimewa orang tua yang penulis sayangi yang tidak henti-hentinya
memberikan doa, motivasi, dan dukungan yang selalu menjadi sumber
semangat penulis.
11. Abang, kakak, dan adik yang selalu memberikan semangat kepada penulis.
12. Rahma isnaini Masya S.Kom yang telah bersedia membagi ilmunya kepada
penulis.

13. Sahabat-sahabat luar biasa Ananda Dwi Putri S.Kom, Rahma Isnaini Masya
S.Kom, Rodiyah Aini Manurung, Tristania Marcellina Siagian S.Kom, Nurul
Utami Marza, yang selalu menemani dan memberi motivasi kepada penulis.
14. Teman – teman seperjuangan mahasiswa S-1 Ilmu Komputer stambuk 2012
yang selalu memberi dukungan.
15. Semua pihak yang terlibat langsung ataupun tidak langsung yang tidak dapat
penulis ucapkan satu per satu yang telah membantu menyelesaikan skripsi ini.

Penulis menyadari dalam skripsi ini masih banyak kekurangan baik dalam penulisan
maupun tata bahasa. Oleh karena itu penulis bersedia menerima kritik dan saran yang
membangun dari pembaca dalam upaya perbaikan skripsi ini. Semoga skripsi ini dapat
bermanfaat bagi penulis dan pembaca, khususnya rekan-rekan mahasiswa lainnya
yang mengikuti perkuliahan di Universitas Sumatera Utara.

Medan, 25 Oktober 2016
Penulis

Jul Ilmi Harahap

Universitas Sumatera Utara


vi

ABSTRAK

Keamanan data merupakan salah satu hal yang sangat penting bagi manusia. Diantara
data yang berbentuk digital lainnya, data teks sangat rentan terhadap tindakan
penyalah gunaan seperti diduplikasi, dimodifikasi, bahkan dipalsukan. Terdapat
beberapa teknik untuk mengamankan data, salah satunya adalah kriptografi.
Kriptografi adalah sebuah cabang ilmu dalam ilmu komputer yang berfungsi untuk
mengamankan data. Berdasarkan kuncinya, kriptografi dibagi menjadi dua tipe yaitu
algoritma simetris dan algoritma asimetris. ADFGVX Cipher merupakan contoh dari
algoritma simetris. Pada penerapannya algoritma ADFGVX Cipher mempunyai
kelemahan, yaitu algoritma ini hanya dapat melakukan enkripsi terhadap alphabet
numeric saja. Untuk meningkatkan keamanan dari algoritma ADFGVX Cipher maka
algoritma ini dikombinasikan dengan algoritma knapsack. Algoritma knapsack
merupakan salah satu contoh kriptografi asimetris. Dengan mengkombinasikan kedua
algoritma ini, diharapkan dapat menambah keamanan data dan menutupi kelemahan
dari algoritma ADFGVX Cipher . Sistem ini dibangun dengan menggunakan bahasa
pemrograman C#. Hasil penelitian menunjukkan bahwa pengamanan data

menggunakan Algoritma ADFGVX Cipher dan knapsack dapat mengembalikan data
awal secara utuh. Sementara itu, waktu proses enkripsi menunjukkan bahwa ukuran
plainteks berbanding lurus dengan waktu. Semakin besar ukuran plainteks tersebut
maka semakin besar waktu proses enkripsinya, dan waktu proses dekripsi lebih cepat
dibanding waktu proses enkripsi.
Kata Kunci: Kriptografi, ADFGVX Cipher, Knapsack.

Universitas Sumatera Utara

Vii

IMPLEMENTATION OF ADFGVX CIPHER ALGORITHM AND
KNAPSACK ALGORITHM IN DATA TEXT SECURITY

ABSTRACT

Security data is one of the most important thing for human being. Amongst of other
digital data, data text is the most susceptible of being misused, such as duplicating,
modification, or even being falsified. There are a lot of techniques to secure data, such
as cryptography. Cryptography is branch of computer science which is used for
securing data. Based on the key, cryptography is torn into two types, named
symmetric algorithm and asymmetric algorithm. ADFGVX cipher is the example of
symmetric algorithm. In the implementation, ADFGVX cipher has weakness, named
this algorithm can only encrypt alphabet numeric. To increase the security of
ADFGVX cipher algorithm, this algorithm would be combined with knapsack
algorithm. Knapsack algorithm is one of the asymmetric cryptography. By combining
both of these algorithms is expected could increase the security ability of the data and
completing ADFGVX cipher’s weakness. This system is built by C# programming
language. Testing result shows that security data using ADFGVX Cipher Algorithm
and Knapsack Algorithm could return the whole data completely. Meanwhile,time of
encryption process show that the file size is directly proportional to time process. The
bigger plaintext size, the longer encryption time process, and decryption time process
is faster than encryption time process.
Keywords: cryptography, ADFGVX cipher, Knapsack.

Universitas Sumatera Utara

viii

DAFTAR ISI

Hal.
Persetujuan
Pernyataan
Penghargaan
Abstrak
Abstract
Daftar Isi
Daftar Tabel
Daftar Gambar
Daftar Lampiran
Bab 1 Pendahuluan
1.1 Latar Belakang Masalah
1.2 Rumusan Masalah
1.3 Ruang Lingkup Masalah
1.4 Tujuan Penelitian
1.5 Manfaat Penelitian
1.6 Metodologi Penelitian
1.7 Sistematika Penulisan
Bab 2

Bab 3

ii
iii
iv
vi
vii
viii
x
xi
xiii
1
2
3
3
3
3
5

Tinjauan Pustaka
2.1 Kriptografi
2.1.1 Tujuan Kriptografi
2.1.2 Jenis-jenis Algoritma Kriptografi
2.2 ADFGVX Cipher
2.2.1 Enkripsi ADFGVX Cipher
2.2.2 Dekripsi ADFGVX Cipher

6
6
7
8
9
10

2.3 Algoritma Knapsack
2.3.1 knapsack problem
2.3.2 Enkripsi superincreasing knapsack
2.3.3 Dekripsi superincreasing knapsack

12
12
13
15

Analisis dan Perancangan
3.1 Analisis Sistem
3.1.1 Analisis Masalah
3.1.2 Analisis Kebutuhan
3.1.2.1 Kebutuhan Fungsional
3.1.2.2 Kebutuhan Nonfungsional
3.1.3 Analisis Proses
3.2 Perancangan Sistem
3.2.1 Use Case Diagram
3.2.2 Activity Diagram
3.2.3 Sequence Diagram

17
17
18
19
19
20
20
20
24
26

Universitas Sumatera Utara

ix

3.2.4

3.3

Bab 4

Bab 5

Flowchart
3.2.4.1
Flowchart Enkripsi dan Dekripsi Sistem
3.2.4.2
Flowchart ADFGVX Cipher
3.2.4.3
Flowchart Knapsack
Perancangan Antarmuka
3.3.1 Perancangan Halaman Awal
3.3.2 Rancangan Halaman Proses Enkripsi File dan
Enkripsi Kunci
3.3.3 Rancangan Halaman Proses Dekripsi Kunci dan
Dekripsi File
3.3.4 Rancangan Halaman About
3.3.5 Rancangan Halaman Help

27
27
29
31
33
34
34
37
39
40

Implementasi dan Pengujian
4.1 Implementasi
4.1.1 Halaman Home
4.1.2 Halaman Enkripsi
4.1.3 Halaman Dekripsi
4.1.4 Halaman About
4.1.5 Halaman Help
4.2 Pengujian
4.2.1 Proses Pengujian Enkripsi Pesan
4.2.2 Proses Pengacakan Kunci
4.2.3 Enkripsi Kunci (Plainkey)
4.2.4 Dekripsi Kunci
4.2.5 Proses Dekripsi Cipherteks
4.2.6 Pengujian Algoritma terhadap Waktu

41
41
42
43
43
44
44
44
49
50
52
56
58

Kesimpulan dan Saran
5.1 Kesimpulan
5.2 Saran

63
64

Daftar Pustaka

65

Listing Program

A-1

Curriculum Vitae

B-1

Universitas Sumatera Utara

x

DAFTAR TABEL

Hal.
TABEL 2.1. Tabel ADFGVX Cipher ....................................................................... 9
TABEL 2.2 Tabel Kunci Enkripsi ADFGVX Cipher ............................................... 10
TABEL 2.3. Perubahan Posisi Kunci ADFGVX Cipher .......................................... 10
TABEL 2.4 Tabel Kunci Dekripsi ADFGVX Cipher ............................................. 11
TABEL 2.5 Tabel Kunci Dekripsi ADFGVX Cipher sesuai Urutan ..................... 11
TABEL 2.6. Tabel ADFGVX Cipher ....................................................................... 12
TABEL 2.7. Perhitungan Inversi n modulo m .......................................................... 15
TABEL 3.1. Deskripsi use-case enkripsi plainteks .................................................. 22
TABEL 3.2. Deskripsi use-case enkripsi kunci ....................................................... 22
TABEL 3.3. Deskripsi use-case Dekripsi kunci ....................................................... 23
TABEL 3.4 Deskripsi use-case Dekripsi cipher teks ............................................... 23
TABEL 3.5. keterangan Rancangan Halaman Utama .............................................. 24
TABEL 3.6. Keterangan Rancangan Halaman Enkripsi........................................... 34
TABEL 3.7. Keterangan Rancangan Halaman Dekripsi .......................................... 36
TABEL 3.8. Keterangan Rancangan Halaman About............................................... 39
TABEL 3.9. Rancangan Halaman Help .................................................................... 40
TABEL 4.1. Tabel ADFGVX Cipher ......... ............................................................. 46
TABEL 4.2. Tabel Kunci Enkripsi ADFGVX Cipher .............................................. 47
TABEL 4.3. Perubahan Posisi Kunci ADFGVX Cipher .......................................... 47
TABEL 4.4. Biner Kunci .......................................................................................... 50
TABEL 4.5. Pencarian Nilai n-1 ................................................................................ 52
TABEL 4.6. Solusi Superincrasing Knapsack ......................................................... 53
TABEL 4.7. Perubahan Biner Ke Char..................................................................... 55
TABEL 4.8. Tabel Kunci Dekripsi ADFGVX Cipher ............................................. 56
TABEL 4.9. Tabel Kunci Dekripsi ADFGVX Cipher sesuai Urutan ..................... 56
TABEL 4.10. Tabel ADFGVX Cipher ..................................................................... 57
TABEL 4.11. Waktu Proses Enkripsi Algoritma ADFGVX Cipher ........................ 59
TABEL 4.12. Waktu Proses Dekripsi Algoritma ADFGVX cipher ........................ 60

Universitas Sumatera Utara

xi

DAFTAR GAMBAR

Hal.
GAMBAR 2.1. Skema Proses Enkripsi dan Dekripsi.............................................. 6
GAMBAR 2.2. Skema Algoritma Simetris (Hayanti, Disa 2013) .......................... 7
GAMBAR 2.3. Skema Algorima Asimetris ............................................................. 8
GAMBAR 3.1. Diagram Ishikawa Sistem ................................................................ 18
GAMBAR 3.2. Use Case Diagram ........................................................................... 21
GAMBAR 3.3. Activity Diagram Enkripsi ............................................................... 25
GAMBAR 3.4. Activity Diagram Dekripsi ............................................................... 26
GAMBAR 3.5. Sequence Diagram .......................................................................... 27
GAMBAR 3.6. Proses Enkripsi Sistem .................................................................... 28
GAMBAR 3.7. Proses Dekripsi Sistem .................................................................... 28
GAMBAR 3.8. Flowchart Enkripsi Algoritma ADFGVX Cipher ........................... 29
GAMBAR 3.9. Flowchart Dekripsi Algoritma ADFGVC Cipher ........................... 30
GAMBAR 3.10. Flowchart Enkripsi Algoritma Knapsack...................................... 31
GAMBAR 3.11. Flowchart Dekripsi Algoritma Knapsack ..................................... 32
GAMBAR 3.12. Flowchart Pembangkit Kunci Algoritma Knapsack ..................... 33
GAMBAR 3.13. Rancangan Halaman Utama ......................................................... 34
GAMBAR 3.14. Rancangan Halaman Enkripsi ....................................................... 34
GAMBAR 3.15. Rancangan Halaman Dekripsi ....................................................... 37
GAMBAR 3.16. Rancangan Halaman About ........................................................... 39
GAMBAR 3.17. Rancangan Halaman Help ............................................................. 40
GAMBAR 4.1. Tampilan Halaman Home ................................................................ 42
GAMBAR 4.2. Halaman Enkripsi ............................................................................ 42
GAMBAR 4.3. Halaman Dekripsi ............................................................................ 43
GAMBAR 4.4. Halaman About ................................................................................ 44
GAMBAR 4.5. Halaman Help .................................................................................. 44
GAMBAR 4.6. Buka File ......................................................................................... 45
GAMBAR 4.7. Proses Input Plainteks dan Kunci ................................................... 45
GAMBAR 4.8. Proses Enkripsi ................................................................................ 48

Universitas Sumatera Utara

xii

GAMBAR 4.9. Proses Pengacakan Kunci ................................................................ 50
GAMBAR 4.10. Proses Enkripsi Kunci ................................................................... 51
GAMBAR 4.11. proses pencarian Nilai n-1 .............................................................. 53
GAMBAR 4.12. Proses Dekripsi Cipherkey ............................................................ 55
GAMBAR 4.13. Proses Dekripsi Cipherteks ........................................................... 58
GAMBAR 4.14. Grafik Hubungan Ukuran Plainteks & cipherteks dengan Waktu . 62

Universitas Sumatera Utara

xiii

DAFTAR LAMPIRAN

Hal.
A. Listing Program ............................................................................................ A-1
B. Curriculum Vitae .......................................................................................... B-2

Universitas Sumatera Utara