Implementasi Algoritma Kriptografi Hill Cipher dan Kompresi Data Menggunakan Algoritma Levenstein Dalam Pengamanan File Teks

0

IMPLEMENTASI ALGORITMA KRIPTOGRAFI HILL CIPHER DAN
KOMPRESI DATA MENGGUNAKAN ALGORITMA LEVENSTEIN
DALAM PENGAMANAN FILE TEKS

SKRIPSI

WINDI SAPUTRI SIMAMORA
131401085

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

Universitas Sumatera Utara

1


IMPLEMENTASI ALGORITMA KRIPTOGRAFI HILL CIPHER DAN
KOMPRESI DATA MENGGUNAKAN ALGORITMA LEVENSTEIN
DALAM PENGAMANAN FILE TEKS
SKRIPSI

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

WINDI SAPUTRI SIMAMORA
131401085

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

Universitas Sumatera Utara

i


PERSETUJUAN
Judul

: IMPLEMENTASI ALGORITMA KRIPTOGRAFI
HILL

CIPHER

MENGGUNAKAN

DAN

KOMPRESI

ALGORITMA

DATA

LEVENSTEIN


DALAM PENGAMANAN FILE TEKS
Kategori

: SKRIPSI

Nama

: WINDI SAPUTRI SIMAMORA

Nomor Induk Mahasiswa

: 131401085

Program Studi

: SARJANA (S1) ILMU KOMPUTER

Fakultas


:

ILMU

KOMPUTER

DAN

TEKNOLOGI

INFORMASI UNIVERSITAS SUMATERA UTARA

Komisi Pembimbing:
Pembimbing 2

Pembimbing 1

Amer Sharif, S.Si, M.Kom

M. Andri Budiman, ST, M.Comp.Sc, MEM


NIP.-

NIP. 197510082008011011

Diketahui/disetujui oleh
Program Studi S1 Ilmu Komputer
Ketua,

Dr. Poltak Sihombing, M. Kom
NIP. 196203171991031001

Universitas Sumatera Utara

ii

PERNYATAAN

IMPLEMENTASI ALGORITMA KRIPTOGRAFI HILL CIPHER DAN KOMPRESI
DATA MENGGUNAKAN ALGORITMA LEVENSTEIN DALAM PENGAMANAN

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

Medan,

Windi Saputri Simamora
131401085

Universitas Sumatera Utara

iii

UCAPAN TERIMA KASIH

Puji dan syukur kehadirat Allah SWT yang telah memberikan rahmat dan hidayahNya, sehingga Penulis dapat menyelesaikan penyusunan skripsi ini, sebagai syarat
untuk memperoleh gelar Sarjana Komputer pada Program Studi S1 Ilmu Komputer
Universitas Sumatera Utara.
Penulis ingin menyampaikan rasa hormat dan terima kasih yang sebesar-besarnya

kepada:
1. Bapak Prof. Dr. Runtung Sitepu, S.H., M.Hum selaku Rektor Universitas
Sumatera Utara.
2. Bapak Prof. Opim Sitompul, M.Sc., selaku Dekan Fakultas Ilmu Komputer
dan Teknologi Informasi Universitas Sumatera Utara.
3. Bapak Dr. Poltak Sihombing, M.Kom selaku Ketua Program Studi S1 Ilmu
Komputer Universitas Sumatera Utara
4. Bapak Herriyance, S.T., M.Kom selaku Sekretaris Program Studi S1 Ilmu
Komputer Universitas Sumatera Utara.
5. Bapak M. Andri Budiman, S.T., M.Comp.Sc., M.E.M selaku Dosen
Pembimbing I yang telah memotivasi dan senantiasa memberikan bimbingan,
saran dan dukungan kepada penulis dalam pengerjaan skripsi ini.
6. Bapak Amer Sharif, S.Si, M.Kom selaku Dosen Pembimbing II yang telah
memberikan bimbingan, saran, masukan dan dukungan kepada penulis dalam
pengerjaan skripsi ini.
7. Ibu Dr. Maya Silvi Lydia, M.Sc selaku dosen Pembanding I yang memberikan
kritik dan saran untuk penyempurnaan skripsi ini.
8. Bapak Handrizal, S.Si, M.Comp.Sc selaku dosen Pembanding II yang
memberikan kritik dan saran untuk penyempurnaan skripsi ini.
9. Seluruh dosen dan pegawai Program Studi S1 Ilmu Komputer Fasilkom-TI

