Implementasi Kombinasi Beaufort Cipher Dan Affine Cipher Pada Three-Pass Protocol Untuk Pengamanan Data
IMPLEMENTASI KOMBINASI BEAUFORT CIPHER DAN AFFINE
CIPHER
PADA THREE-PASS PROTOCOL UNTUK PENGAMANAN DATA SKRIPSI AZIZAH MEI SARI SEBAYANG 101401091 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2014
IMPLEMENTASI KOMBINASI BEAUFORT CIPHER DAN
AFFINE CIPHER PADA THREE-PASS PROTOCOL
UNTUK PENGAMANAN DATA SKRIPSI Diajukan untuk melengkapi tugas akhir dan memenuhi syarat memperoleh ijazah
Sarjana Ilmu Komputer AZIZAH MEI SARI SEBAYANG
101401091 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN
2014
PERSETUJUAN
Judul : IMPLEMENTASI KOMBINASI BEAUFORT CIPHER DAN AFFINE CIPHER PADA THREE - PASS
PROTOCOL UNTUK PENGAMANAN DATA
Kategori : SKRIPSI Nama : AZIZAH MEI SARI SEBAYANG Nomor Induk Mahasiswa : 101401091 Program Studi : SARJANA (S1) ILMU KOMPUTER Departemen : ILMU KOMPUTER Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA Diluluskan di Medan, Agustus 2014
Komisi Pembimbing : Pembimbing 2 Pembimbing 1 M. Andri Budiman, ST, M.Comp.Sc, MEM Maya Silvi Lydia, B.Sc, M.Sc NIP. 197510082008011011 NIP. 197401272002122001 Diketahui/Disetujui oleh Program Studi S1 Ilmu Komputer Ketua, Dr. Poltak Sihombing, M.Kom NIP. 196203171991031001
PERNYATAAN
IMPLEMENTASI KOMBINASI BEAUFORT CIPHER DAN
AFFINE CIPHER PADA THREE-PASS PROTOCOL
UNTUK PENGAMANAN DATA SKRIPSI Saya menyatakan bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.
Medan, Agustus 2014 Azizah Mei Sari Sebayang 101401091
PENGHARGAAN
Puji dan syukur kehadirat Allah SWT, yang memberikan rahmat dan karuniaNya sehingga penulis dapat menyelesaikan penyusunan skripsi yang berjudul ‘IMPLEMENTASI KOMBINASI BEAUFORT CIPHER DAN AFFINE CIPHER PADA THREE-PASS PROTOCOL UNTUK PENGAMANAN DATA
’ sebagai syarat untuk memperoleh gelar Sarjana Komputer, pada Program Studi S1 Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara. Shalawat dan salam kepada Rasulullah SAW.
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. 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 S1 Ilmu Komputer Universitas Sumatera Utara dan Dosen Pembimbing.
5. Bapak M. Andri Budiman, ST, M.Comp.Sc, MEM selaku Dosen Pembimbing.
6. Bapak Syahriol Sitorus, S.Si, MIT selaku Dosen Pembanding.
7. Dekan dan Pembantu Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara, seluruh tenaga pengajar dan pegawai di Program Studi S1 Ilmu Komputer Fasilkom-TI USU.
8. Ayahanda Zainal Sebayang, S.Sos dan ibunda Dra. Asriati Kaban, yang selalu memberikan do’a, kasih sayang dan dukungannya kepada penulis.
9. Abangnda Abdul Aziz Sebayang, Adinda Zaid Hasan Sebayang, dan Adinda Latifah Febri Aini Sebayang dan Fitriana Ramadhansyah yang selalu memberikan semangat, canda, hiburan kepada penulis.
10. Keluarga UKMI Al Khuwarizmi, IKLC, SGC USU, RTIK dan teman - teman Organisasi IMILKOM yang selalu memberikan semangat dan inspirasi kepada penulis
11. Sahabat – Sahabat Nurhennida Br. Sitepu, Hayatun Nufus, Yayang Kurniati, dan Fanny Fairina N yang selalu memberikan semangat dan dorongan kepada penulis selama menyelesaikan skripsi ini.
12. Teman - teman 2010 Aulia, Reni, Amel, Poppy, Nurul, Sadam, Arifin, Hamdi, Adit, Novri, Westhy, Lenora, Sunfirst yang selalu saling memberikan motivasi kepada penulis
13. Adik - adik yang tercinta khususnya Geubrima, Dina, Fitri, Resti, Kiky, Tika, Indri, Ifa, Citra, Rezky, Neno, Rossy, Ilmi, Novi, Vici, Ranti, Diah, Ami, Rahmi, Dea, Fatimah, Rama, Ani, dll yang selalu memberikan dorongan dan do’anya kepada penulis Semoga Allah SWT melimpahkan berkah kepada semua pihak yang telah memberikan bantuan, perhatian, serta dukungan kepada penulis dalam menyelesaikan skripsi ini. Akhirnya, semoga skripsi ini bermanfaat bagi pribadi, keluarga, masyarakat, organisasi dan negara.
Medan, Juni 2014 Penulis
ABSTRAK
Kriptografi terbagi dua jenis yaitu kriptografi klasik dan modern. Pada penerapannya kriptografi modern lebih dipercaya oleh masyarakat sebagai teknik untuk mengamankan data, tetapi tidak sedikit masyarakat yang masih menggunakan kriptografi klasik dengan cara mengkombinasi dua algoritma kriptografi klasik. Algoritma Affine Cipher dan Beaufort Cipher yang merupakan varian dari Vigenère
Cipher adalah algoritma yang dikategorikan ke dalam kriptografi klasik dengan jenis
cipher subsitusi. Pada penerapannya kedua algoritma tersebut memiliki kelemahan
masing
- – masing. Affine Cipher memiliki kelemahan yaitu memiliki ukuran kunci yang kecil. Ukuran kunci yang kecil menyebabkan algoritma ini dapat dipecahkan dengan pencarian brute force. Sedangkan keamanan Beaufort Cipher tergantung dengan jumlah karakter kunci yang digunakan, semakin banyak jumlah kunci yang digunakan semakin sulit kemungkinan kunci dipecahkan. Pada penelitian ini akan dikembangkan kombinasi dua algoritma klasik Beaufort Cipher dan Affine Cipher dengan metode Three-pass Protocol yang diharapkan dapat memperbaiki kelemahan algoritma Affine Cipher yang memiliki kunci yang pendek dan kelemahan Beaufort
Cipher yang memiliki panjang kunci tergantung pada plainteks. Pengacakan kunci
dilakukan dengan RandomNumber Python dan Algoritma Lehmann Primality test.Implementasi sistem menggunakan bahasa pemrograman Python 3.1.3 dan SharpDevelop 4.1. Pengujian dilakukan terhadap plainteks 12, 20 dan 60 karakter. Parameter pengujian adalah keutuhan data, kompleksitas algoritma dan waktu proses. Hasil penelitian menunjukkan bahwa kombinasi kedua algoritma Beaufort Cipher dan
Affine Cipher mengembalikan data plainteks awal yang utuh. Pengujian kompleksitas
algoritma diperoleh (n ) . Sehingga disimpulkan kombinasi kedua algoritma Beaufort
Cipher dan Affine Cipher memenuhi keutuhan data yang baik, kompleksitas algoritma
(n ) dan jumlah plainteks berbanding lurus terhadap waktu.
Kata Kunci: Kriptografi, Beaufort Cipher, Affine Cipher, Three-pass Protocol,
Lehmann.
IMPLEMENTATION OF BEAUFORT CIPHER AND AFFINE CIPHER
COMBINATION IN THREE-PASS PROTOCOL
FOR DATA SECURITY
ABSTRACT
Cryptography is divided into two types classical and modern cryptography. In the application of modern cryptography is more trusted as a technique for securing the data, but a few people still use classical cryptographic algorithms by combining two classical cryptography. Affine Cipher Algorithm and Beaufort Cipher which is a variant of the algorithm Vigenère Cipher is categorized into classical cryptography with the type of substitution cipher. In practice both these algorithms have each weakness. The weakness of Affine Cipher is a short key sizes. Short key size causes the algorithm can be solved by brute force search. While security Beaufort Cipher key depends on the number of characters used. The more plaintext, the more of keys that are used, it’s difficult to solve key possibilities. This research will develop a combination of two classic algorithms Beaufort Cipher and Affine Cipher with Three- pass Protocol methods. This method is expected can improve the weaknesses of Affine Cipher algorithm which has short key and the weaknesses Beaufort cipher that has a key length depends on the plaintext. Randomization was performed with the key by Python RandomNumber and Lehmann primality test. Implementation of systems using Python programming language 3.1.3 and SharpDevelop 4.1. Tests performed on the plaintext which 12, 20 and 60 characters. Parameter testing is the integrity of data, the complexity of the algorithms and processing time. The results showed that the combination of both algorithms Beaufort Cipher and Affine Cipher restoring the intact plaintext. Testing the algorithm complexity is obtained (n ) . Thus concluded
the combination of both algorithms Beaufort Cipher and Affine Cipher fulfill the (n ) integrity of the data, the complexity of the algorithm is and the number of plaintext is directly proportional to the time.
Keywords: Cryptography, Beaufort Cipher, Affine Cipher, Three-pass Protocol,
Lehmann.DAFTAR ISI
Halaman Persetujuan i
Pernyataan ii
Penghargaan iii
Abstrak v
Abstract vi
Daftar Isi vii
Daftar Tabel ix
Daftar Gambar x
Daftar Lampiran xii
Bab 1 Pendahuluan
1.1 Latar Belakang
1
1.2 Rumusan Masalah
4
1.3 Batasan Masalah
4
1.4 Tujuan Penelitian
4
1.5 Manfaat Penelitian
4
1.6 Metodologi Penelitian
5
1.7 Sistematika Penulisan
7 Bab 2 Landasan Teori
2.1 Kriptografi
8
2.1.1 Definisi Kriptografi
8
2.1.2 Tujuan Kriptografi
8
2.1.3 Sistem Kriptografi Klasik
9
2.1.4 Sistem Kriptografi Modern
10
2.2 Three-pass Protocol
11
2.3 Affine Cipher
12
2.4 Vigenere Cipher
13
2.4.1 Varian Vigenere Cipher
16
2.5 Penelitian yang Relevan
18 Bab 3 Analisis dan Perancangan
3.1 Analisis Sistem
19
3.1.1 Analisis Masalah
19
3.1.2 Analisis Kebutuhan
22
3.1.2.1 Kebutuhan Fungsional
22
3.1.2.2 Kebutuhan Nonfungsional
23
3.1.3 Analisis Proses
24
3.1.4 Pseudocode
24
3.1.4.1 Pseudocode Mencari File
24
3.1.4.2 Pseudocode Membaca File
25
3.1.4.3 Pseudocode Kunci Beaufort Cipher
25
3.1.4.4 Pseudocode Enkripsi Beaufort Cipher
26
3.1.4.5 Pseudocode Algoritma Lehmann
26
3.1.4.6 Pseudocode Enkripsi Affine Cipher
27
3.1.4.7 Pseudocode Dekripsi Beaufort Cipher
27
3.1.4.8 Pseudocode Dekripsi Affine Cipher
27
3.2 Perancangan Sistem
28
3.2.1 Flowchart
28
3.2.1.1 Flowchart Beaufort Cipher
28
3.2.1.2 Flowchart Kunci Beaufort Cipher
29
3.2.1.3 Flowchart Affine Cipher
29
3.2.1.4 Flowchart Kunci Affine Cipher
30
3.2.1.5 Flowchart Sistem
31
3.2.2 Use Case
33
3.2.2.1 Use Case Diagram
33
3.2.3 Sequence Diagram
34
3.2.4 Activity Diagram
35
3.2.5 Mock-up
36
3.2.5.1 Halaman Awal
36
3.2.5.2 Halaman Beranda
37
3.2.5.3 Halaman Algoritma
38
3.2.5.4 Halaman Sistem
38 Bab 4 Implementasi dan Pengujian
4.1 Implementasi
41
4.1.1 Halaman Awal
41
4.1.2 Halaman Beranda
42
4.1.3 Halaman Algoritma
42
4.1.4 Halaman Sistem
43
4.2 Pengujian
44
4.2.1 Kunci Beaufort Cipher
45
4.2.2 Kunci Affine Cipher
47
4.2.3 Enkripsi Beaufort Cipher
48
4.2.4 Enkripsi Affine Cipher
51
4.2.5 Dekripsi Beaufort Cipher
53
4.2.6 Dekripsi Affine Cipher
55
4.2.7 Pengujian Kombinasi Kedua Algoritma
58 Bab 5 Kesimpulan dan Saran
5.1 Kesimpulan
60
5.2 Saran
61 Daftar Pustaka
62
DAFTAR TABEL
Halaman
Tabel 2.1 Bujursangkar Vigenere15 Tabel 4.1 Proses Perhitungan Kunci Beaufort Cipher
46 Tabel 4.2 Proses Perhitungan Kunci Affine Cipher
47 Tabel 4.3 Proses Enkripsi Beaufort Cipher
48 Tabel 4.4 Proses Enkripsi Affine Cipher
50 Tabel 4.5 Proses Dekripsi Beaufort Cipher
51 Tabel 4.6 Proses Enkripsi Affine Cipher
52 Tabel 4.7 Kompleksitas Algoritma Enkripsi Beaufort Cipher
53 Tabel 4.8 Kompleksitas Algoritma Enkripsi Affine Cipher
54 Tabel 4.9 Kompleksitas Algoritma Dekripsi Beaufort Cipher
54 Tabel 4.10 Kompleksitas Algoritma Dekripsi Affine Cipher
55 Tabel 4.11 Waktu Proses pada Plainteks 12 Karakter
56 Tabel 4.12 Waktu Proses pada Plainteks 20 Karakter
56 Tabel 4.13 Waktu Proses pada Plainteks 60 Karakter
57
DAFTAR GAMBAR
27 Gambar 3.9 Pseudocode Dekripsi Affine Cipher
38 Gambar 3.22 Mock-up Halaman Sistem
37 Gambar 3.21 Mock-up Halaman Algoritma
37 Gambar 3.20 Mock-up Halaman Beranda
36 Gambar 3.19 Mock-up Aksi konfirmasi keluar Sistem
35 Gambar 3.18 Mock-up Halaman Awal
34 Gambar 3.17 Activity Diagram Sistem
33 Gambar 3.16 Sequence Diagram Sistem
32 Gambar 3.15 Use Case Diagram Sistem
31 Gambar 3.14 Flowchart Sistem
31 Gambar 3.13 Flowchart B. Fungsi Bilangan Acak
30 Gambar 3.13 Flowchart A. Fungsi Pengacak Bilangan Prima
29 Gambar 3.12 Flowchart Algoritma Affine Cipher
28 Gambar 3.11 Flowchart Kunci Beaufort Cipher
27 Gambar 3.10 Flowchart Algoritma Beaufort Cipher
27 Gambar 3.8 Pseudocode Dekripsi Beaufort Cipher
Halaman
12 Gambar 2.4 Skema Affine Cipher
Gambar 1.1 Diagram Proses Algoritma Affine Cipher3 Gambar 1.2 Diagram Proses Algoritma Vigenere Cipher
3 Gambar 1.3 Alur Diagram Sistem
3 Gambar 2.1 Sistem Kriptografi Simetrik
10 Gambar 2.2 Sistem Kriptografi Asimetrik
11 Gambar 2.3 Skema Cara Kerja Three-pass Protocol
12 Gambar 2.5 Skema Vigenere Cipher
26 Gambar 3.7 Pseudocode Enkripsi Affine Cipher
14 Gambar 3.1 Diagram Ishikawa Masalah Penelitian
21 Gambar 3.2 Pseudocode Mencari File
24 Gambar 3.3 Pseudocode Membaca File
25 Gambar 3.4 Pseudocode Kunci Beaufort Cipher
25 Gambar 3.5 Pseudocode Enkripsi Beaufort Cipher
26 Gambar 3.6 Pseudocode Algoritma Lehmann dan Generator Bilangan Prima
39
Gambar 4.1 Tampilan Halaman Awal41 Gambar 4.2 Tampilan Halaman Beranda
42 Gambar 4.3 Tampilan Halaman Algoritma
43 Gambar 4.4 Tampilan Halaman Sistem
43 Gambar 4.5 Tampilan contoh pengujian Plainteks = kriptografi.
45 Gambar 4.6 Tampilan Plainteks Awal dan Acak Kunci Beaufort Cipher
46 Gambar 4.7 Tampilan Plainteks Awal dan Acak Kunci Affine Cipher
47 Gambar 4.8 Tampilan Hasil Cipherteks I
48 Gambar 4.9 Tampilan Hasil Cipherteks II
49 Gambar 4.10 Tampilan Hasil Cipherteks III
50 Gambar 4.11 Tampilan Hasil Plainteks Awal Kembali
52 Gambar 4.12 Grafik Hubungan Waktu Proses dan Karakter Plainteks
58