IMPLEMENTASI DAN ANALISIS KRIPTOGRAFI HYBRID ALGORITMA FEAL DAN ALGORITMA ELGAMAL DALAM PENGAMANAN FILE TEKS
SKRIPSI
SYABRUL MAJID 131421058
PROGRAM S-1 EKSTENSI ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2015
IMPLEMENTASI DAN ANALISIS KRIPTOGRAFI HYBRID ALGORITMA FEAL DAN ALGORITMA ELGAMAL DALAM PENGAMANAN FILE TEKS
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Sarjana Komputer
SYABRUL MAJID 131421058
`
PROGRAM S-1 EKSTENSI ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2015
PERSETUJUAN
Judul
: IMPLEMENTASI DAN ANALISIS KRIPTOGRAFI HYBRID ALGORITMA FEAL DAN ALGORITMA ELGAMAL DALAM PENGAMANAN FILE TEKS
Kategori
: SKRIPSI
Nama
: SYABRUL MAJID
Nomor Induk Mahasiswa
: 131421058
Program Studi
: SARJANA (S1) ILMU KOMPUTER
Fakultas
: ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
(FASILKOM-TI)
UNIVERSITAS
SUMATERA UTARA
Diluluskan di Medan, Desember 2015
Komisi Pembimbing Pembimbing 2
Dian Rachmawati, S.Si, M.Kom NIP. 198307232009122004
Diketahui/Disetujui oleh Program Studi S1 Ilmu Komputer Ketua,
Dr. Poltak Sihombing, M.Kom NIP. 196203171991031011
Pembimbing 1
M. Andri Budiman, ST, M.comp., Sc, M.E.M NIP. 197510082008011011
PERNYATAAN IMPLEMENTASI DAN ANALISIS KRIPTOGRAFI HYBRID ALGORITMA FEAL DAN ALGORITMA ELGAMAL DALAM PENGAMANAN FILE TEKS
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, Desember 2015
SYABRUL MAJID 131421058
PENGHARGAAN
Alhamdulillah. Puji dan syukur penulis ucapkan kepada Allah SWT atas limpahan rahmat dan karunia-Nya sehingga penulis dapat menyelesaikan skripsi ini sebagai syarat untuk memperoleh gelar Sarjana Komputer, Program Studi Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara. Kemudian Shalawat dan salam penulis ucapkan kepada Rasulullah Muhammad SAW.
Pada pengerjaan skripsi dengan judul Implementasi dan Analisis Kriptografi Hybrid Algoritma FEAL dan Algoritma ElGamal Dalam Pengamanan File Teks, penulis menyadari bahwa banyak campur tangan pihak yang turut membantu dan memotivasi dalam pengerjaannya. Dalam kesempatan ini, penulis mengucapkan terima kasih kepada:
1. Bapak Prof. Dr. Subhilhar, M.A.,Ph.D, selaku Pejabat Rektor Universitas Sumatera Utara. 2. Bapak Prof. Dr. Muhammad Zarlis, M.Sc., selaku Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara. 3. Bapak Dr. Poltak Sihombing, M.Kom, selaku Ketua Program Studi Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumetera Utara, dan juga sebagai dosen penguji yang telah memberikan saran dan kritikan yang sangat berguna bagi penulis. 4. Ibu Maya Silvi Lydia, B.Sc., M.Sc selaku Sekretaris Program Studi S1 Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara. 5. Bapak M. Andri Budiman, ST, M.Comp.Sc, M.E.M dan Ibu Dian Rachmawati S.Si, M.Kom selaku pembimbing yang telah banyak meluangkan waktunya dalam memberikan masukan-masukan kepada penulis. 6. Bapak Jos Timanta Tarigan, S.Kom, M.Sc sebagai dosen penguji yang telah memberikan saran dan kritikan yang sangat berguna bagi penulis.
7. Bapak Amer Sharif S.Si, M.Kom selaku dosen kriptografi yang telah memberikan masukan-masukan kepada penulis, selama di bangku perkuliahan. 8. Seluruh dosen serta pegawai di Program Studi S1 Ilmu Komputer Departemen Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi USU. 9. Ayahanda tercinta Syahril dan Ibunda Almarhumah tercinta Anyam, Abang Saya Nur Jamal, adik-adik saya Yuli Marni, dan Widia Yaswinta yang selalu memberikan doa, motivasi dan dukungannya baik materi maupun spiritual serta semangat yang diberikan selama kuliah dan menyelesaikan skripsi ini.
Penulis menyadari masih banyak kekurangan yang mungkin terdapat dalam skripsi ini, krikik dan saran yang membangun akan penulis terima demi untuk lebih baik lagi kedepannya, akhir kata terimakasih terhadap semua pihak yang telah berkontribusi didalam skripsi ini. Wassalam,
Medan, Desember 2015
Penulis
ABSTRAK
Lalu lintas pengiriman data semakin global, serta konsep open system dari suatu jaringan memudahkan seseorang untuk masuk kedalam jaringan tersebut. Kemananan merupakan suatu kebutuhan penting dalam proses pertukaran data. Suatu algoritma kriptografi dapat ditingkatkan keamanannya dengan cara digabungkan dengan algoritma kriptografi lainnya. Salah satu solusi dengan teknik kriptografi adalah untuk menjaga keamanan dan kerahasiaan data dalam pengiriman dan bertukar informasi. Algoritma FEAL (Fast Data Enchiperment Algorithm) adalah algoritma kunci simetri. Algoritma ElGamal adalah algoritma dengan kunci asimetri. Pengujian bilangan prima menggunakan metode Lehmann (Lehmann Prime Generator) untuk membangkitkan kunci ElGamal. Penggabungan dua algoritma simetri dengan asimetri disebut juga dengan hybrid cryptosystem.waktu yang digunakan untuk proses enkripsi dan dekripsi dari kedua algoritma tersebut tergantung kepada panjang plaintext dan key. Suatu pesan akan lebih aman apabila key dapat diamankan dengan cara di enkripsi dengan suatu algoritma yang lain. Oleh karena itu dapat disimpulkan bahwa dengan mengabungkan kedua algoritna maka keamanan data akan lebih baik. Kata Kunci : Kriptografi, simetris, asimetris, FEAL (Fast Data Enchiperment Algorithm), ElGamal, Hybrid Cryptosystem.
IMPLEMENTATION AND ANALYTIC CRYPTOGRAPHY HYBRID FEAL ALGORITHM AND ELGAMAL ALGORITHM TO SECURE TEXT FILE ABSTRACT
Data transmission traffic increasingly global, as well as the open system concept of a network allows a person to get into the network. Security is an essential requirement in the process of data exchange. An cryptographic algorithm can be enhanced security in a manner combined with other cryptographic algorithms. One solution to the cryptographic technique is to maintain the security and confidentiality of data in the transmission and exchange of information. Algorithm FEAL (Fast Data Enchiperment Algorithm) is a symmetric algorithm. ElGamal algorithm is an algorithm with asymmetries. Prime generator using Lehmann (Lehmann Prime Generator) gererator key of ElGamal. Merging two algorithms symmetry with asymmetry also called hybrid cryptosystem. Time used for encryption and decryption of the algorithms are dependent on the length of plaintext and key. An message will be more secure if the key can be secured by means encrypted with an algorithm and other algorithm. Therefore, it can be concluded that by combining both algorithm it will be better data security. Keywords: Cryptography, symmetrical, asymmetrical, FEAL (Fast Data Enchiperment Algorithm), ElGamal, Hybrid Cryptosystem, Lehmann Prime Generator
DAFTAR ISI
Halaman Judul ......................................................................................................
i
Halaman Persetujuan............................................................................................
ii
Halaman Pernyataan .............................................................................................
iii
Halaman Pernyataan .............................................................................................
iv
Halaman Penghargaan ..........................................................................................
vi
Halaman Abstak ...................................................................................................
viii
Halaman Abstact ...................................................................................................
ix
Halaman Daftar Isi ................................................................................................
x
Halaman Daftar Tabel ..........................................................................................
xv
Halaman Daftar Gambar ......................................................................................
xvi
BAB 1 PENDAHULUAN ................................................................................
1
1.1 latar Belakang .....................................................................................
1
1.2 Rumusan Masalah ..............................................................................
2
1.3 Batasan Masalah ................................................................................
2
1.4 Tujuan Penelitian ...............................................................................
2
1.5 Manfaat Penelitian .............................................................................
3
1.6 Metode Penelitian ..............................................................................
3
1.7 Sistematika Penelitian ........................................................................
4
BAB 2 TINJAUAN PUSTAKA .........................................................................
6
2.1 Latar Belakang ...................................................................................
6
2.1.1 Pengertian Kriptografi ..............................................................
6
2.1.2 Jenis Kriptografi .......................................................................
7
2.1.2 Tujuan Kriptografi ....................................................................
10
2.1.2 Serangan Terahadap Kriptografi ...............................................
11
2.1.5 Teknik Enkripsi dan Dekripsi Dalam Kriptografi .....................
12
2.2 Algoritma Hibrida (hybrid Algorithm)................................................
15
2.2.1 Pretty Good Privacy (PGP) ........................................................ 16 2.3 Lehmann primary Test (Tes Keprimaan Lehmann) ............................. 18 2.4 Algoritma FEAL (Fast Data Enchiperment Algorithm ....................... 20 2.4.1 Sejarah dan Penjelasan Algoritma FEAL ................................... 22 2.4.2 Langkah Enkripsi Algoritma FEAL ............................................ 23 2.4.3 Proses Validasi (key Schedule) Algoritma FEAL ....................... 25 2.4.4 Proses Dekripsi Algoritma FEAL ..............................................
25
2.5 Algoritma ElGamal .............................................................................
26
2.5.1 Landasan Matematika Algoritma ElGamal ...............................
27
2.5.2 Prinsip Kerja Algoritma ElGamal .............................................
32
2.5.3 Enkripsi Algoritma ElGamal ....................................................
33
2.5.4 Dekripsi Algoritma ElGamal ...................................................
37
BAB 3 ANALISIS DAN PERANCANGAN SISTEM ...................................
39
3.1 Analisis Sistem .................................................................................
39
2.1 Analisis Masalah ..............................................................................
39
3.2.1 Analisis Persyaratan (requirement Analysis) ...........................
40
3.3 Analisis Proses ..................................................................................
41
3.3.1 Proses Sistem Dengan Use Case Diagram ..............................
41
3.3.2 Proses Sistem Dengan Sequence Diagram ..............................
47
3.3.3 Proses Sistem Dengan Activity Diagram ................................
48
3.3.4 Flowchart Enkripsi Algoritma FEAL dan ElGamal ................
49
3.3.4 Flowchart Dekripsi Algoritma FEAL dan ElGamal ................
50
3.3 Perancangan Sistem ..........................................................................
51
3.3.1 Perancangan Antar Muka ........................................................
51
BAB 4 IMPLENTASI DAN PENGUJIAN SISTEM ....................................
54
4.1 Implementasi Sistem .........................................................................
54
4.1.1 Halaman Utama (Main Page) ..................................................
54
4.1.2 Form Key Generator ................................................................
55
4.1.3 Pengambilan Kunci dari Algoritma FEAL (Hasil Enkripsi dan Dekripsi Algoritma FEAL .......................................................
55
4.1.4 Implementasi dan pengujian Algoritma Hybrid FEAL dan ElGamal (Hasil Proses Enkripsi dan Hasil Dekripsi algoritma ElGamal dengan mengambil ciphertext FEAL sebagai Key ElGamal)...
57
4.2 Hasil Implementasi Sistem ...............................................................
61
4.2.1 Hasil Ujicoba panjang kunci dan panjang karakter plaintext proses enkripsi dan dekripsi Algoritma Hybrid FEAL dan ElGamal .
61
BAB 5 KESIMPULAN DAN SARAN .............................................................
70
5.1 Kesimpulan .......................................................................................
70
5.2 Saran .................................................................................................
71
DAFTAR PUSTAKA
LISTING PROGRAM
DAFTAR TABEL
Tabel 2.1 Teknik Subtitusi .............................................................................
13
Tabel 2.2 Teknik Blocking ........................................................................... .
14
Tabel 2.3 Sistem Kriptografi Algoritma FEAL .............................................
24
Tabel 2.4 Inversi Modulo dari 7 mod 17 .......................................................
30
Tabel 2.5 Inversi Modulo dari 25 mod 31 .....................................................
31
Tabel 2.6 Perhitungan Bilangan Prima Aman Algoritma ElGamal ...............
33
Tabel 2.7 Blok Cipher Algoritma ElGamal dalam Bentuk ASCII ..............
35
Tabel 2.8 Pembentukan ciphertext Algoritma ElGamal dalam Bentuk ASCII ..
36
Tabel 2.9 Dekripsi Pengembalian Cipertext kedalam bentuk plaintext algoritma ElGamal ...............................................................................................
39
Tabel 3.1 Dokumentasu naratif program enkripsi dan dekripsi algoritma FEAL dan ElGamal ...............................................................................................
43
Tabel 3.2 Proses Pembangkitan kunci .................................................................
44
Tabel 3.3 Proses Enkripsi ElGamal .....................................................................
45
Tabel 3.4 Deskripsi Dari Halaman Utama ...........................................................
53
Tabel 4.1 Uji Coba Enkripsi 5 kali percobaan dengan beragam panjang key dan plaintext Subtitusi ................................................................................
68
DAFTAR GAMBAR
Gambar 2.1 Enkripsi dan dekripsi Simetric Cryptosystem................................
8
Gambar 2.2 Enkripsi dan dekripsi Asimetric Cryptosystem .............................
10
Gambar 2.3 Teknik Permutasi ..........................................................................
15
Gambar 2.4 TeknikPermutasi ...........................................................................
15
Gambar 2.5 Teknik Ekpansi ............................................................................
16
Gambar 2.6 Teknik Pemampatan .....................................................................
17
Gambar 2.7 Proses Enkripsi Pada PGP ............................................................
19
Gambar 2.8 Proses dekripsi Pada PGP ............................................................
20
Gambar 2.9 Diagram Alir Algoritma FEAL ....................................................
23
Gambar 2.10 Sistem kriptografi proses pembentukan kunci, enkripsi dekripsi ElGamal .......................................................................................
27
Gambar 2.11 Elemen Primitive Algoritma ElGamal .........................................
32
Gambar 2.12 Pembangkitan Kunci algoritma ElGamal ....................................
33
Gambar 2.13 Proses Enkripsi ElGamal .............................................................
35
Gambar 2.14 Proses Dekkripsi Pada PGP ...........................................................
36
Gambar 3.1 Diagram Ichikawa pada implementasi Algoritma Hybrid FEAL dan ElGamal dalam pengaman data teks ................................................
40
Gambar 3.2 Use Case Algoritma hybrid FEAL dan ElGamal .............................
42
Gambar 3.3 Proses Enkripsi dan Dekripsi dengan sequence diagram algoritma Hybrid FEAL dan ElGamal ..............................................................
47
Gambar 3.4 Diagram Activity Pembangkitan kunci ............................................
47
Gambar 3.5 Diagram Activity Proses enkripsi dan dekripsi ................................
48
Gambar 3.6 Flowchart Pembangkitan Kunci Algoritma FEAL dan ElGamal .....
49
Gambar 3.7 Flowchart enkripsi Algoritma FEAL.................................................
50
Gambar 3.8 Flowchart enkripsi Algoritma ElGamal............................................. 51 Gambar 3.9 Halaman Utama Program Aplikasi..................................................... 53 Gambar 4.1 Halaman utama Aplikasi kriptografi Hybrid FEAL dan ElGamal .... 54 Gambar 4.2 Key Generator Algoritma ElGamal ..................................................
55
Gambar 4.3 Enkripsi Algoritma FEAL .................................................................
56
Gambar 4.4 Dekripsi Algoritma FEAL ................................................................
57
Gambar 4.5 Ekripsi Algoritma ElGamal ................................................................ 58 Gambar 4.6 Dekripsi Algoritma FEAL ................................................................
59
Gambar 4.7 Dekripsi Algoritma ElGamal menggunakan hybrid FEAL ..............
60
Gambar 4.8 Hasil pengujian ke-1 mendapatkan ciphertext FEAL untuk key ElGamal Dengan panjang plaintext 40 dan panjang key 10.............................
61
Gambar 4.9 Pengujian ELGamal dengan mendapatkan key dari algoritma FEAL . 62 Gambar 4.10 Hasil pengujian ke-2 mendapatkan ciphertext FEAL untuk key ElGamal Dengan panjang plaintext 91 dan panjang key 21.............................
62
Gambar 4.11 Pengujian ELGamal dengan mendapatkan key dari algoritma FEAL 63 Gambar 4.12 Hasil pengujian ke-1 mendapatkan ciphertext FEAL untuk key ElGamal Dengan panjang plaintext 193 dan panjang key 21............................. 64 Gambar 4.13 Pengujian ELGamal dengan mendapatkan key dari algoritma FEAL. 64 Gambar 4.14 Hasil pengujian ke-1 mendapatkan ciphertext FEAL untuk key ElGamal Dengan panjang plaintext 329 dan panjang key 51............................. 64 Gambar 4.15 Pengujian ELGamal dengan mendapatkan key dari algoritma FEAL. 66 Gambar 4.16 Hasil pengujian ke-1 mendapatkan ciphertext FEAL untuk key ElGamal Dengan panjang plaintext 1135 dan panjang key 51............................. 67 Gambar 4.17 Pengujian ELGamal dengan mendapatkan key dari algoritma FEAL.68 Gambar 4.18 Tingkatan jumlah panjang karakter dalam Algoritma Hybrid FEAL dan ElGamal ........................................................................................... 69