ANALISIS KOMBINASI ALGORITMA ONE TIME PAD DAN ALGORITMA ELGAMAL DALAM PENGAMANAN PESAN TESIS ZULFIDAR 127038034 PROGRAM STUDI MAGISTER (S2) TEKNIK INFORMATIKA FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2014
ANALISIS KOMBINASI ALGORITMA ONE TIME PAD DAN ALGORITMA ELGAMAL DALAM PENGAMANAN PESAN TESIS Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Magister Teknik Informatika ZULFIDAR 127038034 PROGRAM STUDI MAGISTER (S2) TEKNIK INFORMATIKA FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2014
ii
iii PERNYATAAN ANALISIS KOMBINASI ALGORITMA ONE TIME PAD DAN ALGORITMA ELGAMAL DALAM PENGAMANAN PESAN TESIS Saya mengakui bahwa tesis ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya. Medan, 16 Juli 2014 Zulfidar 127038034
iv PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS Sebagai sivitas akademika, saya yang bertanda tangan di bawah ini: Nama : Zulfidar NIM : 127038034 Program Studi : Teknik Informatika Jenis Karya Ilmiah : Tesis Dengan pengembangan ilmu pengetahuan, menyetujui untuk memberikan kepada Hak bebas Royalti Non-Eksklusif (non-exlusive Royalty Free Right) atas tesis saya yang berjudul: ANALISIS KOMBINASI ALGORITMA ONE TIME PAD DAN ALGORITMA ELGAMAL DALAM PENGAMANAN PESAN Beserta perangkat yang ada (jika diperlukan). Dengan Hak Bebas Royalti Non- Eksklusif ini, berhak menyimpan, mengalih media, memformat, mengelola dalam bentuk data-base, merawat dan mempublikasikan Tesis saya tanpa minta izin dari saya selama tetap mencantumkan nama saya sebagai penulis dan sebagai pemegang dan atau sebagai pemilik hak cipta. Dengan pernyataan ini dibuat dengan sebenarnya. Medan, 16 Juli 2014 Zulfidar NIM 127038034
v Telah diuji pada Tanggal : 17 Juli 2014 PANITIA PENGUJI TESIS Ketua : Prof. Dr. Muhammad Zarlis Anggota : 1. Prof. Dr. Tulus, Vor. Dipl. Math, M.Si 2. Prof. Dr. Herman Mawengkang 3. Dr. Syahril Efendi, S.Si, M.IT 4. Dr. Erna Budhiarti Nababan, M.IT
vi RIWAYAT HIDUP DATA PRIBADI Nama Lengkap (berikut gelar) : Zulfidar, S.Kom, M.Kom Tempat dan Tanggal Lahir : Medan, 24 Juli 1989 Alamat Rumah : Jl. Beo Indah No. 34 Sei Sikambing B Telepon/Faks/HP : 0618456215/085296955854 E-mail : zulfidarkun@gmail.com Instansi Tempat Bekerja : ZEON Animation Studio Alamat Kantor : Jl. Beo Indah No. 34 Sei Sikambing B DATA PENDIDIKAN SD : SD Swasta SUTOMO TAMAT : 2004 SLTP : SMP Swasta HARAPAN I TAMAT : 2007 SLTA : SMA Swasta HARAPAN I TAMAT : 2009 S1 : STMIK AMIKOM Yogyakarta TAMAT : 2011 S2 : Teknik Informatika USU TAMAT : 2014
vii KATA PENGANTAR Puji Syukur penulis panjatkan kehadirat Tuhan Yang Maha Esa, yang berkat rahmat dan hidayah-nya, sehingga Tesis ini dapat diselesaikan tepat pada waktunya. Penulis mengucapkan ribuan terima kasih kepada: 1. Rektor, Bapak Prof. Dr. dr. Syahril Pasaribu DTM&H, M.Sc (CTM), Sp. A(K) atas kesempatan yang telah diberikan kepada penulis untuk dapat mengikuti dan menyelesaikan pendidikan Program Magister. 2. Dekan Fakultas Ilmu Komputer dan Teknologi Informasisekaligus Ketua Program Studi Magister Teknik Informatika, Bapak Prof. Dr. Muhammad Zarlis. Sekretaris Program Studi Teknik Informatika, Bapak M. Andri Budiman, ST, M.Comp. Sc, MEM. Beserta seluruh Staf Pengajar Program Studi Magister Teknik Informatika Program Pascasarjana Fakultas Ilmu Komputer. 3. Terima kasih tak terhingga dan penghargaan yang setinggi-tingginya atas bimbingan, pengarahan dan dorongan yang telah diberikan selama penyusunan tesis ini kepada Bapak Prof. Dr. Muhammad Zarlis selaku Pembimbing Utama, demikian juga kepada Bapak Prof. Dr. Tulus, Vor. Dipl. Math, M.Si selaku Pembimbing Kedua yang dengan penuh kesabaran menuntun dan membimbing penulis hingga selesainya tesis ini dengan baik. 4. Terima kasih yang tak terhingga serta penghargaan setinggi-tingginya juga penulis ucapkan kepada Bapak Prof. Dr. Herman Mawengkang, Ibu Dr. Erna Budhiarti Nababan, M.IT dan Bapak Dr. Syahril Efendi, S.Si., M.IT sebagai pembanding yang telah memberikan saran dan masukan serta arahan yang baik demi penyelesaian tesis ini. 5. Terima kasih yang tak terhingga juga penulis ucapkan kepada kedua orangtua serta keluarga besar yang dengan senantiasa mendoakan serta memberikan dukungan penuh hingga tiada mampu penulis untuk membalasnya.
viii 6. Staff Pegawai Pasca Sarjana S2 Teknik Informatika serta rekan mahasiswa/i seangkatan (2012) yang telah mendukung penulis dalam penyusunan karya ilmiah ini. Dengan penuh kesadaran dan rendah hati, penulis menyadari bahwa penelitian ini masih jauh dari kesempurnaan, hal ini karena keterbatasan, kemampuan, dan pengetahuan penulis. Harapan penulis semoga penelitian ini bermanfaat bagi penulis khususnya dan pembaca pada umumnya. Sekali lagi penulis mengucapkan terima kasih. Semoga kiranya Tuhan Yang Maha Esa membalas kebaikan yang telah diberikan. Medan, Penulis, Zulfidar NIM 127038034
ix ABSTRAK Pengamanan pesan diperlukan dalam rangka untuk mencegah pesan yang didistribusikan dapat dibuka oleh pihak lain yang tidak berkepentingan di mana pada akhirnya dapat mengancam kemanan dan kenyamanan dari si pengirim maupun penerima pesan tersebut. Untuk mengamankan pesan tersebut dalam dilakukan penerapan ilmu kriptografi yang bertujuan untuk mengubah pesan asli (plaintext) menjadi pesan terenkripsi (ciphertext), di mana untuk membukapesan tersebut memerlukan kunci.algoritma One Time Paddikenal dengan nama holy grail algorithm dikarenakan algoritma kriptografi One Time Pad adalah algoritma yang sempurna yang tidak bisa dipecahkanbiarpun begitu algoritma One Time Pad memiliki kelemahan dalam menjaga kerahasiaan atau keamanan kunci sehingga harus diberikan pengamanan pada kunci agar kunci dari OTP itu selama pengiriman terjaga kerahasiaanya. Sedangkan pada algoritma asimetri atau kunci publik ada algoritma Elgamal yang juga mempunyai keamanan yang tinggi karena kompleksitas algoritmanya.dengan dikombinasikannya algoritma one time pad dan ElGamal tersebutdapat meningkatkan keamanan pada pesan dan juga dapat menjaga kerahasiaan atau keamanan kunci dari one time pad selama proses pengiriman pesan dan kunci. Kata Kunci : pesan, one time pad, elgamal, enkripsi, pengamanan.
x ANALYSYS OF COMBINATION ONE TIME PAD ALGORITHM AND ELGAMAL ALGORITHM IN MESSAGE SECURITY ABSTRACT Security of messages was required in order to prevent messages when sent can be opened by other parties that are not invited in which could ultimately threaten the safety and comfort of the sender and the receiver of the message. To secure the message in the application of science done cryptography that aims to transform the original message (plaintext) into an encrypted message (ciphertext), in which to open the message requires a key.algorithm One Time Pad is known as the holy grail of cryptographic algorithms algorithms because the One Time Pad is the perfect algorithm that can not be solved even so the algorithm One Time Pad has a weakness in maintaining the confidentiality or security key that must be given to the security of the OTP key to lock it during maintained confidential delivery. While the asymmetric or public key algorithms exist Elgamal algorithm that also has a high security due to the complexity of the algorithm. With combining one-time pad algorithm and ElGamal algorithm can overcome the weakness of the one-time pad key in keeping secrecy during the process key delivery so that the security key is protected then the message of the one-time pad can not be cracked. Keyword : messages, one time pad, elgamal, encryption, security.
xi DAFTAR ISI HALAMAN JUDUL PENGESAHAN PERNYATAAN ORISINALITAS PERSETUJUAN PUBLIKASI PANITIA PENGUJI RIWAYAT HIDUP KATA PENGANTAR ABSTRAK ABSTRACT DAFTAR ISI DAFTAR GAMBAR DAFTAR TABEL Halaman BAB 1. PENDAHULUAN 1 1.1. Latar Belakang Masalah 1 1.2. Rumusan Masalah 3 1.3. Batasan Masalah 3 1.4. Tujuan Penelitian 3 1.5. Manfaat Penelitian 4 BAB 2. TINJAUAN PUSTAKA 5 2.1. Pengertian Kriptografi 5 2.2. Ancaman Keamanan 5 2.3. Pengenalan Kriptografi 6 2.3.1. Sejarah kriptografi 6 2.3.2. Konsep kriptografi 7 2.3.3. Elemen kriptografi 7 2.3.4. Algoritma kriptografi 9 2.4. Kriptografi Klasik 10 2.4.1. Cipher substitusi 10 2.4.2. Cipher transposisi 11 i ii iii iv v vi vii ix x xi xiv xv
xii 2.5. Kriptografi Modern 11 2.5.1. Algoritma simetris 11 2.5.2. Algoritma asimetris 12 2.5.3. Perbandingan algoritma simetris dan asimetris 13 2.6. Konsep Acak 14 2.7. Pembangkit Bilangan Acak Semu 15 2.8. Linier Congruential (LCG) 16 2.9. Probabilistic Encryption 17 2.10. Pembangkit Bilangan Prima 17 2.11. One Time Pad 18 2.11.1. Sejarah One Time Pad 18 2.11.2. Proses Kerja One Time Pad 19 2.12. ElGamal 21 2.12.1. Prinsip Kerja Algoritma ElGamal 22 2.12.1.1. Proses Pembentukan Kunci 22 2.12.1.2. Proses Enkripsi 22 2.12.1.3. Proses Dekripsi 23 BAB 3. METODOLOGI PENELITIAN 24 3.1. Pengumpulan dan Sumber Data 24 3.2. Subyek Penelitian 24 3.3. Perancangan Sistem 24 3.3.1. Alur proses enkripsi pesan oleh pengirim 26 3.3.2. Alur proses dekripsi pesan oleh penerima 26 3.3.3. Alur proses enkripsi kunci oleh pengirim 27 3.3.4. Alur proses dekripsi kunci oleh penerima 27 3.4. Diagram Alir 28 3.4.1. Diagram Alir Proses Enkripsi Pesan 28 3.4.2. Diagram Alir Proses Dekripsi Pesan 29 3.5. Analisis Algoritma 31 3.5.1. Kelebihan Algoritma 31 3.5.2. Kekurangan Algoritma 32 3.6. Alat Penelitian 32
xiii BAB 4. HASIL DAN PEMBAHASAN 33 4.1. Perancangan keamanan Pesan 33 4.2. Proses Enkripsi 33 4.2.1. Proses Pembangkitan Bilangan Prima 36 4.2.2. Proses Pembangkitan Kunci Elgamal 37 4.2.3.Proses Enkripsi Kunci OTP dengan Elgamal 38 4.3. Proses Dekripsi Pesan Kunci 41 4.3.1. Proses Dekripsi Kunci OTP dengan Elgamal 41 4.3.2. Proses dekripsi One Time Pad 43 4.4. Hasil Implementasi Pada Program 45 4.4.1. Hasil Penggunaan Kunci Secara Manual 45 4.4.2. Hasil Penggunaan Kunci Secara Acak 51 4.5. Hasil dari Penggabungan Algoritma 52 BAB 5. KESIMPULAN DAN SARAN 54 DAFTAR PUSTAKA 55 LAMPIRAN 1 DAFTAR PUBLIKASI ILMIAH PENULIS (TESIS) 57 LAMPIRAN 2 LISTING PROGRAM 58
xiv DAFTAR GAMBAR Halaman Gambar 2.1 Diagram proses enkripsi dan dekripsi 9 Gambar 2.2 Proses Enkripsi dan Dekripsi pada algoritma simetris 12 Gambar 3.1. Proses enkripsi pesan dan pengiriman ciphertext 25 Gambar 3.2. Proses dekripsi pesan kunci 25 Gambar 3.3. Proses enkripsi pesan oleh penerima 26 Gambar 3.4. Proses dekripsi pesan oleh penerima 27 Gambar 3.5. Proses enkripsi kunci oleh pengirim 27 Gambar 3.6. Proses dekripsi kunci oleh penerima 28 Gambar 3.7. Diagram alir enkripsi one time pad 28 Gambar 3.8. Diagram alir enkripsi ElGamal 29 Gambar 3.9. Diagram alir proses dekripsi one time pad 30 Gambar 3.10. Diagram alir proses dekripsi ElGamal 31 Gambar 4.1. Tampilan Aplikasi 46 Gambar 4.2. Proses Input plainteks dan kunci 47 Gambar 4.3. Message box yang menyatakan bukan prima 48 Gambar 4.4. Input nilai prima yang baru 48 Gambar 4.5. Proses enkripsi pesan dan kunci 49 Gambar 4.6. Pengosongan plainteks dan kunci pada one time pad 50 Gambar 4.7. Proses dekripsi oleh penerima 50 Gambar 4.8. Proses input dkunci dengan fungsi random 51 Gambar 4.9. Proses enkripsi dengan fungsi random 52 Gambar 4.10. Proses Pengaman kunci oleh ElGamal 53
xv DAFTAR TABEL Halaman Tabel 4.1 Nilai Karakter 29 Tabel 4.2 Konversi Blok Karakter ke dalam kode ASCII 31 Tabel 4.3 Perhitungan Enkripsi plaintext 31 Tabel 4.4 Perhitungan dekripsi ciphertext 32