USU.
10. Ayahanda Oloan Simamora dan Ibunda Sri Nasmiati yang telah menjadi
sumber motivasi, pendukung, penyemangat, dan inspirasi terbesar bagi penulis
dalam menyelesaikan skripsi, serta kakak Lia Afriani Simamora dan adik Kiki
Pratama Simamora yang senatiasa memberikan dukungan dan doa untuk
penulis.

Universitas Sumatera Utara

iv

11. Sahabat-sahabat seperjuangan Nurhasanah, Lily Aulya, Cut Amalia Safiiera,
dan teman-teman angkatan 2013 yang juga senantiasa menjadi pengingat dan
motivasi penulis.
12. Abangda Farid Akbar, Muhammad Miftahul Huda, yang telah banyak
membantu dalam penyelesaian penelitian ini.
13. Keluarga UKMI Al-Khuwarizmi, IMILKOM yang telah memberikan inspirasi
serta dukungan kepada penulis.
14. Dan semua pihak yang telah membantu dan tidak dapat disebutkan satu per
satu.


Semoga semua kebaikan, bantuan, perhatian, serta dukungan yang telah diberikan
kepada penulis mendapatkan pahala yang melimpah dari Allah SWT.

Medan,

Mei 2017

Penulis

Universitas Sumatera Utara

v

ABSTRAK

Dalam penggunaan komputer, aspek keamanan, kerahasiaan dan efisiensi
penyimpanan data sangat diperlukan. Untuk menjaga keamanan dan kerahasiaan data
tersebut salah satu teknik yang digunakan adalah Hill Cipher. Algoritma Hill Cipher
termasuk Algoritma Kunci Simetri. Levenstein Code merupakan salah satu algoritma

kompresi yang menggunakan tabel Levenstein Code. Dalam penelitian ini, penulis
menggabungan antara Algoritma Hill Cipher untuk melakukan penyandian data dan
Algoritma Levenstein untuk kompresi data. File pertama kali dikompresi
menggunakan Algoritma Levenstein Code, kemudian hasil kompresi tersebut
dienkripsi dengan menggunakan Algoritma Hill Cipher. Implementasi sistem
menggunakan bahasa pemrograman C#. Hasil penelitian menunjukkan bahwa metode
Hill Cipher dapat mengubah data sehingga tidak dapat dibuka tanpa kunci dan dapat
mengembalikan menjadi data semula. Metode Levenstein menghasilkan Ratio of
Compression (RC), Compression Ratio (CR), dan Space Saving (SS) masing-masing
dengan nilai rata-rata 1.44, 60.83%, dan 27.51% dalam proses kompresi data.
Kata Kunci: Kriptografi, Kompresi, Simetri, Hill Cipher, Levenstein.

Universitas Sumatera Utara

vi

IMPLEMENTATION OF HILL CIPHER CRYPTOGRAPHY ALGORITHM AND
DATA COMPRESSION USING LEVENSTEIN ALGORITHM IN TEXT FILE
SECURITY


ABSTRACT

In computer usage, aspects of security, confidentiality and efficiency of data storage
are indispensable. To maintain the security and confidentiality of data one of the
techniques used is the Hill Cipher. Hill Cipher is one of the Symmetry Key Algorithms.
Levenstein Code is a compression algorithm that uses the Levenstein Code table. In
this study, the author combined Hill Cipher algorithm to perform data encryption and
Levenstein Code algorithm for data compression. The file was first compressed using
Levenstein Code, then the result of the compression is encrypted using Hill Cipher
algorithm. Implementation of the system used the C# programming language. The
results showed that Hill Cipher method could altered the data so it could not be
opened without a key and was able restore the original data. The Levenstein method
in data compression generated Ratio of Compression (RC), Compression Ratio (CR),
and Space Saving (SS) each with average values of 1.44, 60.83%, and 27.51%
respectively.
Keywords: Cryptography, Compression, Symmetric, Hill Cipher, Levenstein.

Universitas Sumatera Utara

vii

DAFTAR ISI

