IMPLEMENTASI ALGORITMA KRIPTOGRAFI MASSEY OMURA DENGAN TEKNIK STEGANOGRAFI KOMBINASI
END OF FILE (EOF) DAN FIRST OF FILE (FOF) UNTUK KEAMANAN DATA
SKRIPSI
NADYA SORAYA HARDIYANA 091401077
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
IMPLEMENTASI ALGORITMA KRIPTOGRAFI MASSEY OMURA DENGAN TEKNIK STEGANOGRAFI KOMBINASI
END OF FILE (EOF) DAN FIRST OF FILE (FOF) UNTUK KEAMANAN DATA
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Sarjana Ilmu Komputer
NADYA SORAYA HARDIYANA 091401077
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
MEDAN 2013
PERSETUJUAN
Judul : IMPLEMENTASI ALGORITMA KRIPTOGRAFI MASSEY OMURA DENGAN TEKNIK STEGANOGRAFI KOMBINASI END OF FILE (EOF) DAN FIRST OF FILE (FOF) UNTUK KEAMANAN DATA
Kategori : SKRIPSI
Nama : NADYA SORAYA HARDIYANA Nomor Induk Mahasiswa : 091401077
Program Studi : SARJANA (S1) ILMU KOMPUTER Fakultas : ILMU KOMPUTER DAN TEKNOLOGI
INFORMASI UNIVERSITAS SUMATERA UTARA
Diluluskan di
Medan, 17 Desember 2013
Komisi Pembimbing :
Pembimbing 2 Pembimbing 1
Herriyance, ST. M.Kom Maya Silvi Lydia, B.Sc, M.Sc NIP.198010242010121002 NIP. 197401272002122001
Diketahui/Disetujui oleh
Program Studi S1 Ilmu Komputer Ketua,
PERNYATAAN
IMPLEMENTASI ALGORITMA KRIPTOGRAFI MASSEY OMURA DENGAN TEKNIK STEGANOGRAFI KOMBINASI
END OF FILE (EOF) DAN FIRST OF FILE (FOF) UNTUK KEAMANAN DATA
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.
Medan, 17 Desember 2013
Nadya Soraya Hardiyana 091401077
PENGHARGAAN
Puji dan syukur kehadirat Allah SWT, yang hanya dengan rahmat dan izin-Nya penulis dapat menyelesaikan penyusunan skripsi ini, sebagai syarat untuk memperoleh gelar Sarjana Komputer, pada Program Studi S1 Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.
Ucapan terima kasih penulis sampaikan kepada:
1. Bapak Prof. Dr. dr. Syahril Pasaribu, DTM&H, M.Sc(CTM), Sp.A(K) selaku Rektor Universitas Sumatera Utara.
2. Bapak Prof. Dr. Muhammad Zarlis 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 Pembanding.
4. Ibu Maya Silvi Lydia, B.Sc, M.Sc selaku Sekretaris Program Studi S1Ilmu Komputer Universitas Sumatera Utara dan Dosen Pembimbing serta Dosen Pembimbing Akademik.
5. Bapak Herriyance, ST, M.Kom selaku Dosen Pembimbing yang telah membimbing dan memberikan kritik serta sarannya dalam penyempurnaan skripsi ini.
6. Ibu Dian Rachmawati S.Kom, M.Kom selaku Dosen Pembanding yang telah memberikan kritik dan sarannya dalam penyempurnaan skripsi ini.
7. Bapak M. Andri Budiman, ST, M.CompSc, MEM selaku Dosen S-1 Ilmu Komputer yang telah berkenan membimbing dan memberikan kritik serta saran kepada penulis.
8. Pembantu Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara, seluruh tenaga pengajar dan pegawai di Program Studi S1Ilmu Komputer Fasilkom-TI Universitas Sumatera Utara.
9. Ayahanda H. Suhardi dan Ibunda Mursiah Nasution, serta kakak-kakak tersayang Ade Rahmi Fadilah, Dewi Kurnia, Rika Mahardika, Bella Almeida Fuaddhilah, Abangda Muhammad Hidayat Wibowo yang selalu memberikan kasih sayang, do’a serta dukungannya kepada penulis.
11. Abangda Muhammad Ridho Nasution, S.Kom yang selalu memberikan semangat, do’a dan perhatiannya kepada penulis.
12. Rekan-rekan S-1 Ilmu Komputer Stambuk 2009, khususnya Pocut Rizky Azhari, Fithri Rizqi Khairani Nasution, Dewi Ayu Pratami, Lidya Andiny Nasution, Nurul Khairina, dan Ismail Fata Lubis yang selalu memberikan do’a, semangat, bantuan, kritik dan saran kepada penulis selama proses penyelesaian skripsi ini.
Semoga Allah SWT melimpahkan berkah kepada semua pihak yang telah memberikan bantuan, perhatian, serta dukungan kepada penulis dalam menyelesaikan skripsi ini.
Medan, 17 Desember 2013
Penulis
ABSTRAK
Kemudahan yang dihasilkan dari perkembangan teknologi saat ini, ternyata menimbulkan masalah lain dalam keamanan pesan, seperti jalur pendistribusian kunci yang menjadi tidak aman. Keamanan pesan dapat dilakukan melalui kriptografi yaitu dengan cara mengacak pesan, sedangkan melalui steganografi dengan cara menyembunyikan pesan. Konsep kriptografi dan steganografi dapat dikombinasikan sehingga menghasilkan sistem keamanan pesan yang lebih baik. Dalam penelitian ini digunakan algoritma kriptografi Massey-Omura yang merupakan pengembangan dari Three-Pass Ptotocol yaitu suatu kerangka kerja yang memungkinkan tidak ada proses distribusi kunci sehingga dapat mengurangi terjadinya kebocoran pesan. Tahap pertama yaitu dengan membangkitan bilangan prima menggunakan metode Fermat’s Little Theorem dan melakukan pencarian bilangan relatif prima menggunakan algoritma Euclidean GCD. Selanjutnya pesan teks yang berformat *.txt di enkripsi dan menghasilkan ciphertext yang kemudian akan disembunyikan pada citra bitmap berformat *.bmp dengan teknik steganografi kombinasi metode End Of File dan First Of File yaitu dengan menyisipkan pesan pada baris awal dan akhir dari matriks pixel suatu citra. Proses penyembunyian pesan (embedding) pada cover image menghasilkan stego image yang selanjutnya akan melalui proses extracting untuk mendapatkan pesan yang tersembunyi (ciphertext) dan kemudian akan di dekripsi sehingga mendapatkan plaintext semula.
IMPLEMENTATION OF MASSEY OMURA’S CRYPTOGRAPHY ALGORITHM WITH STEGANOGRAPHY TECHNIQUE COMBINATION OF “END OF FILE” AND “FIRST OF FILE”
FOR DATA SECURITY
ABSTRACT
Ease resultant from developments of current’s technology actually causes other problems in security of message like key distribution channels which become unsafe. security message can be done through a cryptography by randomizing message, while through a steganography by hiding message. Concepts of cryptography and steganography can be combined to produce a better message security system. In this research is used Massey Omura algorithm which is the development of Three Pass Protocol namely framework which allow there is no process of key distribution so as to reduce the occurrence of message leaks. The first stage is generating primes using a method of Fermat’s Little Theorem and searching relatively prime number using Euclidean GCD. Furthermore the text message in format *.txt will encrypted and produce a ciphertext which will be hidden in the bitmap image in format *.bmp by steganography technique combination of End Of File and First Of File with inserting a message at the beginning and end of matrix pixel of image. The process of hiding message(embedding) in cover image produced stego image and through process of extracting to get the hidden message (ciphertext) which will decrypted and getting the plaintext.
Keyword: Cryptography, Three-Pass Protocol, Massey-Omura, Fermat’s Little Theorem, Euclidean GCD, Steganography, End Of File, First Of File.
DAFTAR ISI
Halaman
Persetujuan ii
Pernyataan iii
Penghargaan iv
Abstrak vi
Abstract vii
Daftar Isi viii
Daftar Tabel xi
Daftar Gambar xii
Daftar Lampiran xiv
Bab I 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 4
1.6 Metode Penelitian 4
1.7 Sistematika Penulisan 5
Bab II Landasan Teori
2.1 Kriptografi 6
2.1.1 Definisi Kriptografi 6 2.1.2 Enkripsi dan Dekripsi 6 2.1.3 Sejarah Kriptografi 7 2.1.4 Jenis Algoritma Kriptografi 8 2.1.5 Tujuan Kriptografi 9
2.2 Three Pass Protocol 10
2.3 Aritmatika Modulo 11
2.4 Greatest Common Divisor (GCD) 11
2.5 Algoritma Euclidean 12
2.6 Relatif Prima 12
2.7 Inversi Modulo 13
2.8 Fermat Little’s Theorem 13
2.9 Algoritma Massey Omura 14
2.10 Steganografi 15
2.10.1 Definisi Steganografi 15 2.10.2 Sejarah Steganografi 17 2.10.3 Teknik Steganografi Kombinasi End Of File dan First Of File 18
2.11 Citra Bitmap 18
Bab III Analisis dan Perancangan
3.1 Analisis Sistem 21
3.1.1 Analisis Masalah 21
3.1.2 Analisis Persyaratan 22 3.1.2.1 Analisis Fungsional 22 3.1.2.2 Analisis Nonfungsional 23 3.1.3 Pemodelan Persyaratan Sistem dengan Use Case 23 3.1.3.1 Spesifikasi Use Case 25
3.1.4 Pseudocode 38
3.1.4.1 Pseudocode Proses Generate Prime 38 3.1.4.2 Pseudocode Proses Fermat 38 3.1.4.3 Pseudocode Proses Euclidean GCD 39 3.1.4.4 Pseudocode Proses Generate Key 39
3.1.4.5 Pseudocode Proses Enkripsi 40 3.1.4.6 Pseudocode Proses Embedding 41
3.1.4.7 Pseudocode Proses Extracting 43 3.1.4.8 Pseudocode Proses Dekripsi 45
3.1.5 Flowchart Sistem 45
3.1.5.1 Flowchart Prime Generator 46 3.1.5.2 Flowchart Key Generator (Sender) 47 3.1.5.3 Flowchart Encryption1 (Sender) 48 3.1.5.4 Flowchart Embedding1 (Sender) 49 3.1.5.5 Flowchart Extracting1(Recipient) 50 3.1.5.6 Flowchart Encryption2 (Recipient) 50 3.1.5.7 Flowchart Embedding2 (Recipient) 51 3.1.5.8 Flowchart Extracting2 (Sender) 52 3.1.5.9 Flowchart Decryption1 (Sender) 53 3.1.5.10 Flowchart Embedding3 (Sender) 54 3.1.5.11 Flowchart Extracting3 (Recipient) 54 3.1.5.12 Flowchart Decryption2 (Recipient) 55
3.2 Perancangan Sistem 56
3.2.1 Home 56
3.2.2 About 57
3.2.3 Help 57
3.2.4 Encryption1 58
3.2.5 Encrypion2 60
3.2.6 Decryption1 61
3.2.7 Decryption2 63
3.3 Tahapan Sistem 65
3.3.1 Tahapan Sistem Algoritma Kriptografi Massey Omura 65 3.3.2 Tahapan Sistem Teknik Steganografi Kombinasi End Of File 69 dan First Of File
Bab IV Implementasi dan Pengujian
4.1 Implementasi Sistem 73
4.1.1 Form home_application 73
4.1.2 Form About 74
4.1.3 Form Help 74
4.1.4 Form Encryption1(Sender)
4.1.5 Form Encryption2(Recipient) 76 4.1.6 Form Decryption1(Sender) 76 4.1.7 Form Decryption2(Recipient) 77
4.2 Pengujian Sistem 78
4.2.1 Pengujian Proses Encryption1 78 4.2.2 Pengujian Proses Encryption2 84 4.2.3 Pengujian Proses Decryption1 88 4.2.4 Pengujian Proses Decryption2 90 4.2.5 Hasil Pengujian Proses Embedding dan Extracting 94
Bab V Kesimpulan dan Saran
5.1 Kesimpulan 96
5.2 Saran 97
DAFTAR TABEL
Nomor
Tabel Nama Tabel Halaman
2.1
Proses Perhitungan Invers Modulo
Spesifikasi Use Case untuk Prime Generator Spesifikasi Use Case untuk Key Generator A Spesifikasi Use Case untuk Encryption1 Spesifikasi Use Case untuk Embedding1 Spesifikasi Use Case untuk Extracting1 Spesifikasi Use Case untuk Key Generator B Spesifikasi Use Case untuk Encryption2 Spesifikasi Use Case untuk Embedding2 Spesifikasi Use Case untuk Extracting2 Spesifikasi Use Case untuk Decryption1 Spesifikasi Use Case untuk Embedding3 Spesifikasi Use Case untuk Extracting3 Spesifikasi Use Case untuk Decryption2 Kode ASCII
Perhitungan nilai dA Perhitungan nilai dB
Matriks Citra Bewarna 4 x 6 pixel
Matriks Citra yang Disisipi Pesan dengan Metode End Of File Matriks Citra yang Disisipi Pesan dengan Metode First Of File Matriks Citra yang Disisipi Pesan dengan Kombinasi Metode End Of File dan First Of File
Hasil Enkripsi Ciphertext1 untuk Plaintext ‘NADYA’ Hasil Ciphertext2 dari proses Encryption2
Hasil Ciphertext3 dari proses Decryption1
Hasil Nilai Plaintext Awal dari Proses Decryption2
Hasil Pengujian Proses Embedding dan Extracting Berdasarkan Implementasi Sistem
DAFTAR GAMBAR
Nomor
Gambar Nama Gambar Halaman
2.1
Proses Enkripsi Dekripsi Sebuah Scytale
Pesan Ditulis Secara Horizontal Baris per Baris Skema Kriptografi Simetri
Skema Kriptografi Asimetri Skema Three Pass Protocol
Skema Prosedur Pengiriman Pesan Alice-Bob Model Dasar Embedding pada Steganografi Contoh Citra Bitmap
Diagram Ishikawa Analisis Masalah Use Case Diagram Sistem
Activity Diagram untuk Prime Generator Activity Diagram untuk Key Generator A Activity Diagram untuk Encryption1 Activity Diagram untuk Embedding1 Activity Diagram untuk Extracting1 Activity Diagram untuk Key Generator B Activity Diagram untuk Encryption2 Activity Diagram untuk Embedding2 Activity Diagram untuk Extracting2 Activity Diagram untuk Decryption1 Activity Diagram untuk Embedding3 Activity Diagram untuk Extracting3 Activity Diagram untuk Decryption2 Flowchart Keseluruhan Sistem Flowchart Prime Generator Flowchart Key Generator A Flowchart untuk Encryption1 Flowchart Embedding1
Perancangan Form home_application Perancangan Form about
Perancangan Form help
Perancangan Form encryption1 Perancangan Form encryption2 Perancangan Form decryption1
3.35
Perancangan Form decryption2 Tampilan Form home_application Tampilan Form about
Tampilan Form help
Tampilan Form encryption1 Tampilan Form encryption2 Tampilan Form decryption1 Tampilan Form decryption2 Hasil Proses Generate Prime Hasil Proses Generate Key (Sender) Pop-up Windows Open Text
Hasil Plaintext yang dipilih Hasil Ciphertext1
Pop-up Windows Open Image Hasil Pemilihan Cover Image1
Hasil Embedding1 dan Message box Informasi “Embedding Succeed”
Pop-up Windows Save Stego Image Message Box “Stego Image Saved”
Message Box Informasi “No Hidden Message” Hasil Proses Extract1
Hasil Generate Key (Recipient) dan Encryption2 Hasil Embedding2
Hasil Extracting2 dan Decryption1 Hasil Embedding3
Hasil Extracting3 Hasl Decryption2
Pop-up Windows Save File Message Box Warning informasi “Message is over limit of image pixel”
DAFTAR LAMPIRAN
Halaman
A. Listing Program 100