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
Universitas Sumatera Utara
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
Universitas Sumatera Utara
Universitas Sumatera Utara
ii
PERSETUJUAN
Judul
Kategori Nama Nomor Induk Mahasiswa Program Studi Fakultas
IMPLEMENTASI PENGAMANAN FILE TEXT DENGAN ALGORITMA KRIPTOGRAFI KNAPSACK DAN ALGORITMA STEGANOGRAFI FOF (First of File) SKRIPSI DISA HAYANTI 091401066 SARJANA (S1) ILMU KOMPUTER ILMU KOMPUTER DAN TEKNOLOGI INFORMASI Diluluskan di Medan,
2013
Komisi Pembimbing Pembimbing II,
Pembimbing I,
Herriyance, ST, M.Kom NIP. 19801024 201012 1 002
Dr. Poltak Sihombing, M.Kom NIP. 19620317 199103 1 001
Diketahui/Disetujui oleh Program Studi S1 Ilmu Komputer Ketua,
Dr. Poltak Sihombing, M.Kom NIP. 19620317 199103 1 001
Universitas Sumatera Utara
iii
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
Universitas Sumatera Utara
iv
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. 2. 3. 4. 5. 6. 7. 8. 9.
10.
Bapak Prof. Dr. dr. Syahril Pasaribu, DTM&H, M.Sc(CTM). Ap.A(K) selaku Rektor Universitas Sumatera Utara. Bapak Prof. Dr. Muhammad Zarlis, M.Kom, selaku Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara. Bapak Dr. Poltak Sihombing, M.Kom, selaku Ketua Departemen Ilmu Komputer Universitas Sumatera Utara. Ibu Maya Silvi Lydia, B.Sc, M.Sc, selaku Sekretaris Departemen Ilmu Komputer Universitas Sumatera Utara. Pembantu Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara, semua dosen dan pegawai pada program studi S1 Ilmu Komputer Fasilkom-TI USU. Bapak Dr. Poltak Sihombing, M.Kom dan Bapak Herriyance, ST, M.Kom, selaku Dosen Pembimbing. Bapak Syahril Efendi, S.Si, MIT dan Bapak Amer Sharif, S.Si, M.Kom, selaku Dosen Penguji. Bapak Ade Candra, ST. M.Kom, selaku dosen pembimbing akademik saya. 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. 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
Universitas Sumatera Utara
v
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)
Universitas Sumatera Utara
vi
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)
Universitas Sumatera Utara
vii
DAFTAR ISI
Halaman Persetujuan Pernyataan Penghargaan Abstrak Abstract Daftar Isi Daftar Tabel Daftar Gambar Daftar Lampiran
ii iii iv v vi vii x xi xiii
Bab I
Bab II
Pendahuluan 1.1 Latar Belakang 1.2 Rumusan Masalah 1.3 Batasan Masalah 1.4 Tujuan Penelitian 1.5 Manfaat Penelitian 1.6 Sistematika Penulisan
1 2 3 3 4 4
Landasan Teori 2.1 Kriptografi 2.1.1 Definisi Kriptografi 2.1.2 Terminologi 2.1.3 Tujuan Kriptografi 2.2 Kriptografi Simetri dan Asimetri 2.2.1 Algoritma Simetris (Konvensional) 2.2.2 Algoritma Asimetris (Kunci Publik) 2.3 Landasan Matematika Kriptografi 2.3.1 Aritmetika Modulo 2.3.2 Teorema Euclidean 2.3.3 Relatif Prima 2.3.4 Permutasi (Transposisi) 2.4 Algoritma Kriptografi Knapsack 2.4.1 Knapsack Problem 2.4.2 Algoritma Knapsack Sederhana 2.4.3 Superincreasing Knapsack Problem 2.4.4 The Merkle Hellman Knapsack Cryptosystem 2.5 Steganografi 2.5.1 Defenisi Steganografi 2.5.2 Konsep dan Terminologi
6 6 6 8 9 9 10 11 11 12 12 12 13 13 13 14 16 20 20 21
Universitas Sumatera Utara
viii
2.5.3 Kriteria Steganografi 2.5.4 Metode First Of File (FOF) 2.5.5 Citra 2.5.6 Format File Citra Bitmap
22 23 24 25
Bab III Analisis dan Perancangan Sistem 3.1 Analisis Sistem 3.1.1 Analisis Masalah 3.1.2 Analisis Persyaratan 3.1.2.1 Persyaratan Fungsional 3.1.2.2 Persyaratan Nonfungsional 3.1.3 Perancangan Flowchart 3.1.3.1 Flowchart Aplikasi 3.1.3.2 Flowchart Key Generation 3.1.3.3 Flowchart Encryption 3.1.3.4 Flowchart Decryption 3.1.3.5 Flowchart Embedded 3.1.3.6 Flowchart Extraction 3.1.4 Pemodelan Sistem 3.1.4.1 Use Case Diagram 3.1.4.1.1 Use Case Key Generation 3.1.4.1.2 Use Case Encryption 3.1.4.1.3 Use Case Embedded 3.1.4.1.4 Use Case Extraction 3.1.4.1.5 Use Case Decryption 3.1.4.2 Activity Diagram (Diagram Aktivitas) 3.1.4.3 Sequence Diagram 3.2 Rancangan Interface Aplikasi 3.2.1 Rancangan Interface Form Home 3.2.2 Rancangan Interface Form Help 3.2.3 Rancangan Interface Form Key Generation 3.2.4 Rancangan Interface Form Encryption 3.2.5 Rancangan Interface Form Embedded 3.2.6 Rancangan Interface Form Extraction 3.2.7 Rancangan Interface Form Decryption
26 26 27 28 28 29 29 30 32 32 34 34 36 36 37 39 40 42 43 44 47 49 49 50 51 53 54 56 57
Bab IV Implementasi dan Pengujian 4.1 Implementasi 4.1.1 Form Home 4.1.2 Form Pembangkit Kunci (Key Generation) 4.1.3 Form Enkripsi (Encryption) 4.1.4 Form Penyisipan (Embedded) 4.1.5 Form Ekstraksi (Extraction) 4.1.6 Form Dekripsi (Decryption) 4.1.8 Form Help
59 59 60 62 63 64 64 65
Universitas Sumatera Utara
ix
4.2 Pengujian 4.2.1 Proses Pembangkitan Kunci 4.2.2 Proses Enkripsi (Encryption) 4.2.3 Proses Penyisipan (Embedded) 4.2.4 Proses Extraction 4.2.5 Proses Decryption 4.2.6 Hasil Pengujian 4.2.6.1 Analisis Ukuran File Terhadap Proses Enkripsi / Dekripsi 4.2.6.2 Analisis Waktu Proses Terhadap Besar Ukuran File 4.2.6.3 Analisis Ukuran File Citra Terhadap Ukuran File Text (Ciphertext) Bab V
Kesimpulan dan Saran 5.1 Kesimpulan 5.2 Saran
Daftar Pustaka Listing Program
66 67 70 72 75 77 80 80 81 82 89 91 92 A-1
Universitas Sumatera Utara
x
DAFTAR TABEL
Nomor Tabel 2.1 3.1 3.2 3.3 3.4 3.5 4.1 4.2 4.3 4.4 4.5
Nama Tabel
Halaman
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 Coverimage Bervariasi
15 37 39 40 42 43 80 81 83 85 87
Universitas Sumatera Utara
xi
DAFTAR GAMBAR
Nomor Gambar 2.1 2.2 2.3 2.4 2.5 2.6 2.7 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 3.20 3.21 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 4.9 4.10 4.11 4.12 4.13
Nama Gambar
Halaman
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 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 Rancangan Interface Form Home Interface Form Help Rancangan Interface Form Key Generation Rancangan Interface Form Encryption Rancangan Interface Form Embedded Rancangan Interface Form Extraction Rancangan Interface Form Decryption Form Home Form Key Generation Form Encryption Form Embedded Form Extraction Form Decryption Form Help 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
7 10 11 21 22 23 24 27 30 31 32 33 34 35 37 45 45 46 46 47 48 49 50 51 53 54 56 57 60 61 62 63 64 65 66 67 68 68 68 69 69
Universitas Sumatera Utara
xii
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
Opendialog Untuk Memilih Kunci Publik Opendialog Untuk Memilih Plaintext Proses Enkripsi (Encryption) Proses Penyimpanan Data Hasil Enkripsi Opendialog Untuk Memilih Coverimage Opendialog Untuk Memilih Ciphertext Proses Penyisipan (Embedded) Savedialog Untuk Menyimpan Stegoimage Opendialog Untuk Memilih Stegoimage Pesan Dialog Error Ekstraksi Proses Ekstraksi (Extraction) 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 73 74 75 75 76 76 77 78 78 79 79
Universitas Sumatera Utara
xiii
DAFTAR LAMPIRAN
Halaman A. Listing Program B. Curriculum Vitae (CV)
A-1 B-1
Universitas Sumatera Utara