Halaman
Persetujuan ............................................................................................................ i
Pernyataan ............................................................................................................. ii
Ucapan Terima Kasih............................................................................................ iii
Abstrak .................................................................................................................. v
Abstract ................................................................................................................. vi
Daftar Isi ............................................................................................................... vii
Daftar Tabel .......................................................................................................... ix
Daftar Gambar....................................................................................................... x
Daftar Lampiran .................................................................................................... xii
Bab 1 Pendahuluan
1.1. Latar Belakang...................................................................................... 1
1.2. Rumusan Masalah ................................................................................ 3
1.3. Batasan Masalah ................................................................................... 3
1.4. Tujuan Penelitian .................................................................................. 3
1.5. Manfaat Penelitian ................................................................................ 3
1.6. Metode Penelitian ................................................................................. 3
1.7. Sistematika Penulisan ........................................................................... 4
Bab 2 Landasan Teori
2.1. Kompresi .............................................................................................. 6
2.1.1 Definisi Kompresi ....................................................................... 6
2.1.2. Penggolongan Algoritma Kompresi ........................................... 7
2.1.3. Pengukuram Kinerja Kompresi Data.......................................... 8
2.1.4. Konsep Kompresi Data .............................................................. 8
2.1.5. Algoritma Levenstein Code ........................................................ 9
2.2. Kriptografi ............................................................................................ 11
2.2.1. Definisi Kriptografi .................................................................... 11
2.2.2. Tujuan Kriptografi ...................................................................... 11
2.2.3. Sistemi Kriptografi ..................................................................... 12
2.2.4. Jenis Kriptografi ......................................................................... 12
2.2.5. Algoritma Hill Cipher ................................................................ 14
2.3. File Teks ............................................................................................... 21
2.4. Penelitian yang Relevan. ...................................................................... 24
Bab 3 Analisis dan Perancangan
3.1. Analisis Sistem ..................................................................................... 25
3.1.1. Analisis Masalah ........................................................................ 25
3.1.2. Analisis Kebutuhan .................................................................... 26
3.1.2.1. Kebutuhan Fungsional ................................................... 26
3.1.2.2. Kebutuhan Non Fungsional .......................................... 27
3.1.3. Analisis Proses .......................................................................... 27
3.2. Pemodelan Sistem ................................................................................ 28
3.2.1. Use-Case Diagram ..................................................................... 28
3.2.2. Activity Diagram ........................................................................ 30
3.2.2.1. Activity Diagram Proses Kompresi Levenstein ............. 30
3.2.2.2. Activity Diagram Proses Enkripsi Hill Cipher............... 31

Universitas Sumatera Utara

viii

3.2.2.3. Activity Diagram Proses Dekripsi Hill Cipher .............. 32
3.2.2.4. Activity Diagram Proses Dekompresi Levenstein ......... 32
3.2.2.5. Sequence Diagram ......................................................... 33
3.3. Arsitektur Umum Sistem ...................................................................... 33
3.3. Flowchart Sistem.................................................................................. 34
3.3.1. Flowchart Algoritma Levenstein ............................................... 36
3.3.2. Flowchart Algoritma Hill Cipher............................................... 36
3.4. Perancangan Antarmuka (Interface) ..................................................... 37
3.4.1. Rancangan Halaman Utama ....................................................... 37
3.4.2. Rancangan Halaman Pengirim ................................................... 39
3.3.3. Rancangan Halaman Penerima ................................................... 41
3.3.4. Rancangan Halaman Bantuan .................................................... 42
Bab 4 Implementasi Dan Pengujian Sistem
4.1. Implementasi Sistem ............................................................................ 44
4.1.1. Halaman Beranda ....................................................................... 44
4.1.2. Halaman Menu ........................................................................... 45
4.1.2.1 Submenu Pengirim .......................................................... 45
4.1.2.2 Submenu Penerima ......................................................... 46
4.1.3. Halaman Bantuan ....................................................................... 47
4.2. Pengujian Sistem .................................................................................. 48
4.2.1. Pengujian proses Kompresi dan Enkripsi ................................... 49
4.2.2. Pengujian proses Dekripsi dan Dekompresi ............................... 64
4.2.3. Pengujian dengan Perhitungan Manual ...................................... 76
4.3. Hasil Pengujian. .................................................................................... 81
Bab 5 Kesimpulan dan Saran
5.1. Kesimpulan ........................................................................................... 84
5.2. Saran ..................................................................................................... 85
Daftar Pustaka ....................................................................................................... 86

Universitas Sumatera Utara

ix

DAFTAR TABEL

