Implementasi Algoritma Affine Cipher, RSA-CRT dan Alternate Unary Code Dalam Pengamanan dan Kompresi Teks

IMPLEMENTASI ALGORITMA AFFINE CIPHER, RSA-CRT DAN
ALTERNATE UNARY CODE DALAM PENGAMANAN DAN
KOMPRESI TEKS

SKRIPSI

BAYATI
141421043

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

Universitas Sumatera Utara

IMPLEMENTASI ALGORITMA AFFINE CIPHER, RSA-CRT DAN
ALTERNATE UNARY CODE DALAM PENGAMANAN DAN
KOMPRESI TEKS
SKRIPSI

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

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

Universitas Sumatera Utara

ii

PERSETUJUAN

Judul

: IMPLEMENTASI ALGORITMA AFFINE CIPHER,

RSA-CRT DAN ALTERNATE UNARY CODE
DALAM PENGAMANAN DAN KOMPRESI TEKS

Kategori

: SKRIPSI

Nama

: BAYATI

Nomor Induk Mahasiswa

: 141421043

Program Studi

: EKSTENSI S1 ILMU KOMPUTER

Departemen


: ILMU KOMPUTER

Fakultas

: ILMU KOMPUTER DAN TEKNOLOGI
INFORMASI UNIVERSITAS SUMATERA UTARA

Komisi Pembimbing

:

Pembimbing 2

Pembimbing 1

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

Dr. Poltak Sihombing, M.Kom


NIP. 19751008 200801 1 011

NIP. 196203171991031001

Diketahui/disetujui oleh
Program Studi S1 Ilmu Komputer
Ketua,

Dr. Poltak Sihombing, M.Kom.
NIP. 196203171991031001

Universitas Sumatera Utara

iii

PERNYATAAN

IMPLEMENTASI ALGORITMA AFFINE CIPHER, RSA-CRT DAN
ALTERNATE UNARY CODE DALAM PENGAMANAN DAN
KOMPRESI TEKS


SKRIPSI

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

Medan, Juni 2017

Bayati
141421043

Universitas Sumatera Utara

iv

PENGHARGAAN

Puji syukur penulis panjatkan kepada Allah Subhanahu wa Ta’ala, karena atas rahmat
dan hidayah-Nya sehingga penulis dapat menyelesaikan penyusunan skripsi dengan
judul “IMPLEMENTASI ALGORITMA AFFINE CIPHER, RSA-CRT DAN

ALTERNATE UNARY CODE DALAM PENGAMANAN DAN KOMPRESI
TEKS”.
Penulisan skripsi ini disusun untuk memenuhi syarat kelulusan untuk
memperoleh gelar Sarjana Ilmu Komputer pada program studi S1 Ilmu Komputer,
Universitas Sumatera Utara.
Dalam pelaksanaan dan penyusunan skripsi ini penulis telah memperoleh
banyak dukungan dan bantuan dari berbagai pihak, baik secara moril maupun materil.
Oleh karena itu dalam kesempatan ini penulis ingin menyampaikan ucapan terima
kasih kepada :
1. Bapak Prof. Dr. Runtung Sitepu, SH, M.Hum. selaku Rektor Universitas
Sumatera Utara.
2. Bapak Prof. Dr. Opim Salim Sitompul 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 dan dosen Pembimbing I yang telah
memberikan bimbingan, saran, dan masukan kepada penulis dalam pengerjaan
skripsi ini.
4. Bapak Herriyance, ST., M.Kom. selaku Sekretaris Program Studi S1 Ilmu
Komputer Universitas Sumatera Utara
5.


Bapak M. Andri Budiman, ST, M.Comp.,Sc.,MEM selaku dosen Pembimbing
II yang telah memberikan bimbingan, saran, masukan dan motivasi kepada
penulis dalam pengerjaan skripsi ini.

6.

Ibu Dian Rachmawati, S.Si.,M.Kom, selaku dosen Pembanding I dan
koordinator Ekstensi Program Studi Ilmu Komputer Universitas Sumatera

Universitas Sumatera Utara

v

Utara yang telah memberikan saran, dan masukan kepada penulis dalam
penyempurnaan skripsi ini.
7.

