KEAMANAN DATA TEXT
SKRIPSI
HERMANDA IHUT TUA SIMAMORA
081401079
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
SKRIPSI
Diajukan untuk melengkapi tugas akhir dan memenuhi syarat mencapai gelar
Sarjana Komputer
HERMANDA IHUT TUA SIMAMORA
081401079
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
PERSETUJUAN
Judul : IMPLEMENTASI ALGORITMA ELGAMAL
DENGAN PEMBANGKIT BILANGAN LEHMAN
DAN ALGORITMA LEAST SIGNIFICANT BIT
(LSB) DENGAN COVER IMAGE BITMAP UNTUK
KEAMANAN DATA TEXT
Kategori : SKRIPSI
Nama : HERMANDA IHUT TUA SIMAMORA
Nomor Induk Mahasiswa : 081401079
Program Studi : SARJANA (S1) ILMU KOMPUTER
Departemen : ILMU KOMPUTER
Fakultas : ILMU KOMPUTER DAN TEKNOLOGI
INFORMASI
Diluluskan di
Medan, 27 Agustus 2013
Komisi Pembimbing :
Pembimbing 2 Pembimbing 1
Handrizal, Ssi, M.Comp.Sc M. Andri , ST, M.Comp.Sc, MEM NIP.- NIP. 197510082008011011
Diketahui/Disetujui oleh
Departemen Ilmu Komputer FMIPA USU Ketua,
PERNYATAAN
IMPLEMENTASI ALGORITMA ELGAMAL DENGAN PEMBANGKIT BILANGAN
PRIMA LEHMANN DAN ALGORITMA LEAST SIGNIFICANT BIT (LSB)
DENGAN COVER IMAGE BITMAP UNTUK
KEAMANAN DATA TEXT
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, 20 Agustus 2013
PENGHARGAAN
Puji dan syukur penulis ucapkan kepada Tuhan Yang Maha Esa atas berkat dan kasih karunia-nya sehingga penulis dapat menyelesaikan skripsi ini dengan baik.
Dengan segala kerendahan hati, pada kesempatan ini penulis menyampaikan terima kasih kepada semua pihak yang telah membantu penyelesaian skripsi ini. Penulis mengucapkan terima kasih kepada:
1. Bapak Dr. Poltak Sihombing, M.Kom sebagai Ketua Program Studi S1 Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.
2. Ibu Maya Silvi Lydia, BSc. MSc sebagai Sekretaris Program Studi S1 Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.
3. Dekan dan Pembantu Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.
4. Bapak M. Andri Budiman, ST, MCompSc, MEM dan Bapak Handrizal, Ssi, M.Comp.Sc selaku pembimbing yang telah membimbing penulis sehingga penulis dapat menyelesaikan skripsi ini.
5. Bapak Ade Candra, ST, M.Kom dan Bapak Herriyance, ST, M.Kom. sebagai dosen penguji yang telah memberikan saran dan kritikan yang sangat berguna bagi Penulis. 6. Seluruh dosen serta pegawai di Program Studi S1 Ilmu Komputer Departemen Ilmu
Komputer Fakultas Ilmu Komputer dan Teknologi Informasi USU.
7. Ayahanda tercinta M. Simamora dan Ibunda tercinta D. Pasaribu, kakak saya Triyanti Simamora SE, Tiur Yulianta Simamora S.Kep, adik saya Betty Sonia Simamora yang selalu memberikan doa, motivasi dan dukungannya baik materi maupun spiritual serta semangat yang diberikan selama kuliah dan menyelesaikan skripsi ini.
8. Dan juga kepada teman-teman seperjuangan angkatan 2008 program studi S1 Ilmu Komputer USU, terkhusus kepada: Angga Malau, Ria Marpaung , Juwita Pasaribu , Rosalina Situmorang, Brikson Barus , Elieser Hutapea , Harry Davidson, Johannes Hutabarat dan Octavianus Sianturi yang telah berbagi kebersamaan selama berada di S1 Ilmu Komputer
Penulis menyadari bahwa skripsi ini masih jauh dari sempurna. Oleh karena itu penulis menerima kritik dan saran dari semua pihak yang bersifat membangun dan menyempurnakan skripsi ini. Penulis berharap semoga skripsi ini bermanfaat bagi penulis sendiri pada khususnya dan pembaca pada umumnya.
Medan, 27 Agutus 2013
IMPLEMENTASI ALGORITMA ELGAMAL DENGAN PEMBANGKIT BILANGAN PRIMA LEHMANN DAN ALGORITMA LEAST SIGNIFICANT BIT (LSB) DENGAN
COVER IMAGE BITMAP UNTUK KEAMANAN DATA TEXT
ABSTRAK
Pada saat ini, banyak data atau informasi user yang dicuri oleh orang yang tidak berkepentingan, sehingga berkembanglah beberapa teknik keamanan, dimana salah satunya kriptografi. Pada kriptografi, data akan diacak sehingga tidak dapat dibaca dan dimengerti oleh orang lain. Kriptoanalisis adalah teknik yang digunakan untuk memecahkan kriptografi, sehingga data acak dapat dikembalikan ke data asli, sehingga kriptografi tidak sepenuhnya aman. Untuk mendapatkan keamanan yang lebih kuat, maka akan digabungkan kriptografi dengan steganografi. Algoritma kriptografi yang akan digunakan adalah ElGamal dengan pembangkit bilang prima lehmann, sedangkan algoritma steganografi yang akan digunakan adalah least significant bit (LSB). Data atau informasi terlebih dahulu dienkripsi dengan algoritma ElGamal, kemudian disisipkan kedalam sebuah citra dengan algoritma LSB, sehingga hasil dari enkripsi dan steganografi tidak akan menimbulkan kecurigaan bagi pihak lain. Berdasakan pengujian, untuk mengenkripsi dan menyisipkan pesan 20 hingga 60 karakter, dibutuhkan waktu kurang dari 3 detik, sedangkan waktu untuk ekstraksi dan dekripsi kurang dari 1 detik, serta perubahan citra tidak tampak oleh mata. Oleh karena itu, dapat disimpulkan bahwa dengan menggabungkan kriptografi dan steganogrofi maka keamanan data lebih kuat dan kinerja dari program adalah baik.
IMPLEMENTATION OF ELGAMAL ELGORITHM USING LEHMANN'S PRIME GENERATOR AND LEAST SIGNIFICANT BIT ALGORITHM
WITH BITMAP COVER IMAGE TO SECURE TEXT DATA.
ABSTRACT
At this time, a lot of data or user information stolen by people who are not interested, so it develops some security techniques, one of which cryptography. Using cryptography, the data will be encrypted so it can not be read and understood by others. Cryptanalysis is the technique used to solve cryptography, so that random data can be restored to the original data, so cryptography is not completely secure. In order to obtain stronger security, it will be combined steganography with cryptography. Cryptographic algorithms that will be used is ElGamal , whereas steganography algorithms that will be used is the least significant bit (LSB). Data or information will encrypted with ElGamal algorithm, and then inserted into an image with the LSB algorithm, so that the results of encryption and steganography would not arouse suspicion for others. Based on the testing, to encrypt and insert messages 20 to 60 characters, it takes less than 3 seconds, while the time for extraction and decryption of less than 1 second, and the image changes are not visible to the eye. Therefore, it can be concluded that by combining cryptography and steganography, it will obtain the stronger security and the performance of the program is good.
DAFTAR ISI
Halaman
Persetujuan ii
Pernyataan iii
Penghargaan iv
Abstrak v
1.4 Tujuan Penelitian 3
1.5 Manfaat Penelitian 3
1.6 Metode Penelitian 3
1.7 Sistematika Penulisan 4
Bab 2 Tinjauan Pustaka 6
2.1 Definisi dan Tujuan Kriptografi 6
2.2 Jenis Algoritma Kriptografi 7
2.2.1 Algoritma Simetris 7
2.2.2 Algoritma Asimetris 7
2.3 Algoritma ElGamal 8
2.3.1 Pembangkit Bilangan Prima Lehmann 9
2.3.2 Contoh Perhitungan Elgamal 9
2.4 Landasan Matematika Kriptografi 12
2.4.1 Aritmatika Modulo 12
2.4.2 Bilangan Prima 12
2.4.3 Modulo Eksponensial 13
2.4.4 Primitive Root 14
2.5 Steganografi 15
2.5.1 Definisi Steganografi 15
2.5.2 Teknik Steganografi 16
2.5.3 Least Significant Bit (LSB) 17
2.7 Citra Digital 19
2.7.1 Citra Bitmap (BMP) 20
2.8 Tabel ASCII 21
2.9 Unified Modelling Language 23
2.9.1 Use Case Diagram 23
2.9.2 Activity Diagram 25
2.9.3 Class Diagram 26
Bab 3 Analisis dan Perancangan 28
3.1 Analisis Sistem 28
3.1.1 Analisis Masalah 28
3.1.2 Analisis Persyaratan (Requirement Analysis) 30 3.1.2.1 Analisis Persyaratan Fungsional 30 3.1.2.2 Analisis Persyaratan Non-Fungsional 30 3.1.2.3 Pemodelan Persyaratan Sistem dengan Use Case 31
3.1.3 Analisis Proses Sistem 40
3.2 Perancangan Sistem 45
3.2.1 Class Diagram 45
3.2.2 Perancanga Antar Muka 48
Bab 4 Implementasi dan Pengujian Aplikasi 53
4.1 Implementasi 53
4.1.1 Tampilan Halaman Utama 53
4.1.2 Tampilan Halaman Bangkitkan Kunci 54 4.1.3 Tampilan Halaman Enkripsi dan Penyisipan 56 4.1.4 Tampilan Halaman Ekstraksi dan Dekripsi 60
4.2 Pengujian Aplikasi 64
4.2.1 Langkah-langkah Bangkitkan Kunci 66 4.2.2 Langkah-langkah Pengujian Enkripsi dan Penyisipan 66 4.2.3 Langkah-langkah Pengujian Ekstraksi dan Dekripsi 68 4.2.4 Hasil Pengujian Enkripsi dan Penyisipan 70 4.2.5 Hasil Pengujian Ekstraksi dan Dekripsi 75
Bab 5 Kesimpulan dan Saran 79
5.1. Kesimpulan 79
5.2. Saran 80
DAFTAR TABEL
Daftar Karakter ASCII yang Digunakan
Dokumentasi Naratif Program Enkripsi dan Steganografi. Dokumentasi Naratif Use Case Bangkitkan kunci
Dokumentasi Naratif Use Case Enkripsi
Dokumentasi Naratif Use Case Ektraksi dan dekripsi Kelas dan Atributnya
Citra Hasil Enkripsi dan Penyisipan
Waktu Enkripsi dan Penyisipan untuk Session I Waktu Enkripsi dan Penyisipan untuk Session II Waktu Enkripsi dan Penyisipan untuk Session III Waktu Enkripsi dan Penyisipan untuk Session IV Waktu Enkripsi dan Penyisipan untuk Session V Waktu Rata-Rata Enkripsi dan Penyisipan Waktu Ekstraksi dan Dekripsi untuk Session I Waktu Ekstraksi dan Dekripsi untuk Session II Waktu Ekstraksi dan Dekripsi untuk Session III Waktu Ekstraksi dan Dekripsi untuk Session IV Waktu Ekstraksi dan Dekripsi untuk Session V Waktu rata-rata Ekstraksi dan Dekripsi
DAFTAR GAMBAR
Diagram Sistem Steganografi
Proses Penyisipan dan Ekstraksi dalam Steganografi Cara mengakses bit dari gambar
Cara mengakses bit text
Menyisipkan bit-bit text file ke byte gambar Cara ekstraksi pesan dari Gambar
Contoh Usecase pada Proses Penjualan Contoh Activity Diagram
Contoh Class Diagram Contoh sequence Diagram
Diagram Ishikawa untuk Analisis Permasalahan Sistem Use Case Diagram Sistem yang Akan dikembangkan Activity Diagram Program Enkripsi dan Steganografi Activity Diagram Bangkitkan Kunci
Activity Diagram Proses Enkripsi dan Penyisipan Activity Diagram Ekstraksi dan Dekripsi
Sequence Diagram Bangkitkan kunci Sequnce Diagram Enkripsi dan Penyisipan Sequnce Diagram Ekstraksi dan Penyisipan Class Diagram untuk Sistem yang Dikembangkan Jframe Menu Utama Program
Jframe Bangkitkan Kunci Jframe Enkripsi&Penyisipan Jframe Ekstraksi dan Dekripsi Jframe About Program
Jframe Cara Penggunaan Program Halaman Utama
Halaman Bangkitkan Kunci Halaman Enkripsi dan Penyisipan Halaman Ekstraksi dan Dekripsi Citra DesktopWindows
Proses Bangkitkan Kunci
Buka File Pesan, Kunci, dan Gambar Proses Enkripsi dan Penyisipan
Simpan File Citra Digital Hasil Enkripsi dan Penyisipan Buka File Gambar dan Kunci
Proses Ekstraksi dan Dekripsi Simpan File Citra
Grafik Waktu Enkripsi dan Penyisipan Grafik Waktu Ekstraksi dan Dekripsi