Halaman
Tabel 2.1 Tabel Kode Levenstein .............................................................................. 10
Tabel 2.2 Transformasi Alphanumerik ...................................................................... 17
Tabel 2.3 Enkripsi Hill Cipher................................................................................... 17
Tabel 2.4 Adjoint dari Matriks K ............................................................................... 18
Tabel 2.5 Proses Pencarian Invers Determinan ......................................................... 20
Tabel 2.6 Dekripsi Hill Cipher .................................................................................. 21
Tabel 2.7 Kode ASCII ............................................................................................... 23
Tabel 3.1 Narrative Use-Case Kompresi Enkripsi .................................................... 29
Tabel 3.2 Narrative Use-Case Dekripsi Dekompresi ................................................ 29
Tabel 3.3 Keterangan Rancangan Halaman Utama ................................................... 38
Tabel 3.4 Keterangan Rancangan Halaman Pengirim ............................................... 39
Tabel 3.5 Keterangan Rancangan Halaman Penerima ............................................... 42
Tabel 3.6 Keterangan Rancangan Halaman Bantuan................................................. 43
Tabel 4.1 String yang Belum Dikompresi ................................................................. 77
Tabel 4.2 String yang Sudah Dikompresi dengan Levenstein Code .......................... 78
Tabel 4.3 Kode dari String Bit ................................................................................... 79
Tabel 4.4 Enkripsi Hill Cipher Contoh ...................................................................... 79
Tabel 4.5 Dekripsi Hill Chiper Contoh...................................................................... 80
Tabel 4.6 Kode dari String Bit ................................................................................... 80
Tabel 4.7 Hasil Dekompresi....................................................................................... 81
Tabel 4.8 Hasil Uji Coba ........................................................................................... 81
Tabel 4.9 Hasil Uji Coba Berdasarkan Waktu ........................................................... 82

Universitas Sumatera Utara

x

DAFTAR GAMBAR

Halaman
Gambar 2.1 Diagram Blok Proses Kompresi dan Dekompresi Data .................... 7
Gambar 2.2 Ilustrasi Kompresi Lossless ............................................................... 7
Gambar 2.3 Ilustrasi Kompresi Lossy ................................................................... 8
Gambar 2.4 Urutan proses kriptografi .................................................................. 11
Gambar 2.5 Skema Algoritma Simetris ................................................................ 13
Gambar 2.6 Skema Algoritma Asimetris .............................................................. 14
Gambar 2.7 Illustrasi Enkripsi Hill Cipher ........................................................... 17
Gambar 2.8 Illustrasi Dekripsi Hill Cipher........................................................... 18
Gambar 3.1 Diagram Ishikawa Masalah Penelitian. ............................................ 26
Gambar 3.2 Use-Case Diagram Pada Sistem ........................................................ 28
Gambar 3.3 Activity Diagram Proses Kompresi Levenstein ................................ 31
Gambar 3.4 Activity Diagram Proses Enkripsi Hill Cipher .................................. 31
Gambar 3.5 Activity Diagram Proses Dekripsi Hill Cipher ................................. 32
Gambar 3.6 Activity Diagram Proses Dekompresi Levenstein .......................... 32
Gambar 3.7 Sequence Diagram Sistem ................................................................ 33
Gambar 3.8 Arsitektur Umum Sistem .................................................................. 34
Gambar 3.9 Flowchart Sistem .............................................................................. 35
Gambar 3.10 Flowchart Kompresi Levenstein ..................................................... 36
Gambar 3.11 Flowchart Enkripsi Hill Cipher ...................................................... 36
Gambar 3.12 Flowchart Dekripsi Hill Cipher ...................................................... 37
Gambar 3.13 Rancangan Halaman Utama / Beranda ........................................... 38
Gambar 3.14 Rancangan Halaman Pengirim ........................................................ 39
Gambar 3.15 Rancangan Halaman Penerima ....................................................... 41
Gambar 3.16 Rancangan Halaman Bantuan ......................................................... 43
Gambar 4.1 Menu Home ....................................................................................... 45
Gambar 4.2 Submenu Pengirim ............................................................................ 46
Gambar 4.3 Submenu Penerima ........................................................................... 47
Gambar 4.4 Menu Bantuan ................................................................................... 48
Gambar 4.5 Open File Dialog input file teks ........................................................ 49
Gambar 4.6 Tampilan file terpilih ......................................................................... 50
Gambar 4.7 File TXT 1 ........................................................................................ 50
Gambar 4.8 Proses Kompresi File TXT 1 ............................................................ 51
Gambar 4..9 Proses Generate Kunci ..................................................................... 51
Gambar 4.10 Proses Penyimpanan Kunci ............................................................. 52
Gambar 4.11 Messagebox berhasil dienkripsi ...................................................... 52
Gambar 4.12 Proses Enkripsi File TXT 1............................................................. 53
Gambar 4.13 Save dialog Hasil............................................................................. 53
Gambar 4.14 Hasil Enkripsi file TXT 1 ................................................................ 54
Gambar 4.15 File TXT 2 ...................................................................................... 54
Gambar 4.16 Proses kompresi dan enkripsi File TXT 2 ....................................... 55
Gambar 4.17 Hasil Enkripsi File TXT 2............................................................... 56
Gambar 4.18 File DOC 1 ...................................................................................... 56
Gambar 4.19 Proses kompresi dan enkripsi File DOC 1 ...................................... 57
Gambar 4.20 Hasil Enkripsi File DOC 1 .............................................................. 58

