IMPLEMENTASI KEAMANAN EMAIL MENGGUNAKAN PERTUKARAN KUNCI DIFFIE–HELLMAN DAN ALGORITMA ENKRIPSI BLOWFISH
KOMPETENSI JARINGAN KOMPUTER
SKRIPSI
RAE A.P. HERE WOLLO NIM. 0908605054
PROGRAM STUDI TEKNIK INFORMATIKA JURUSAN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS UDAYANA JIMBARAN 2014
ii
iii
Judul
: Implementasi Keamanan Email Menggunakan Pertukaran Kunci Diffie-Hellman Dan Algoritma Enkripsi Blowfish Nama : Rae Arya Pangestu Here Wollo Nim : 0908605054 Jurusan : Jurusan Ilmu Komputer, Fakultas Matematika dan Ilmu Pengetahuan Alam, Universitas Udayana Pembimbing : 1. I Komang Ari Mogi, S.Kom, M.Kom. 2. I Dewa Made Bayu Atmaja Darmawan, S.Kom, M.Cs. ABSTRAK
Electronic mail (email) adalah suatu sistem komunikasi elektronik yang saat ini dipakai untuk melakukan komunikasi dalam berbagai kepentingan, bahkan dalam mengirim informasi-informasi penting dan rahasia. Dengan banyaknya data-data penting yang sering juga bersifat rahasia, maka email rentan mengalami penyerangan dari pihak luar. Penyerangan tersebut dapat berupa pencurian data email, pengubahan isi email, dan lain-lain. Salah satu cara dalam mengamankan email ini adalah dengan melakukan enkripsi atau penyandian. Pada penelitian ini dibangun aplikasi mail client yang didalamnya diterapkan algoritma Blowfish yaitu salah satu algoritma simetris block cipher untuk melakukan enkripsi dan dekripsi pada attachment email. Pada aplikasi ini juga diterapkan protokol pertukaran kunci Diffie-Hellman untuk pengamanan distribusi kunci sesi yang akan digunakan pada proses enkripsi-dekripsi. Berdasarkan penelitian, penerapan protokol Diffie-Hellman dan algoritma Blowfish dapat diimplementasikan dengan baik, yang ditunjukan dengan kesesuaian kunci yang dihasilkan pengirim dan penerima, pengujian enkripsi-dekripsi yang berjalan dengan baik, dan terjaganya keutuhan data. Berdasarkan pengujian, algoritma Blowfish yang diterapkan dalam sistem keamanan email ini memiliki tingkat keamanan yang baik, yaitu dengan syarat memiliki nilai Avalanche Effect antara 45%-60%. Hasil pengujian Avalanche Effect terhadap perubahan bit kunci menghasilkan nilai rata-rata 52,01% dari sepuluh kali percobaan, dengan nilai terkecil yang didapat adalah 45,57% dan nilai terbesar adalah 56,86%. Kata Kunci : Email, Kriptografi, Blowfish, Diffie-Hellman, Avalanche Effect
iv
Title
: Email Security Implementation Using Diffie-Hellman Key Exchange and Blowfish Encryption Algorithm Name : Rae Arya Pangestu Here Wollo Student Number : 0908605054 Supervisor : 1. I Komang Ari Mogi, S.Kom, M.Kom. 2. I Dewa Made Bayu Atmaja Darmawan, S.Kom, M.Cs.
ABSTRACT
Electronic mail (email) is an electronic communication system that is currently used for communication in a variety of interests, even in sending important information and confidential. With so many important data are often confidential, then email susceptible to attacks from outsiders. The attack can be either data theft email, changing the contents of the email, and others. One way in securing this email is to perform encryption or encryption. In this study built mail client application that is therein applied algorithm which is one algorithm Blowfish symmetric block cipher for encryption and decryption on an email attachment. In this application also applied protocol Diffie-Hellman key exchange for session key distribution security that will be used in the encryption-decryption process. Based on research, the application of Diffie-Hellman protocol and the Blowfish algorithm can be implemented well, which indicated the suitability of the generated key sender and receiver, encryption-decryption testing goes well, and maintained the integrity of the data. Based on testing, Blowfish algorithm is applied in this email security system has a good level of security, namely the requirement of Avalanche Effect values between 45% -60%. Avalanche Effect test results to changes in key bits produces an average value of 52.01% of ten times the experiment, with the smallest value obtained was 45.57% and the largest value is 56.86%.
Key Words: Email, Cryptography, Blowfish, Diffie-Hellman, Avalanche Effect
v
KATA PENGANTAR
Puji syukur kehadirat Tuhan Yang Maha Esa, yang telah melimpahkan segala rahmat-Nya sehingga penulis dapat menyelesaikan penelitian tugas akhir ini dengan baik. Penelitian tugas akhir dengan judul Implementasi Keamanan Email Menggunakan Pertukaran Kunci Diffie-Hellman dan Algoritma Enkripsi Blowfish ini disusun dalam rangkaian kegiatan pelaksanaan tugas akhir di Jurusan Ilmu Komputer FMIPA UNUD. Sehubungan dengan telah terselesaikannya laporan ini, maka diucapkan terima kasih dan penghargaan kepada berbagai pihak yang telah
membantu
penulis, antara lain : 1. Bapak Drs. I Wayan Santiyasa, M.Si selaku Ketua Jurusan Ilmu Komputer Fakultas MIPA Universitas Udayana. 2. Bapak I Komang Ari Mogi. sebagai Dosen Pembimbing I. 3. Bapak I Dewa Made Bayu Atmaja Darmawan,S.Kom.,M.Cs. sebagai Pembimbing II.
4. Bapak dan ibu dosen di Jurusan Ilmu Komputer yang telah mendukung pembuatan tugas akhir ini. 5. Teman-teman di Jurusan Ilmu Komputer yang telah memberikan dukungan moral dalam penyelesaian tugas akhir ini. Mengingat terbatasnya pengetahuan dan pengalaman yang penulis miliki maka penulis menyadari laporan ini jauh dari sempurna. Oleh karena itu penulis mengharapkan kritik dan saran dari pembaca yang bersifat membangun.
Bukit Jimbaran, September 2014
Penulis
vi
DAFTAR ISI
ABSTRAK ......................................................................................................... iv ABSTRACT ........................................................................................................ v KATA PENGANTAR ........................................................................................ vi DAFTAR ISI ..................................................................................................... vii DAFTAR TABEL .............................................................................................. ix DAFTAR GAMBAR ........................................................................................... x DAFTAR LAMPIRAN ...................................................................................... xii BAB I .................................................................................................................. 1 PENDAHULUAN ............................................................................................... 1 1.1 Latar Belakang ........................................................................................... 1 1.2 Rumusan Masalah ...................................................................................... 2 1.3 Tujuan ........................................................................................................ 3 1.4 Batasan Masalah ......................................................................................... 3 1.5 Manfaat ...................................................................................................... 3 1.6 Metodologi Penelitian ................................................................................ 3 1.6.1 Perancangan Sistem ............................................................................. 3 1.6.2 Pengujian Sistem.................................................................................. 4 1.6.3 Pengujian Avalanche Effect .................................................................. 6 BAB II ................................................................................................................. 7 TINJAUAN PUSTAKA ...................................................................................... 7 2.1 Kriptografi ................................................................................................. 7 2.2 Pertukaran Kunci DIffie – Hellman ............................................................ 8 2.3 Algoritma Blowfish .................................................................................. 11 2.4 Electronic Mail (Email) ............................................................................ 15 2.5 Fungsi Hash MD-5 ................................................................................... 16 2.6 Avalanche Effect ...................................................................................... 16 BAB III ............................................................................................................. 17 ANALISIS DAN PERANCANGAN SISTEM................................................... 17
vii
3.1 Analisis Kebutuhan .................................................................................. 17 3.2 Perancangan Sistem .................................................................................. 18 3.2.1 Data Flow Diagram (DFD) ................................................................. 18 3.2.2 Flowchart ........................................................................................... 20 BAB IV ............................................................................................................. 24 HASIL DAN PEMBAHASAN .......................................................................... 24 4.1. Lingkungan Perancangan dan Implementasi ............................................ 24 4.2 Implementasi Algoritma Diffie-Hellman ke Dalam Sistem ....................... 24 4.3 Implementasi Algoritma Blowfish ke Dalam Sistem ................................. 25 4.4 Tampilan Antarmuka Pengguna ................................................................ 26 4.5 Pengujian Implementasi Sistem ................................................................ 32 4.5.1 Pengujian Hasil Enkripsi-Dekripsi ..................................................... 32 4.5.2 Pengujian Hasil Kunci........................................................................ 43 4.5.3 Pengujian Keutuhan Data ................................................................... 45 4.6 Pengujian Avalanche Effect ...................................................................... 46 BAB V .............................................................................................................. 48 KESIMPULAN DAN SARAN .......................................................................... 48 5.1 Kesimpulan .............................................................................................. 48 5.2 Saran ........................................................................................................ 48 DAFTAR PUSTAKA ........................................................................................ 49 LAMPIRAN ...................................................................................................... 50
viii
DAFTAR TABEL
Tabel 1.1 Tabel Pengujian Kunci Sesi .................................................................. 5 Tabel 4.1 Pengujian Hasil Kunci ........................................................................ 43 Tabel 4.2 Pengujian Keutuhan Data ................................................................... 45 Tabel 4.3 Pengujian Avalanche Effect ............................................................... 47
ix
DAFTAR GAMBAR
Gambar 2.1 Proses Enkripsi -Dekripsi ................................................................. 7 Gambar 2.2 Protokol Pertukaran Kunci Diffie – Hellman................................... 10 Gambar 2.3 Jaringan Feistel Algoritma Blowfish ............................................... 13 Gambar 2.4 Fungsi F Pada Algoritma Blowfish ................................................. 14 Gambar 3.1 Skema Sistem ................................................................................. 18 Gambar 3.2 DFD Level 0 ................................................................................... 19 Gambar 3.3 DFD Level 1 ................................................................................... 19 Gambar 3.2 Flowchart Sistem............................................................................ 20 Gambar 3.3 Flowchart Pertukaran Kunci DH Pada Pengirim ............................. 22 Gambar 3.4 Flowchart Pertukaran Kunci DH Pada Penerima............................. 22 Gambar 3.5 Flowchart Enkripsi-Dekripsi Blowfish ........................................... 23 Gambar 4.1 Tampilan Form Login ..................................................................... 27 Gambar 4.2 Tampilan Form Utama Mail Client ................................................. 27 Gambar 4.3 Tampilan Form Key ........................................................................ 28 Gambar 4.4 Tampilan Form Buat Pesan............................................................. 28 Gambar 4.5 Tampilan Form Add Attachment ..................................................... 29 Gambar 4.6 Tampilan Dialog Box Enkripsi Pesan.............................................. 29 Gambar 4.7 Tampilan Form Dekripsi................................................................. 30 Gambar 4.8 Tampilan Form Baca Pesan ............................................................ 30 Gambar 4.9 Tampilan form download attachment .............................................. 31 Gambar 4.10 Tampilan Dialog Box Enkripsi ...................................................... 31 Gambar 4.11 Tampilan Form Dekripsi............................................................... 31 Gambar 4.12 Plain Text1.txt .............................................................................. 32 Gambar 4.13 Text1.txt setelah dienkripsi ........................................................... 33 Gambar 4.14 Hexadesimal Plaintext Text1.txt ................................................... 33 Gambar 4.15 Hexadesimal Ciphertext Text1.txt ................................................. 33 Gambar 4.16 Data diri.txt setelah didekripsi ...................................................... 34 Gambar 4.17 Plaintext Laporan Final.docx ........................................................ 34 Gambar 4.18 Laporan Final.docx setelah dienkripsi ........................................... 35 x
Gambar 4.19 Hexadesimal Plaintext Laporan Final.docx ................................... 35 Gambar 4.20 Hexadesimal Ciphertext Laporan Final.docx ................................. 35 Gambar 4.21 Laporan Final.docx setelah didekripsi ........................................... 36 Gambar 4.22 Plaintext Presentasi PKL.ppt......................................................... 36 Gambar 4.23 Presentasi PKL.ppt setelah dienkripsi ........................................... 36 Gambar 4.24 Hexadesimal Plaintext Presentasi PKL.ppt ................................... 37 Gambar 4.25 Hexadesimal Ciphertext Presentasi PKL.ppt ................................. 37 Gambar 4.26 Presentasi PKL.ppt setelah didekripsi ........................................... 37 Gambar 4.27 Plaintext Contoh c5.xls ................................................................. 38 Gambar 4.28 Contoh c5.xls setelah dienkripsi .................................................... 38 Gambar 4.29 Hexadesimal Plaintext Contoh C5 ................................................ 39 Gambar 4.30 Hexadesimal Ciphertext Contoh C5 .............................................. 39 Gambar 4.31 Contoh c5.xls setelah didekripsi .................................................... 39 Gambar 4.32 Plaintext Logo Madrid.jpg ............................................................ 40 Gambar 4.33 Logo Madrid.jpg setelah dienkripsi ............................................... 40 Gambar 4.34 Hexadesimal Plaintext Madrid.jpg ................................................ 40 Gambar 4.35 Hexadesimal Ciphertext Madrid.jpg .............................................. 41 Gambar 4.36 Logo Madrid.jpg setelah didekripsi ............................................... 41
xi
DAFTAR LAMPIRAN
1. Source Code Implementasi Diffie-Hellman 2. Source Code Implementasi Blowfish
xii