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 Vigenere

  15 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 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.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 Awal

  41 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