Implementasi Algoritma Kriptografi Massey Omura Dengan Teknik Steganografi Kombinasi End Of File (EOF) Dan First Of File (FOF) Untuk Keamanan Data
IMPLEMENTASI ALGORITMA KRIPTOGRAFI MASSEY OMURA DENGAN TEKNIK STEGANOGRAFI KOMBINASI
(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 MEDAN 2013 IMPLEMENTASI ALGORITMA KRIPTOGRAFI MASSEY OMURA DENGAN TEKNIK STEGANOGRAFI KOMBINASI
(EOF) DAN FIRST OF FILE (FOF) UNTUK KEAMANAN DATA SKRIPSI
END OF FILE
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, Dr. Poltak Sihombing, M.Kom NIP.196203171991031001
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.
10. Keponakan tersayang Tsabitah, Khalisah, Erol, Naumi, Athallah, Nazwa, Syifa, dan Putra yang selalu mendukung dan menghibur selama proses penyelesaian skripsi ini.
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.
Kata Kunci: Kriptografi, Three-Pass Protocol, Massey-Omura, Fermat’s Little
Theorem , Euclidean GCD, Steganografi, End Of File, First Of File.
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
2.12 Penelitian Terdahulu
19 Bab III Analisis dan Perancangan
3.1 Analisis Sistem
3.1.5.12 Flowchart Decryption2 (Recipient)
3.2.3 Help
57
3.2.2 About
56
3.2.1 Home
56
3.2 Perancangan Sistem
55
54
3.2.4 Encryption1
3.1.5.11 Flowchart Extracting3 (Recipient)
54
3.1.5.10 Flowchart Embedding3 (Sender)
53
3.1.5.9 Flowchart Decryption1 (Sender)
52
3.1.5.8 Flowchart Extracting2 (Sender)
51
57
58
50
69 dan First Of File Bab IV Implementasi dan Pengujian
74
4.1.3 Form Help
74
4.1.2 Form About
73
4.1.1 Form home_application
73
4.1 Implementasi Sistem
3.3.2 Tahapan Sistem Teknik Steganografi Kombinasi End Of File
3.2.5 Encrypion2
65
3.3.1 Tahapan Sistem Algoritma Kriptografi Massey Omura
65
3.3 Tahapan Sistem
63
3.2.7 Decryption2
61
3.2.6 Decryption1
60
3.1.5.7 Flowchart Embedding2 (Recipient)
3.1.5.6 Flowchart Encryption2 (Recipient)
21
23
38
3.1.4.2 Pseudocode Proses Fermat
38
3.1.4.1 Pseudocode Proses Generate Prime
38
3.1.4 Pseudocode
25
3.1.3.1 Spesifikasi Use Case
3.1.3 Pemodelan Persyaratan Sistem dengan Use Case
39
23
3.1.2.2 Analisis Nonfungsional
22
3.1.2.1 Analisis Fungsional
22
3.1.2 Analisis Persyaratan
21
3.1.1 Analisis Masalah
3.1.4.3 Pseudocode Proses Euclidean GCD
3.1.4.4 Pseudocode Proses Generate Key
50
3.1.5.1 Flowchart Prime Generator
3.1.5.5 Flowchart Extracting1(Recipient)
49
3.1.5.4 Flowchart Embedding1 (Sender)
48
3.1.5.3 Flowchart Encryption1 (Sender)
47
3.1.5.2 Flowchart Key Generator (Sender)
46
45
39
3.1.5 Flowchart Sistem
45
3.1.4.8 Pseudocode Proses Dekripsi
43
3.1.4.7 Pseudocode Proses Extracting
41
3.1.4.6 Pseudocode Proses Embedding
40
3.1.4.5 Pseudocode Proses Enkripsi
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 Pustaka
98
DAFTAR TABEL
Nomor Tabel Nama Tabel Halaman36
25
26
27
28
29
30
31
32
33
34
35
37
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 Hasil Pengujian Proses Embedding dan Extracting dengan Beberapa Ukuran
65
67
68
70
70
71
72
80
86
88
91
94
13
End Of File dan First Of File
2.1
3.12
3.1
3.2
3.3
3.4
3.5
3.6
3.7
3.8
3.9
3.10
3.11
3.13
4.6 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
3.14
3.15
3.16
3.17
3.18
3.19
3.20
4.1
4.2
4.3
4.4
4.5
95
DAFTAR GAMBAR
Nomor Gambar Nama Gambar Halaman25
33
32
31
30
29
28
27
26
24
35
22
18
16
15
10
9
9
8
34
36
7
53
60
58
57
57
56
55
54
54
52
37
51
50
50
49
48
47
46
45
8
Perancangan Form home_application Perancangan Form about Perancangan Form help Perancangan Form encryption1 Perancangan Form encryption2 Perancangan Form decryption1
2.1 2.2 (a) 2.2 (b)
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.8
2.7
2.6
2.5
2.4
2.3
3.13
3.15
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 Flowchart Extracting1 Flowchart Encryption2 Flowchart Embedding2 Flowchart Extracting2 Flowchart Decryption1 Flowchart Embedding3 Flowchart Extracting3 Flowchart Decryption2
3.26
3.34 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
3.33
3.32
3.31
3.30
3.29
3.28
3.27
3.25
3.16
3.24
3.23
3.22
3.21
3.20
3.19
3.18
3.17
62
3.35
81
“Message is over limit of image pixel”
64
73
74
75
75
76
77
78
78
79
79
80
81
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
82
83
83
84
85
85
86
87
89
90
91
92
92
Pop-up Windows Save File Message Box Warning informasi
Pop-up Windows Save Stego Image Message Box “Stego Image Saved” Message Box
4.1
4.15
4.2
4.3
4.4
4.5
4.6
4.7
4.8
4.9
4.10
4.11
4.12
4.13
4.14
4.16
Hasil Pemilihan Cover Image1 Hasil Embedding1 dan Message box Informasi “Embedding Succeed”
4.17
4.18
4.19
4.20
4.21
4.22
4.23
4.24
4.25
4.26
4.27 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
93