Universitas Sumatera Utara

xi

Gambar 4.21 File DOC 2 ...................................................................................... 58
Gambar 4.22 Proses kompresi dan enkripsi File DOC 2 ...................................... 59
Gambar 4.23 Hasil Enkripsi File DOC 2 .............................................................. 60
Gambar 4.24 File RTF 1 ....................................................................................... 60
Gambar 4.25 Proses kompresi dan enkripsi File RTF 1 ....................................... 61
Gambar 4.26 Hasil Enkripsi File RTF 1 ............................................................... 62
Gambar 4.27 File RTF 2 ....................................................................................... 62
Gambar 4.28 Proses kompresi dan enkripsi File RTF 2 ....................................... 63
Gambar 4.29 Hasil Enkripsi File RTF 2 ............................................................... 64
Gambar 4.30 Proses Dekripsi Dekompresi File “Enkrip TXT 1” ........................ 65
Gambar 4.31 Messagebox simpan file “Enkrip TXT 1” ....................................... 65
Gambar 4.32 Hasil Proses Dekripsi Dekompresi File “Enkrip TXT 1” ............... 66
Gambar 4.33 Proses Dekripsi Dekompresi File “Enkrip TXT 2” ........................ 67
Gambar 4.34 Messagebox simpan file “Enkrip TXT 2” ....................................... 67
Gambar 4.35 Hasil Proses Dekripsi Dekompresi File “Enkrip TXT 2” ............... 68
Gambar 4.36 Proses Dekripsi Dekompresi File “Enkrip DOC 1”........................ 69
Gambar 4.37 Messagebox simpan file “Enkrip DOC 1” ...................................... 69
Gambar 4.38 Hasil Proses Dekripsi Dekompresi File “Enkrip DOC 1” .............. 70
Gambar 4.39 Proses Dekripsi Dekompresi File “Enkrip DOC 2”........................ 71
Gambar 4.40 Messagebox simpan file “Enkrip DOC 2” ...................................... 71
Gambar 4.41 Hasil Proses Dekripsi Dekompresi File “Enkrip DOC 2” .............. 72
Gambar 4.42 Proses Dekripsi Dekompresi File “Enkrip RTF 1” ......................... 73
Gambar 4.43 Messagebox simpan file “Enkrip RTF 1”........................................ 73
Gambar 4.44 Hasil Proses Dekripsi Dekompresi File “Enkrip RTF 1” ............... 74
Gambar 4.45 Proses Dekripsi Dekompresi File “Enkrip RTF 2” ......................... 75
Gambar 4.46 Messagebox simpan file “Enkrip RTF 2” ....................................... 75
Gambar 4.47 Hasil Proses Dekripsi Dekompresi File “Enkrip RTF 2” ............... 76
Gambar 4.48 File Halo ......................................................................................... 76
Gambar 4.49 Proses Kompresi File Halo ............................................................. 77
Gambar 4.50 Kunci Hill Cipher............................................................................ 79
Gambar 4.51 Grafik perbandingan hasil pengujian antara ukuran file asli, hasil
kompresi/dekripsi, hasil enkripsi, dan hasil dekompresi ................. 82
Gambar 4.52 Grafik perbandingan hasil pengujian waktu pada proses kompresi,
enkripsi, dekripsi, dan dekompresi .................................................. 83

Universitas Sumatera Utara

xii

DAFTAR LAMPIRAN

Halaman
Lampiran 1 Listing Program A-1 .......................................................................... A-1
Lampiran 2 Curriculum Vitae B-1 ........................................................................ B-1

Universitas Sumatera Utara