Ibu Siti Dara Fadilla, S.Si.,MT. selaku dosen Pembanding II yang telah
memberikan saran, dan masukan kepada penulis dalam penyempurnaan skripsi

ini.

8.

Keluarga penulis, ayahanda Jamaluddin dan ibunda Yatinem, serta adik-adik
penulis, Husaini dan Sandi, yang selalu memberikan doa dan dukungannya
kepada penulis.

9.

Teman-teman seperjuangan skripsi yang saling berbagi ilmu pengetahuan,
pemikiran, motivasi, dan dukungan kepada penulis yaitu Irin, Haru, Syuhada,
Ulfa, Una, Fira, Ira, Wiwit dan teman-teman lainnya yang sudah meluangkan
waktu untuk berdiskusi pembuatan skripsi dan pembuatan program.

10. Teman-teman kuliah Ekstensi Ilmu Komputer 2014, khususnya Kom A, yang
telah berbagi suka duka dan kebersamaan bersama penulis.
Penulis menyadari bahwa penulisan skripsi ini masih jauh dari sempurna dan
banyak terdapat kesalahan dan kekurangan yang masih perlu diperbaiki dan ditinjau
ulang. Penulis berharap semoga skripsi ini dapat bermanfaat bagi semua pihak yang

membacanya dan dapat menjadi acuan dalam pembuatan skripsi selanjutnya.

Medan,

Juni 2017

Penulis,

Bayati

Universitas Sumatera Utara

vi

ABSTRAK

Penelitian ini bertujuan untuk membuat aplikasi yang dapat mengamankan serta
mengkompresi isi file teks doc ataupun txt sehingga file tersebut akan tetap aman serta
tidak memakan ruang penyimpanan yang terlalu besar. Penelitian ini menerapkan
metode kriptografi hibrida sebagai pengamanan file teks dengan menggunakan

algoritma Affine Cipher untuk enkripsi dan dekripsi isi file teks dan algoritma RSACRT untuk enkripsi dan dekripsi kunci Affine Cipher. Dan untuk metode kompresinya
menggunakan algoritma Alternate Unary Code. Hasil enkripsi isi file teks (cipherteks)
berupa karakter-karakter yang tidak dimengerti dan disimpan dalam file yang
berformat aff. Hasil enkripsi kunci Affine Cipher (cipherkey) disimpan dalam file yang
berformat ckey. Hasil kompresi cipherteks berupa string bit yang telah diubah menjadi
array byte dan disimpan dalam file yang berformat auc. Panjang karakter plainteks
tidak berubah setelah dienkripsi. Jumlah character set dapat berpengaruh pada nilai
Cr dan Ss. Nilai Ss akan negatif jika hasil kompresi lebih besar dari ukuran teks asli.
Kata Kunci

: Kriptografi, Kriptografi Hibrida, Affine Cipher, RSA-CRT, Kompresi,
Alternate Unary Code

Universitas Sumatera Utara

vii

THE IMPLEMENTATION OF AFFINE CIPHER, RSA-CRT AND
ALTERNATE UNARY CODE ALGORITHM IN SECURING AND
COMPRESSING TEXT


ABSTRACT

This study aims to created applications that can secure and compress the contents of
doc or txt files, so the file will secure and does not consuming the storage space too
much. This research applies hybrid cryptography method as security of text file by
using Affine Cipher algorithm for encryption and decryption of text file contents and
RSA-CRT algorithm for encryption and decryption of Affine Cipher key. For the
compression method using Alternate Unary Code algorithm. Encrypting using file text
(ciphertext) is form of characters that are not understood and stored in the file aff
format. The encryption key of Affine Cipher (cipherkey) is saved in a ckey formatted
file. The result of ciphertext compression is a bit string that has been converted to byte
array and stored in auc file. The plaintext character length does not change after it is
encrypted. The number of character sets can affect the values of Cr and Ss. The Ss
value will be negative if the compression result is larger than the original text size.
Keyword

: Cryptography, Hybrid Cryptography, Affine Cipher, RSA-CRT,
Compression, Alternate Unary Code

Universitas Sumatera Utara

