Implementasi Pengamanan File Text Dengan Algoritma Kriptografi Kanpsak dan Algoritma Steganografi FOF First of File)
IMPLEMENTASI PENGAMANAN FILE TEXT DENGAN ALGORITMA KRIPTOGRAFI KNAPSACK DAN ALGORITMA STEGANOGRAFI
FOF (First of File)
SKRIPSI DISA HAYANTI 091401066 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2013
IMPLEMENTASI PENGAMANAN FILE TEXT DENGAN
ALGORITMA KRIPTOGRAFI KNAPSACK
DAN ALGORITMA STEGANOGRAFI
FOF (First of File)
SKRIPSI Diajukan untuk melengkapi tugas akhir dan memenuhi syarat mencapai gelar Sarjana
Komputer DISA HAYANTI
091401066 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN
2013
PERSETUJUAN
Judul IMPLEMENTASI PENGAMANAN FILE TEXT DENGAN ALGORITMA KRIPTOGRAFI KNAPSACK DAN ALGORITMA STEGANOGRAFI FOF (First of
File)
Kategori SKRIPSI Nama DISA HAYANTI Nomor Induk Mahasiswa 091401066 Program Studi SARJANA (S1) ILMU KOMPUTER Fakultas
ILMU KOMPUTER DAN TEKNOLOGI INFORMASI Diluluskan di Medan, 2013
Komisi Pembimbing Pembimbing
II, Pembimbing I, Herriyance, ST, M.Kom Dr. Poltak Sihombing, M.Kom NIP. 19801024 201012 1 002 NIP. 19620317 199103 1 001 Diketahui/Disetujui oleh Program Studi S1 Ilmu Komputer Ketua, Dr. Poltak Sihombing, M.Kom NIP. 19620317 199103 1 001
PERNYATAAN
IMPLEMENTASI PENGAMANAN FILE TEXT DENGAN ALGORITMA
KRIPTOGRAFI KNAPSACK DAN ALGORITMA STEGANOGRAFI
FOF (First of File)
SKRIPSI Saya menyatakan bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, 2013 Disa Hayanti 091401066
PENGHARGAAN
Puji dan syukur penulis ucapkan kepada Tuhan yang Maha Kuasa atas segala berkat dan kasih karuniaNya sehingga penulis dapat menyelesaikan penyusunan skripsi ini, sebagai syarat untuk memperoleh gelar Sarjana Komputer, pada Program Studi S1 Ilmu Komputer Fasilkom-TI Universitas Sumatera Utara.
Ucapan terima kasih penulis sampaikan kepada :
1. Bapak Prof. Dr. dr. Syahril Pasaribu, DTM&H, M.Sc(CTM). Ap.A(K) selaku Rektor Universitas Sumatera Utara.
2. Bapak Prof. Dr. Muhammad Zarlis, M.Kom, selaku Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.
3. Bapak Dr. Poltak Sihombing, M.Kom, selaku Ketua Departemen Ilmu Komputer Universitas Sumatera Utara.
4. Ibu Maya Silvi Lydia, B.Sc, M.Sc, selaku Sekretaris Departemen Ilmu Komputer Universitas Sumatera Utara.
5. Pembantu Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara, semua dosen dan pegawai pada program studi S1 Ilmu Komputer Fasilkom-TI USU.
6. Bapak Dr. Poltak Sihombing, M.Kom dan Bapak Herriyance, ST, M.Kom, selaku Dosen Pembimbing.
7. Bapak Syahril Efendi, S.Si, MIT dan Bapak Amer Sharif, S.Si, M.Kom, selaku Dosen Penguji.
8. Bapak Ade Candra, ST. M.Kom, selaku dosen pembimbing akademik saya.
9. Ayahanda M.Siregar dan Ibunda N.Pasaribu yang telah membesarkan, mendidik saya dan juga kepada saudara-saudara saya, Susi H.S., Ria J.H.S., Leonardo.S yang selalu mendoakan, menyayangi, mendukung baik material dan spiritual.
10. Dan juga kepada teman-teman satu stambuk 2009 kom B dan kom A yang namanya tidak bisa disebutkan satu per satu.
Penulis menyadari bahwa skripsi ini jauh dari sempurna baik dari segi materi maupun cara penyajiannya. Oleh karena itu, penulis menerima kritik dan saran yang bersifat membangun untuk menyempurnakan skripsi ini. Penulis berharap, agar skripsi ini dapat bermanfaat bagi penulis dan pembaca.
Medan, 2013 Penulis
ABSTRAK
Perkembangan teknologi yang semakin maju mengakibatkan keamanan data menjadi sangat penting karena teknik-teknik kejahatan terhadap data seperti dalam hal pengiriman dan penerimaan data juga semakin berkembang sehingga pengamanan terhadap data juga perlu harus ditingkatkan. Masalah yang diangkat pada penelitian adalah pengamanan file
text dengan menggunakan dua metode, yaitu kriptografi Merkle Hellman Knapsack
dengan penambahan permutasi dan steganografi FOF (First of File). Kriptografi Merkle
Hellman Knapsack mengenkripsi plaintext dengan menggunakan kunci publik, sedangkan
untuk dekripsi ciphertext digunakan kunci privat dan posisi kunci hasil permutasi.Keamanan terhadap data ditingkatkan dengan cara menyembunyikan data pada citra secara FOF. Dari hasil penelitian, pada kriptografi proses dekripsi membutuhkan waktu lebih lama dari pada proses enkripsi dan perbedaan ukuran kedua proses, yaitu ciphertext jauh lebih besar beberapa kali lipat dari plaintext. Selain itu, banyak elemen kunci juga mempengaruhi ukuran ciphertext. Pada algoritma FOF mengakibatkan tinggi pixel citra semakin bertambah dan garis pada bagian atas citra terlihat semakin jelas sesuai dengan pertambahan ukuran ciphertext yang disisipi. Ukuran citra sebagai coverimage juga mempengaruhi besar garis pada bagian atas citra.
Katakunci : Kriptografi, steganografi, Merkle Hellman Knapsack, FOF (First of File)
IMPLEMENTATION OF SECURITY TEXT FILE WITH CRYPTOGRAPHY
KNAPSACK ALGORITHM AND STEGANOGRAFI FOF (First of File)
ALGORITHM
ABSTRACT
The development of increasingly advanced technology make security data becomes very important because techniques crimes againts data such as sending and receiving data is also growing so that the security of the data also needs to be improved. The issues raised in this research is security of text file using two methods, that is Merkle Hellman Knapsack cryptography with the addition of permutations and FOF (First of File) steganography. Merkle Hellman Knapsack cryptography encrypt the plaintext using public key, whereas for decryption ciphertext using private key and position key after permutation. Security of data enhanced by hiding data to image by FOF. From the research, process of decryption takes longer than the encryption process and differences in the size of both processes, that is ciphertext is much greater multiple of the plaintext. Moreover, amount of key elements also affect the size of the ciphertext. FOF algorithm resulted in increasingly high pixel image and line at the top of the image is evident in accordance with the increase in size ciphertext which is inserted. Image size as coverimage also affect the large line at the top of the image.
Keyword : Cryptography, steganography, Merkle Hellman Knapsack, FOF (First of File)
DAFTAR ISI
Pernyataan iii Penghargaan iv Abstrak v Abstract vi Daftar Isi vii
13
10
2.3 Landasan Matematika Kriptografi
11
2.3.1 Aritmetika Modulo
11
2.3.2 Teorema Euclidean 12
2.3.3 Relatif Prima
12
2.3.4 Permutasi (Transposisi)
12
2.4 Algoritma Kriptografi Knapsack
2.4.1 Knapsack Problem 13
9
2.4.2 Algoritma Knapsack Sederhana
13
2.4.3 Superincreasing Knapsack Problem
14
2.4.4 The Merkle Hellman Knapsack Cryptosystem
16
2.5 Steganografi
20
2.5.1 Defenisi Steganografi
20
2.5.2 Konsep dan Terminologi
21
2.2.2 Algoritma Asimetris (Kunci Publik)
2.2.1 Algoritma Simetris (Konvensional)
Daftar Tabel x
3
Daftar Gambar xi
Daftar Lampiran xiii
Bab I Pendahuluan
1.1 Latar Belakang
1
1.2 Rumusan Masalah
2
1.3 Batasan Masalah
3
1.4 Tujuan Penelitian
1.5 Manfaat Penelitian
Halaman Persetujuan ii
4
1.6 Sistematika Penulisan
4 Bab II Landasan Teori
2.1 Kriptografi
6
2.1.1 Definisi Kriptografi
6
2.1.2 Terminologi
6
2.1.3 Tujuan Kriptografi
8
2.2 Kriptografi Simetri dan Asimetri
9
2.5.3 Kriteria Steganografi
22
2.5.4 Metode First Of File (FOF)
23
2.5.5 Citra
24
2.5.6 Format File Citra Bitmap
25 Bab III Analisis dan Perancangan Sistem
3.1 Analisis Sistem
26
3.1.1 Analisis Masalah
26
3.1.2 Analisis Persyaratan
27
3.1.2.1 Persyaratan Fungsional
28
3.1.2.2 Persyaratan Nonfungsional
28
3.1.3 Perancangan Flowchart
29
3.1.3.1 Flowchart Aplikasi 29
3.1.3.2 Flowchart Key Generation 30
3.1.3.3 Flowchart Encryption
32
3.1.3.4 Flowchart Decryption
32
3.1.3.5 Flowchart Embedded
34
3.1.3.6 Flowchart Extraction
34
3.1.4 Pemodelan Sistem
36
3.1.4.1 Use Case Diagram 36
3.1.4.1.1 Use Case Key Generation
37
3.1.4.1.2 Use Case Encryption
39
3.1.4.1.3 Use Case Embedded
40
3.1.4.1.4 Use Case Extraction
42
3.1.4.1.5 Use Case Decryption
43
3.1.4.2 Activity Diagram (Diagram Aktivitas)
44
3.1.4.3 Sequence Diagram
47
3.2 Rancangan Interface Aplikasi
49
3.2.1 Rancangan Interface Form Home
49
3.2.2 Rancangan Interface Form Help
50
3.2.3 Rancangan Interface Form Key Generation
51
3.2.4 Rancangan Interface Form Encryption
53
3.2.5 Rancangan Interface Form Embedded
54
3.2.6 Rancangan Interface Form Extraction
56
3.2.7 Rancangan Interface Form Decryption
57 Bab IV Implementasi dan Pengujian
4.1 Implementasi
59
4.1.1 Form Home
59
4.1.2 Form Pembangkit Kunci (Key Generation)
60
4.1.3 Form Enkripsi (Encryption)
62
4.1.4 Form Penyisipan (Embedded)
63
4.1.5 Form Ekstraksi (Extraction)
64
4.1.6 Form Dekripsi (Decryption)
64
4.1.8 Form Help
65
80
91 Daftar Pustaka
5.2 Saran
89
5.1 Kesimpulan
82 Bab V Kesimpulan dan Saran
4.2.6.3 Analisis Ukuran File Citra Terhadap Ukuran File Text (Ciphertext)
4.2.6.2 Analisis Waktu Proses Terhadap Besar Ukuran File 81
80
4.2.6.1 Analisis Ukuran File Terhadap Proses Enkripsi / Dekripsi
4.2.6 Hasil Pengujian
4.2 Pengujian 66
77
4.2.5 Proses Decryption
75
4.2.4 Proses Extraction
72
4.2.3 Proses Penyisipan (Embedded)
70
4.2.2 Proses Enkripsi (Encryption)
67
4.2.1 Proses Pembangkitan Kunci
92 Listing Program A-1
DAFTAR TABEL
NomorCoverimage Bervariasi
85
83
81
80
43
42
40
39
37
15
4.5 Contoh Solusi Superincreasing Knapsack Dokumentasi Naratif Use Case Key Generation Dokumentasi Naratif Use Case Encryption Dokumentasi Naratif Use Case Embedded Dokumentasi Naratif Use Case Extraction Dokumentasi Naratif Use Case Decryption Perbandingan Besar Ukuran File Plaintext dan Ciphertext Perbandingan waktu proses enkripsi dan dekripsi Hasil Pengujian Proses Embedded dan Extraction Data Hasil Pengujian Pada Table 4.3 Data Hasil Pengujian dengan File Ciphertext yang Sama dan
Tabel Nama Tabel Halaman
4.4
4.3
4.2
4.1
3.5
3.4
3.3
3.2
3.1
2.1
87
DAFTAR GAMBAR
Nomor30
45
45
37
35
34
33
32
31
27
46
24
23
22
21
11
10
7
Proses Pembangkitan Kunci Pesan Dialog Peringatan Start value Pesan Dialog Peringatan Key q Pesan Dialog Peringatan Key q Pesan Dialog Peringatan Key r Pesan Dialog Error GCD
46
47
Rancangan Interface Form Key Generation Rancangan Interface Form Encryption Rancangan Interface Form Embedded Rancangan Interface Form Extraction Rancangan Interface Form Decryption
63
69
68
68
68
67
66
65
64
62
48
61
60
57
56
54
53
51
50
49
Form Home Form Key Generation Form Encryption Form Embedded Form Extraction Form Decryption Form Help
Interface Form Help
Gambar Nama Gambar Halaman
3.4
3.12
3.11
3.10
3.9
3.8
3.7
3.6
3.5
3.3
3.14
3.2
3.1
2.7
2.6
2.5
2.4
2.3
2.2
2.1
3.13
3.15
Rancangan Interface Form Home
4.6
Ishikawa Diagram untuk Analisis Permasalahan Sistem Flowchart Pengamanan Data Secara Umum Flowchart Key Generation Flowchart Encryption Flowchart Decryption Flowchart Embedded Flowchart Extraction Use Case Diagram Sistem Activity Diagram Key Generation Activity Diagram Encryption Activity Diagram Embedded Activity Diagram Extraction Activity Diagram Decryption Sequence Diagram Sistem
4.13 Skema Enkripsi dan Dekripsi Skema Kriptografi Simetris Skema Kriptografi Asimetris Proses Embedding Konsep Dasar Steganografi Citra RGB ukuran 200 x 291 Citra RGB ukuran 200 x 292
4.12
4.11
4.10
4.9
4.8
4.7
4.5
3.16
4.4
4.3
4.2
4.1
3.21
3.20
3.19
3.18
3.17
69
73
Opendialog Untuk Memilih Kunci Privat Opendialog Untuk memilih Position Key
Opendialog Untuk memilih Ciphertext Pesan Dialog Error Dekripsi Proses Dekripsi (Decryption)
70
71
71
72
73
74
Savedialog Untuk Menyimpan Stegoimage Opendialog Untuk Memilih Stegoimage
75
75
76
76
77
78
78
79
Pesan Dialog Error Ekstraksi Proses Ekstraksi (Extraction)
Proses Penyisipan (Embedded)
4.14
4.22
4.15
4.16
4.17
4.18
4.19
4.20
4.21
4.23
Opendialog Untuk Memilih Coverimage Opendialog Untuk Memilih Ciphertext
4.24
4.25
4.26
4.27
4.28
4.29 Opendialog Untuk Memilih Kunci Publik
Opendialog Untuk Memilih Plaintext
Proses Enkripsi (Encryption) Proses Penyimpanan Data Hasil Enkripsi
79
DAFTAR LAMPIRAN
Halaman
A. Listing Program A-1
B. Curriculum Vitae (CV) B-1