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
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
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,
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
iii
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.
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 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
v
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,
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 integrity of the data, the complexity of the algorithm is (n) and the number of plaintext is directly proportional to the time.
Keywords: Cryptography, Beaufort Cipher, Affine Cipher, Three-pass Protocol,
vii
2.5 Penelitian yang Relevan 18
Bab 3 Analisis dan Perancangan
3.1.4.4 Pseudocode Enkripsi Beaufort Cipher 26
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
Bab 4 Implementasi dan Pengujian
4.1 Implementasi 41
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
ix
DAFTAR TABEL
Halaman
Tabel 2.1 Bujursangkar Vigenere 15
DAFTAR GAMBAR
Halaman
Gambar 1.1 Diagram Proses Algoritma Affine Cipher 3 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.4 Skema Affine Cipher 12
Gambar 2.5 Skema Vigenere 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 26 Gambar 3.7 Pseudocode Enkripsi Affine Cipher 27 Gambar 3.8 Pseudocode Dekripsi Beaufort Cipher 27 Gambar 3.9 Pseudocode Dekripsi Affine Cipher 27 Gambar 3.10 Flowchart Algoritma Beaufort Cipher 28 Gambar 3.11 Flowchart Kunci Beaufort Cipher 29 Gambar 3.12 Flowchart Algoritma Affine Cipher 30 Gambar 3.13 Flowchart A. Fungsi Pengacak Bilangan Prima 31 Gambar 3.13 Flowchart B. Fungsi Bilangan Acak 31
Gambar 3.14 Flowchart Sistem 32
xi
Gambar 4.1 Tampilan Halaman Awal 41
DAFTAR LAMPIRAN
Halaman
A. Listing Program A-1