viii

DAFTAR ISI

Persetujuan
Pernyataan
Penghargaan
Abstrak
Abstract
Daftar Isi
Daftar Tabel
Daftar Gambar
Daftar Lampiran
Bab 1 Pendahuluan
1.1. Latar Belakang
1.2. Rumusan Masalah
1.3. Batasan Masalah
1.4. Tujuan Penelitian
1.5. Manfaat Penelitian
1.6. Metodologi Penelitian
1.7. Sistematika Penulisan
Bab 2 Landasan Teori
2.1. Algoritma
2.2. Kriptografi
2.3. Jenis Algoritma Kriptografi
2.4. Kriptografi Hibrida
2.5. Dasar Matematika Kriptografi
2.5.1. Bilangan Prima
2.5.2. Fermat’s Litlle Theorem
2.5.3. Great Common Divisor (GCD)
2.5.4. Euclidean Algorithm
2.5.5. Euler Phi Function
2.5.6. Aritmatika Modulo
2.5.7. Multipicative Inverse
2.5.8. Chinese Remainder Theorem
2.6. Algoritma Affine Cipher
2.7. Algoritma RSA-CRT
2.8. Kompresi
2.8.1. Teknik Kompresi Data
2.8.2. Performa Kompresi
2.9. Algoritma Alternate Unary Code

ii
iii
iv
vi
vii
viii
xi
xii
xiv

1
2
2
3
3
3
4

5
6
6
7
8
8
8
9
9
10
11
11
11
13
14
18
18
19
20

Universitas Sumatera Utara

ix

2.10. Penelitian Terdahulu

20

Bab 3 Analisis dan Perancangan Sistem
3.1. Analisis Sistem
3.1.1. Analisis Masalah
3.1.2. Analisis Kebutuhan Sistem
3.1.3. Analisis Proses
3.2. Pemodelan Sistem
3.2.1. Use Case Diagram
3.2.2. Activity Diagram
3.2.3. Sequence Diagram
3.3. Flowchart
3.3.1. Flowchart Sistem
3.3.2. Flowchart Algoritma Affine Cipher
3.3.3. Flowchart Pembangkit Kunci Algoritma RSA-CRT
3.3.4. Flowchart Algoritma RSA-CRT
3.3.5. Flowchart Algoritma Alternate Unary Code
3.4. Perancangan Antarmuka Sistem (Interface)
3.4.1. Perancangan Form Halaman Utama
3.4.2. Perancangan Form Bangkit Kunci RSA-CRT
3.4.3. Perancangan Form Enkripsi – Kompresi
3.4.4. Perancangan Form Dekompresi – Dekripsi
3.4.5. Perancangan Form Bantuan
3.4.6. Perancangan Form Tentang

22
22
23
25
37
37
38
41
42
42
44
45
46
47
47
48
49
50
51
52
53

Bab 4 Implementasi dan Pengujian Sistem
4.1. Implementasi Sistem
4.1.1. Form Menu Utama
4.1.2. Form Bangkit Kunci
4.1.3. Form Enkripsi – Kompresi
4.1.4. Form Dekompresi – Dekripsi
4.1.5. Form Bantuan
4.1.6. Form Tentang
4.2. Pengujian Sistem
4.2.1. Pengujian Bangkit Kunci
4.2.2. Pengujian Enkripsi Isi File Teks
4.2.3. Pengujian Enkripsi Kunci
4.2.4. Pengujian Kompresi Cipherteks
4.2.5. Pengujian Dekompresi Cipherteks
4.2.6. Pengujian Dekripsi Kunci
4.2.7. Pengujian Dekripsi Cipherteks
4.2.8. Pengujian Waktu Proses Enkripsi-Dekripsi
4.2.9. Pengujian Waktu Proses Kompresi-Dekompresi

55
55
56
57
58
59
59
60
60
61
63
65
66
67
69
70
72

Universitas Sumatera Utara

x

Bab 5 Kesimpulan dan Saran
5.1. Kesimpulan
5.2. Saran

77
78

Daftar Pustaka

79

Universitas Sumatera Utara

xi

DAFTAR TABEL

Nomor
Tabel
2.1.
3.1.
3.2.
4.1.
4.2.
4.3.

Nama Tabel
Pembagian Unary Code
Perhitungan ASCII Code
Perhitungan AUC Code
Pengujian Enkripsi – Dekripsi Teks
Pengujian Enkripsi – Dekripsi Kunci
Pengujian Kompresi – Dekompresi

Halaman
20
31
31
70
71
73

Universitas Sumatera Utara

xii

DAFTAR GAMBAR

Nomor
Gambar
2.1.
2.2.
2.3.
2.4.
2.5.
3.1.
3.2.
3.3.
3.4.
3.5.
3.6.
3.7.
3.8.
3.9.
3.10.
3.11.
3.12.
3.13.
3.14.
3.15.
3.16.
3.17.
3.18.
3.19.
4.1.
4.2.
4.3.
4.4.
4.5.
4.6.
4.7.
4.8.
4.9.
4.10.
4.11.
4.12.

Nama Gambar

Halaman

Proses Enkripsi Konvensional
Proses Enkripsi Kunci Publik
Skema Kriptografi Hibrida
Kriptografi Hibrida Affine Cipher dan RSA-CRT
Proses Algoritma Euclid
Diagram Ishikawa
Use Case Diagram pada Sistem
Activity Diagram pada Proses Pembangkitan Kunci
Activity Diagram pada Proses Enkripsi – Kompresi
Activity Diagram pada Proses Dekompresi – Dekripsi
Sequence Diagram pada Proses Enkripsi – Kompresi
Sequence Diagram pada Proses Dekompresi – Dekripsi
Flowchart Sistem
Ilustrasi Sistem
Flowchart Algoritma Affine Cipher
Flowchart Pembangkit Kunci Algoritma RSA-CRT
Flowchart Algoritma RSA-CRT
Flowchart Algoritma Alternate Unary Code
Rancangan Form Menu Utama
Rancangan Form Bangkit Kunci
Rancangan Form Enkripsi – Kompresi
Rancangan Form Dekompresi – Dekripsi
Rancangan Form Bantuan
Rancangan Form Tentang
Form Menu Utama
Form Bangkit Kunci
Form Enkripsi – Kompresi
Form Dekompresi – Dekripsi
Form Bantuan
Form Tentang
Pengujian Bangkit Kunci
Pengujian Simpan Kunci
MessageBox Kunci Berhasi Disimpan
File Teks
Input File Teks
Hasil File Input

6
7
8
8
10
23
38
38
39
40
41
41
42
43
44
45
46
47
48
49
50
51
53
54
56
56
57
58
59
60
60
61
61
61
62
62

Universitas Sumatera Utara

xiii

4.13.
4.14.
4.15.
4.16.
4.17.
4.18.
4.19.
4.20.
4.21.
4.22.
4.23.
4.24.
4.25.
4.26.
4.27.
4.28.
4.29
4.30.
4.31.

Enkripsi Teks File
MessageBox Simpan File
Buka Kunci Publik
Enkripsi Kunci Teks
Save Dialog Cipherkey
Save Dialog Hasil Kompresi
Parameter Kompresi
Isi File Hasil Kompresi
Input File Terkompresi
Hasil Dekompresi File
Dialog Open Cipherkey
Dialog Open Private Key
Hasil Dekripsi Kunci
Hasil Dekripsi Cipherteks
Grafik Perbandingan Waktu Proses Enkripsi – Dekripsi
Teks
Grafik Perbandingan Waktu Proses Enkripsi – Dekripsi
Kunci
Grafik Perbandingan Cr Hasil Kompresi Karakter
Homogen dan Heterogen
Grafik Perbandingan Ss Hasil Kompresi Karakter
Homogen dan Heterogen
Grafik Perbandingan Waktu Kompresi dan Dekompresi

63
63
64
64
65
65
66
66
67
67
68
68
69
69
71
72
75
75
76

Universitas Sumatera Utara

xiv

DAFTAR LAMPIRAN

Lampiran 1
Lampiran 2

Listing Program
Daftar Riwayat Hidup

Halaman
A-1
B-1

Universitas Sumatera Utara