Kombinasi hybrid algortima hill cryptosystem teknik rail fence dan rabin pada javascript untuk keamanan data di website

(1)

KOMBINASI HYBRID ALGORTIMA HILL CRYPTOSYSTEM

TEKNIK RAIL FENCE DAN RABIN PADA JAVASCRIPT

UNTUK KEAMANAN DATA DI WEBSITE

TESIS

JOHANNES

127038033

PROGRAM STUDI S2 TEKNIK INFORMATIKA

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

MEDAN

2014


(2)

KOMBINASI HYBRID ALGORTIMA HILL CRYPTOSYSTEM

TEKNIK RAIL FENCE DAN RABIN PADA JAVASCRIPT

UNTUK KEAMANAN DATA DI WEBSITE

TESIS

Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh

ijazah Magister Teknik Informatika

JOHANNES

127038033

PROGRAM STUDI S2 TEKNIK INFORMATIKA

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

MEDAN

2014


(3)

LEMBAR PERSETUJUAN

Judul Tesis : KOMBINASI HYBRID ALGORTIMA HILL

CRYPTOSYSTEM TEKNIK RAIL FENCE DAN RABIN PADA JAVASCRIPT UNTUK KEAMANAN DATA DI WEBSITE

Kategori : TESIS

Nama Mahasiswa : JOHANNES

Nomor Induk Mahasiswa : 127038033

Program Studi : Magister (S2) Teknik Informatika

Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

Komisi Pembimbing :

Pembimbing 2 Pembimbing 1

Prof. Dr. Tulus, Vor. Dipl. Math, M.Si Prof. Dr. Muhammad Zarlis

Diketahui/disetujui Oleh,

Program Studi Magister (S2) Teknik Informatika, Ketua,

Prof. Dr. Muhammad Zarlis NIP. 19570701 198601 1 003


(4)

PERNYATAAN

KOMBINASI HYBRID ALGORTIMA HILL CRYPTOSYSTEM

TEKNIK RAIL FENCE DAN RABIN PADA JAVASCRIPT

UNTUK KEAMANAN DATA DI WEBSITE

Dengan ini penulis menyatakan bahwa tesis ini disusun sebagai syarat untuk memperoleh gelar pada Program Studi Magister S2 Teknik Informatika Universitas Sumatera Utara adalah benar merupakan hasil karya penulis sendiri.

Adapun pengutipan-pengutipan yang penulis lakukan pada bagian-bagian tertentu dari hasil karya orang lain dalam penulisan disertasi ini, telah penulis cantumkan sumbernya secara jelas sesuai dengan norma, kaidah, dan etika penulisan ilmiah.

Apabila di kemudian hari ternyata ditemukan seluruh atau sebagian disertasi ini bukan hasil karya penulis sendiri atau adanya plagiat dalam bagianbagian tertentu, penulis bersedia menerima sanksi pencabutan gelar akademik yang penulis sandang dan sanksi-sanksi lainnya sesuai dengan peraturan perundangan yang berlaku.

Medan, 17 Juli 2014

Johannes


(5)

PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN

AKADEMIS

Sebagai sivitas akademika Universitas Sumatera Utara, saya yang bertanda tangan di bawah ini:

Nama : Johannes

NIM : 127038033

Program Studi : Teknik Informatika Jenis Karya Ilmiah : Tesis

Dengan pengembangan ilmu pengetahuan, menyetujui untuk memberikan kepada Universitas Sumatera Utara Hak bebas Royalti Non-Eksklusif (non-Exlusive Royalty Free Right) atas tesis saya yang berjudul:

KOMBINASI HYBRID ALGORTIMA HILL CRYPTOSYSTEM

TEKNIK RAIL FENCE DAN RABIN PADA JAVASCRIPT

UNTUK KEAMANAN DATA DI WEBSITE

Beserta perangkat yang ada (jika diperlukan). Dengan Hak Bebas Royalti Non-Eksklusif ini, Universitas Sumatera Utara berhak menyimpan, mengalih media, memformat, mengelola dalam bentuk data-base, merawat dan mempublikasikan Tesis saya tanpa minta izin dari saya selama tetap mencantumkan nama saya sebagai penulis dan sebagai pemegang dan atau sebagai pemilik hak cipta.

Dengan pernyataan ini dibuat dengan sebenarnya.

Medan, 17 Juli 2014

Johannes


(6)

Telah diuji pada Tanggal : 17 Juli 2014

PANITIA PENGUJI TESIS

Ketua : Prof. Dr. Muhammad Zarlis Anggota : 1. Prof. Dr. Tulus

2. Prof. Dr. Herman Mawengkang 3. Dr. Syahril Efendi, S.Si, M.IT 4. Dr.Erna Budhiarti Nababan, M.IT


(7)

RIWAYAT HIDUP

DATA PRIBADI

Nama lengkap berikut gelar : Johannes

Tempat dan Tanggal Lahir : Medan, 11 Maret 1978

Alamat Rumah : Jl Pasundan Gg Menteng no 12 B Medan - 20118

Nomor HP : 085760750405

e-mail : jhn.rustan@gmail.com

Instansi Tempat Bekerja : Yayasan Perguruan Sutomo Alamat Kantor : Jl. Letkol Martinus Lubis no 7

DATA PENDIDIKAN

SD : SD Seri Arihta, Medan Tamat: 1990

SMP : SMP Jenderal Sudirman, Medan Tamat: 1993

SMA : SMA Sutomo 2, Medan Tamat: 1996

Strata-1 : Universitas Atma Jaya Yogyakarta Tamat: 2001


(8)

KATA PENGANTAR

Puji dan Syukur penulis panjatkan kepada Tuhan Yang Maha Esa, berkat limpahan rahmat dan karunia-Nya lah penulis dapat menyelesaikan Tesisini dengan bimbingan, arahan, kritik dan saran serta bantuan dari pembimbing, pembanding, segenap dosen, rekan-rekan mahasiswa Program Studi Magister ( S2 ) Teknik Informatika Universitas Sumatera Utara.

Tesis ini diajukan sebagai salah satu syarat untuk memperoleh gelar Magister Komputer pada Program Studi Pascasarjana Magister Teknik Informatika pada Fakultas Ilmu Komputer – Teknologi Informasi Universitas Sumatera Utara. Dengan judul tesis “Kombinasi hybrid algortima hill cryptosystem teknik rail fence dan rabin pada javascript untuk keamanan data di website”. Pada proses penulisan sampai dengan selesainya penulisan tesis ini, perkenankanlah penulis mengucapkan terima kasih yang sebesar-besarnya kepada:

1. Prof. Dr. Muhammad Zarlis selaku dekan Fakultas Ilmu Komputer dan Teknologi Informasi sekaligus Ketua Program Studi Magister ( S2 ) Teknik Informatika, dan M. Andri Budiman, S.T, M. Comp, M.E.M selaku Sekretaris Program Studi Magister ( S2 ) Teknik Informatika beserta seluruh staf pengajar pada Program Studi Magister ( S2 ) Teknik Informatika Program Pascasarjana Fakultas Teknik Informatika Universitas Sumatera Utara, yang telah bersedia membimbing penulis sehingga dapat menyelesaikan pendidikan tepat pada waktunya.

2. Terima kasih yang tak terhingga dan penghargaan setinggi - tingginya saya ucapkan kepada Prof. Dr. Muhammad Zarlis, selaku pembimbing utama dan kepada Prof. Dr. Tulus selaku pembimbing lapangan yang penuh dengan kesabaran menuntun serta membimbing saya hingga selesainya tesis ini dengan baik.

3. Terima kasih yang tak terhingga dan penghargaan setinggi – tingginya saya ucapkan kepada Prof. Dr. Herman Mawengkang, Dr.Syahril Efendi,S.Si, M.IT, Dr. Erna Budhiarti Nababan, M.IT sebagai pembanding yang telah memberikan saran dan masukan serta arahan yang baik demi penyelesaian tesis ini.

4. Terima kasih juga terhadap M. Andri Budiman, S.T, M. Comp, M.E.M yang telah membimbing dan memberikan banyak masukkan hingga terselesaikannya tesis ini.

5. Staf Pegawai dan Administrasi pada Program Studi Magister ( S2 ) Teknik Informatika Program Pascasarjana Fakultas Teknik Informatika Universitas Sumatera Utara yang telah memberikan bantuan dan pelayanan terbaik kepada penulis selama mengikuti perkuliahan hingga saat ini.


(9)

6. Rekan mahasiswa / I angkatan tahun 2012 pada Program Pascasarjana Fakultas Teknik Informatika Universitas Sumatera Utara yang telah banyak membantu penulis baik berupa dorongan semangat dan doa selama mengikuti perkuliahan. 7. Seluruh pihak yang tidak dapat penulis sebutkkan satu persatu dalam tesis ini,

terima kasih atas segala bantuan dan doa yang diberikan.

Dengan segala kekurangan dan kerendahan hati, sekali lagi penulis mengucapkan terima kasih. Semoga kiranya Allah SWT membalas segala bantuan dan kebaikan yang telah kalian berikan.

Medan, 17 Juli 2014

Johannes


(10)

ABSTRAK

Beberapa hasil penelitian tentang keamanan data menunjukkan bahwa perlunya pengembangan kombinasi baru antara teknik klasik dengan teknik modern, yang bertujuan untuk meningkatkan keamanan serta kecepatan. Algoritma Hill dikenal dikenal sebagai salah satu algortima klasik yang menggunakan tabel kunci dengan perkalian matrik dan digabungkan dengan teknik Rail Fence, serta kunci dari Hill juga dilakukan pengenkripsian dengan algoritma Rabin, sehingga nantinya akan menjadikan sebuah kombinasi algortima yang lebih aman digunakan.


(11)

COMBINATION HYBRID ALGORITHMS HILL CRYPTOSYSTEM WITH RAIL FENCE AND RABIN IN JAVASCRIPT

DATA SECURITY FOR WEBSITE

ABSTRACT

Some security data research that the need for development of a new combination between classic tecniques with modern techniques, whic aims to improe the security and speed. Hill algorithm is know as one of the classic algorithm that use matrix multiplication with table of key , combined with Rail Fence and the hill’s key will be proceed with Rabin Algorithm so that can make the data more safer to use.


(12)

DAFTAR ISI

Halaman

KATA PENGANTAR i

ABSTRAK iii

ABSTRACT iv

DAFTAR ISI v

DAFTAR GAMBAR viii

DAFTAR TABEL ix

BAB I : PENDAHULUAN 1.1. Latar Belakang Masalah ... 1

1.2. Rumusan Masalah ... 1

1.3. Batasan Masalah ... 2

1.4. Tujuan Penelitian ... 2

1.5. Manfaat Penelitian ... 2

BAB II : TINJAUAN PUSTAKA 2.1. Definisi Kriptografi ... 3

2.2. Tujuan Kriptografi ... 3

2.4. Jenis Kriptografi ... 4

2.4.1 Caesar Cipher ... 4

2.4.2. Transformasi Affine ... 6

2.4.3. Cipher Vigenere ... 8

2.4.4. Cipher Hill ... 10

2.4.5. Rail Fence ... 12

2.4.6. Rabin ... 12

2.5. Javascript ... 19

2.5.1. Kelebihan Javascript ... 20

2.5.2. Penggunaan Javascript ... 20

2.6. Riset-riset terkait ... 21

2.7. Perbedaan Dengan Riset Yang Lain ... 23


(13)

BAB III : METODE PENELITIAN

3.1. Studi Literatur ... 24

3.2. Analisa Permasalahan ... 24

3.3. Hipotesis ... 24

3.4. Perancangan Sistem ... 24

3.4.1. Perancangan Keamanan Data di Website ... 26

3.4.2. Proses Enkripsi ... 26

3.4.2.1 Menterjemahkan proses kata kunci menjadi matrik ... 26

3.4.2.2 Menterjemahkan matrik dari isi pesan ... 27

3.4.2.3 Proses kata kunci dengan matrik pesan ... 28

3.4.2.4 Proses enkripsi Rail Fence ... 30

3.4.3 Proses enkripsi Rabin ... 31

3.4.4 Proses pengiriman pesan teks yang sudah dienkripsi ... 32

3.4.5 Proses Dekripsi ... 32

3.4.5.1 Proses Dekripsi Rabin ... 32

3.4.5.2 Proses Dekripsi Tail Fence ... 35

3.4.5.3 Proses Dekripsi Hill ... 36

3.4.5.4 Menterjemahkan matrik yang akan didekripsi ... 36

3.4.5.5 Proses Matrik Invers dengan Matrik Pesan ... 37

3.4.5.6 Hasil Akhir Dekripsi ... 38

3.5. Implementasi Sistem ... 38

3.6. Diagram Alir Penelitian ... ... 40

BAB IV : HASIL DAN PEMBAHASAN 4.1. Pendahuluan... ... 41

4.2. Proses Enkripsi dan Dekripsi.. ... 41

4.2.1. Proses Enkripsi Data dengan Hill dan Rail Fence... 41

4.2.2. Proses Enkripsi Kunci Hill dengan Rabin... ... 42

4.2.3. Proses Dekripsi Kunci Hill dengan Rabin... ... 43

4.2.4. Proses Dekripsi dengan Hill Cipher... ... 44


(14)

4.4. Hasil Penelitian.. ... 46

4.4.1. Perhitungan waktu enkripsi ... 46 4.4.2. Perhitungan waktu dekripsi ... 49

BAB IV : KESIMPULAN DAN SARAN

5.1. Kesimpulan ... 53 5.2 Saran ... 53


(15)

DAFTAR GAMBAR

Gambar 3.1 Proses Enkripsi dan Pengiriman Ciphertext ... 16

Gambar 3.2 Proses Dekripsi Ciphertext ... 16

Gambar 3.3 Installasi Apache di Linux ... 39

Gambar 3.4 Web Server ... 39

Gambar 3.5 Diagram Alir Penelitian ... 40

Gambar 4.1 Proses Enkripsi Hill dan Rail Fence ... 41

Gambar 4.2 Proses Enkripsi Kunci Hill dengan Rabin ... 42

Gambar 4.3 Proses Dekripsi Kunci Hill dengan Rabin ... 43

Gambar 4.4 Proses Dekripsi Dengan Hill Cipher ... 44

Gambar 4.5 Waktu Enkripsi ... 44

Gambar 4.6 Waktu Dekripsi ... 45

Gambar 4.7 Grafik Enkripsi ... 46


(16)

DAFTAR TABEL

Tabel 2.1. Huruf Setara Angka ... 4

Tabel 2.2. Korespondensi huruf untuk Cipher Caesar ... 5

Tabel 2.3. Korespondensi huruf untuk Cipher dengan C≡7P+10(Mod 26) ... 7

Tabel 2.4. Riset Terkait ... 21

Tabel 3.1. Kunci Hill ... 26

Tabel 4.2. Waktu untuk Enkripsi ... 46


(17)

ABSTRAK

Beberapa hasil penelitian tentang keamanan data menunjukkan bahwa perlunya pengembangan kombinasi baru antara teknik klasik dengan teknik modern, yang bertujuan untuk meningkatkan keamanan serta kecepatan. Algoritma Hill dikenal dikenal sebagai salah satu algortima klasik yang menggunakan tabel kunci dengan perkalian matrik dan digabungkan dengan teknik Rail Fence, serta kunci dari Hill juga dilakukan pengenkripsian dengan algoritma Rabin, sehingga nantinya akan menjadikan sebuah kombinasi algortima yang lebih aman digunakan.


(18)

COMBINATION HYBRID ALGORITHMS HILL CRYPTOSYSTEM WITH RAIL FENCE AND RABIN IN JAVASCRIPT

DATA SECURITY FOR WEBSITE

ABSTRACT

Some security data research that the need for development of a new combination between classic tecniques with modern techniques, whic aims to improe the security and speed. Hill algorithm is know as one of the classic algorithm that use matrix multiplication with table of key , combined with Rail Fence and the hill’s key will be proceed with Rabin Algorithm so that can make the data more safer to use.


(19)

BAB 1

PENDAHULUAN

1.1. Latar Belakang Masalah

Internet telah menjadikan perubahan sistim pembelajaran menjadi digital dan tanpa batas, dimana semua informasi bisa didapatkan melalui Internet. Kemajuan yang sangat drastis ini menjadikan internet sebagai sarana untuk mendapatkan informasi, begitu juga dengan perkembangan teknik kriptografi, semua algortima yang telah ditemukan dapat dipelajari di internet sehingga perlu adanya kita melakukan pengkombinasian algoritma yang ada sehingga nantinya akan membuat data kita lebih aman daripada kita menggunakan algoritma yang sudah ada.

Beberapa perbandingan teknik enkripsi dan dekripsi baik secara klasik maupun modern telah dilakukan (Kumar, M., Mishra, R., Pandey, R. K., & Singh, P.,2010) menunjukkan perlu adanya pengembangan algoritma yang baru, yang bisa meningkatkan kekuatan proses enkripsi. Begitu juga dengan bagaimana mendesign serta mengimplementasikan suatu algortima yang baru untuk meningkatkan kecepatan (Jain, R., & Shivastava,A.,2012)

Berdasarkan latar belakang masalah di atas, penulis mencoba merancang bagaimana menggabungkan proses enkripsi dengan metode klasik dan modern (Saeed, 2010) sehingga nantinya memunculkan suatu kombinasi algoritma yang baru yang lebih sulit untuk melakukan dekripsi data.

Perkembangan yang pesat juga terjadi pada browser, dimana pada saat sekarang sudah berubah menjadi browser yang mendukung HTML5, yang memiliki penyimpanan Web SQL, IndexedDB, Local Storage, Session Storage, Cookies serta Application Cache. Dengan perkembangan ini keamanan browser menjadi perlu lebih ditingkatkan.


(20)

1.2. Rumusan Masalah

Dari uraian sebelumnya maka penulis mengambil rumusan permasalahan bahwa diperlukannya proses keamanan data yang baru, yang salah satunya bisa dibuat dengan menggunakan kombinasi algoritma yang ada sehingga data yang tersimpan menjadi aman. Penulis mencoba menggunakan Algoritma Hill Cipher,yang dikenal dengan teknik subsitusi dengan perkalian matriknya. Digabungkan dengan Rail Fence yang dikenal dengan teknik transpoisi zigzag, kemudian dari kunci Hill dilakukan proses enkripsi dengan algoritma Rabin, yang terkenal dengan kesulitan dalam hal faktorisasinya sehingga nantinya menjadi suatu kombinasi antara metode klasik dan metode modern.

Dalam perumusannya akan dilakukan berbasis web, sehingga nantinya script yang akan digunakan adalah php yakni bahasa pemrograman web server side serta Javascript , bahasa pemrograman yang bisa diproses oleh semua browser hingga pada mobile.

1.3. Batasan Masalah

Agar pembahasan ini tidak menyimpang dari apa yang telah dirumuskan, maka diperlukan batasan-batasan penelitian. Adapun batasan-batasan dalam penelitian ini adalah :

1. Pesan yang akan dilakukan pada proses enkripsi dan dekripsi adalah bentuk teks 2. Waktu enkripsi dan dekripsi

3. Penggunaan kata kunci hanya terbatas pada angka

1.4. Tujuan Penelitian

Tujuan penelitian tesis ini menganalisa kerja kombinasi algoritma Hill Cipher, Rail Fence Cipher dan Algoritma Rabin untuk proses keamanan pada teks sehingga dari


(21)

kombinasi algoritma tersebut dihasilkan tingkat keamanan yang tinggi namun cepat dalam proses enkripsi dan dekripsi

1.5. Manfaat Penelitian

Manfaat yang dapat diambil dari penelitian tesis ini adalah : 1. Menghasilkan suatu kombinasi algoritma yang baru

2. Memberikan manfaat yang lebih baik mengenai cara mengkombinasikan algoritma Hill Cipher, Rail Fence Cipher dengan Algoritma Rabin


(22)

BAB II

TINJAUAN PUSTAKA

2.1. Definisi Kriptografi

Kriptografi adalah ilmu yang menggunakan matematika untuk mengenkripsi dan mendekripsi data. Kriptografi memungkinkan kita untuk menyimpan informasi dan mengirimkan sehingga tidak dapat dibaca oleh siapapun kecuali penerima yang dituju. Enkripsi adalah sebuah proses penyandian yang melakukan perubahan sebuah kode (pesan) dari yang bisa dimengerti (plainteks) menjadi sebuah kode yang tidak mudah dimengerti (cipherteks). Sedangkan proses kebalikannya untuk mengubah cipherteks menjadi plainteks disebut dekripsi. Proses enkripsi dan dekripsi memerlukan suatu mekanisme dan kunci tertentu.

Kriptoanalisis (cryptanalysis) adalah kebalikan dari kriptografi, yaitu suatu ilmu untuk memecahkan mekanisme kriptografi dengan cara mendapatkan kunci dari cipherteks yang digunakan untuk mendapatkan plainteks. Kriptologi (cryptology) adalah ilmu yang mencakup kriptografi dan kriptoanalisis.

2.3. Tujuan Kriptografi

Ada empat tujuan mendasar dari kriptografi yang juga merupakan aspek keamanan informasi, yaitu (Ir. Rinaldi Munir , Pengantar Kriptografi, 2004) :

 Kerahasiaan, adalah aspek yang berhubungan dengan penjagaan isi informasi dari siapapun kecuali yang memiliki otoritas atau kunci rahasia untuk membuka informasi yang telah dienkripsi.


(23)

 Keabsahan pengirim (user authentication) , adalah menjaga bahwa pesan yang diterima benar-benar dari pengirim yang sesungguhnya

 Keaslian Pesan (Message Autentication), berhubungan dengan keutuhan pesan, selama proses pengiriman tidak terjadi perubahan atas pesan yang telah diterima.

 Non-repudiation (antid penyangkalan), adalah usaha untuk mencegah terjadinya penyangkalan terhadap pengiriman suatu informasi oleh yang mengirimkan, atau harus dapat membuktikan bahwa suatu pesan berasal dari seseorang, apabila ia menyangkal mengirim informasi tersebut.

2.4. Jenis Kriptografi 2.4.1 Caesar Cipher

Merupakan algoritma terlama dari Julius Caesar dengan metode penggeseran. Setiap huruf angka akan digeser sejauh k.

Tabel 2.1. Huruf Setara Angka

Huruf A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Angka 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25

Tentu saja, jika kita mengirim pesan Rusia, Yunani, Ibrani atau bahasa lain kita akan menggunakan berbagai bilangan bulat yang sesuai abjad. Kita mungkin juga ingin memasukkan tanda baca, simbol untuk menunjukkan kosong, dan mungkin untuk mewakili digit nomor sebagai bagian dari pesan. Namun, demi kesederhanaan, kita membatasi diri pada huruf-huruf alfabet Inggris.

Pertama, kita bahas berdasarkan sistem kerahasiaan mengubah setiap huruf dari pesan plaintext menjadi huruf yang berbeda untuk menghasilkan ciphertext. Cipher seperti ini disebut cipher karakter atau monografi, karena setiap huruf berubah secara individu dengan huruf lain dengan substitusi. Secara keseluruhan, ada 26! cara yang


(24)

mungkin untuk menghasilkan transformasi monografi. Kita akan membahas yang didasarkan pada aritmatika modular.

Sebuah cipher, yang digunakan oleh Julius Caesar, didasarkan pada substitusi di mana setiap huruf digantikan dengan huruf tiga bagian bawah abjad, dengan tiga huruf terakhir bergeser ke tiga huruf pertama dari alfabet. Untuk menggambarkan cipher ini menggunakan aritmatika modular, biarkan P menjadi setara numerik huruf dalam plaintext dan C setara numerik dari huruf ciphertext yang sesuai. Kemudian N adalah panjang tabel ( Rosen K.H, 2011)

C≡P+ 3( mod N),0 ≤C≤ N-1

Korespondensi antara plaintext dan ciphertext diberikan dalam Tabel 2.1 Tabel 2 .2. Korespondensi huruf untuk Cipher Caesar

Plaintext A

0 B 1 C 2 D 3 E 4 F 5 G 6 H 7 I 8 J 9 K 10 L 11 M 12 N 13 O 14 P 15 Q 16 R 17 S 18 T 19 U 20 V 21 W 22 X 23 Y 24 Z 25

Ciphertext 3

D 4 E 5 F 6 G 7 H 8 I 9 J 10 K 11 L 12 M 13 N 14 O 15 P 16 Q 17 R 18 S 19 T 20 U 21 V 22 W 23 X 24 Y 25 Z 0 A 1 B 2 C

Untuk menulis dalam kode pesan menggunakan transformasi ini, pertama diubah ke setara angkanya, dengan pengelompokan huruf dengan lima blok. Kemudian kita mengubah setiap angka. Langkah ini disebut dengan enkripsi pesan.

Secara singkat, langkah- langkah untuk mengenkripsi pesan dari cipher caesar sebagai berikut:

a. Huruf diubah menjadi angka ( lihat tabel 2.1),

b. Menggunakan transformasi C≡ P + 3 (mod N) untuk memperoleh pesan ciphertext,


(25)

Contoh:

Enkripsikan pesan : JOHANNES RUSTAN dengan k =3 pesan menjadi : 9 14 7 0 13 13 4 17 20 18 19 0 13

Menggunakan transformasi Caesar C≡P+ 3 (mod N) ini menjadi 12 17 10 3 16 16 7 20 23 21 22 3 16

Penerjemahan kembali ke huruf, diperoleh M R K D Q Q H V U X V W D Q

Ini adalah pesan yang dikirim.

Untuk mendeskripsikan pesan, pertama terlebih dahulu pesan dikonversi ke angka. Kemudian, hubungan C≡P+ 3(mod N), 0 ≤ C ≤ N-1 digunakan untuk mengubah ciphertext kembali ke plaintext.

Secara singkat, langkah- langkah untuk mendeskripsi pesan dari cipher caesar sebagai berikut:

a. Ubah huruf menjadi angka ( lihat tabel 2.1 ),

b. Menggunakan transformasi P≡ C−3(Mod N) untuk memperoleh pesan plaintext c. Ubah angka kembali menjadi huruf,

d. Susun huruf sehingga mempunyai arti. Contoh:

M R K D Q Q H V U X V W D Q Pertama, mengubah huruf menjadi angka, diperoleh

12 17 10 3 16 16 7 20 23 21 22 3 16

Selanjutnya, melakukan transformasi P ≡ C−3(Mod N) untuk mengubah menjadi plaintext, dan diperoleh


(26)

9 14 7 0 13 13 4 17 20 18 19 0 13 Megubah angka kembali ke huruf,

JOHANNESRUSTAN

Dengan menggabungkan huruf-huruf yang sesuai dengan kata-kata, kita menemukan bahwa pesan tersebut

JOHANNES RUSTAN

2.4.2. Transformasi Affine

Affine Cipher adalah salah satu dari keluarga cipher serupa digambarkan oleh shift transformasi:

C ≡P+k(mod 26) dimana 0 ≤C≤ 25

di mana k adalah kunci yang mewakili ukuran pergeseran huruf dalam alfabet. Ada 26 transformasi yang berbeda dari jenis ini, termasuk kasus k = 0 (mod 26), di mana huruf tidak berubah, karena dalam hal ini C≡P(Mod26). Secara umum,

C≡aP+b(mod 26), 0 ≤C≤ 25

dimana a dan b adalah bilangan bulat dengan (a, 26) = 1. Ini disebut transformasi affine. Shift transformasi adalah transformasi affine dengan a=1 . Mengharuskan gcd(a, 26) = 1, sehingga P berjalan melalui sistem residu lengkap modulo 26, demikian juga dengan C. Ada Φ(26)=12 pilihan untuk a, dan 26 pilihan untuk b, memberikan total 12×26=312 transformasi jenis ini (salah satunya adalah C = P (mod 26) diperoleh bila a = 1 dan b = 0. Jika hubungan antara plaintext dan ciphertext dijelaskan oleh (2.1), maka hubungan terbalik diberikan oleh


(27)

Contoh:

a = 7 dan b = 10, sehingga C≡ 7P+10(mod 26) Oleh karena itu, P≡15(C−10)≡15C+ 6(mod 26). 15 adalah invers dari 7 modulo 26.

Korespondensi antara huruf diberikan dalam Tabel 2.3.

Table 2 .3. Korespondensi huruf untuk Cipher dengan C≡ 7P+10(Mod 26)

Plaintext A

0 B 1 C 2 D 3 E 4 F 5 G 6 H 7 I 8 J 9 K 10 L 11 M 12 N 13 O 14 P 15 Q 16 R 17 S 18 T 19 U 20 V 21 W 22 X 23 Y 24 Z 25

ciphertext 10

K 17 R 24 Y 5 F 12 M 19 T 0 A 7 H 14 O 21 V 2 C 9 J 16 Q 23 X 4 E 11 L 18 S 25 Z 6 G 13 N 20 U 1 B 8 I 15 P 22 W 3 D

Untuk menggambarkan memperoleh korespondensi tersebut, perhatikan bahwa huruf plaintext L dengan setara angka 11 sesuai dengan huruf J pada ciphertext, 7×11+10 =87 ≡ 9(Mod26) dan 9 setara dengan J.

Langkah- langkah untuk mengenkripsi pesan dari transformasi affine sebagai berikut: a. Huruf diubah menjadi angka ( lihat tabel 2.1)

b. Menggunakan transformasi C≡7P+10(mod 26)untuk memperoleh pesan ciphertext

c. Angka diubah menjadi huruf

Langkah- langkah untuk mendeskripsi pesan dari transformasi affine sebagai berikut: a. Ubah huruf menjadi angka ( lihat tabel 2.1 ),

b. Menggunakan transformasi P ≡ 15 C + 6 (mod 26 ) untuk memperoleh pesan plaintext

c. Ubah angka kembali menjadi huruf d. Susun huruf sehingga mempunyai arti


(28)

Contoh :

Enkripsikan pesan: JOHANNES RUSTAN

Mengubah huruf menjadi angka, selanjutnya menggunakan transformasi C≡ 7P+10(Mod26), sehingga diperoleh

J = 9 maka C = 7. 9 + 10 = 73≡ 21 ( mod 26 ), sehingga J menjadi V. O = 14 maka C = 7. 14 + 10 = 108 ≡ 4 ( mod 26), sehingga O menjadi E

Dan selanjutnya sampai huruf terakhir dapat dilihat dengan cepat melalui tabel 2.3 diatas, di peroleh : VEHKXXMG ZUGNKX

Deskripsikan pesan: VEHKXXMG ZUGNKX

Menggunakan rumus P ≡ 15 C + 6 (mod 26 ) di peroleh

V = 21 maka P = 15. 21 + 6 = 321 ≡ 9 ( mod 26 ), sehingga V menjadi J. E = 4 maka P = 15. 4 + 6 = 66 ≡ 14 ( mod 26 ), sehingga E menjadi O. Dan seterusnya sampai huruf terakhir, hasil akhir menjadi

JOHANNESRUSTAN

2.4.3. Cipher Vigenere

Untuk mengenkripsi pesan plaintext, pertama kita membagi menjadi blok dengan panjang n. Sebuah blok yang terdiri dari pesan dengan setara numerik p1, p2, ... pn berubah menjadi blok ciphertext dengan huruf setara numerik c1, c2,..., cn menggunakan cipher pergeseran urutan dengan


(29)

untuk i = 1 2, ... , n. Vigenère cipher adalah algoritma enkripsi dimana huruf plaintext dengan panjang n, dienkripsi pesan ciphertext yang sama panjang. Vigenere cipher dapat dianggap sebagai cipher yang beroperasi dengan panjang n menggunakan kunci dengan panjang n.

Langkah – langkah untuk mengenkripsikan pesan dari cipher vigenere sebagai berikut: a. Pesan dan kunci diubah menjadi angka ( lihat tabel 2.1),

b. Huruf- huruf yang ada di pesan (P1, P2, P3,P4...) dan huruf di kunci (K1,K2, K3,K4,K5,.... )

c. Menggunakan Cipher Vigenere Ci ≡ Pi + Ki (mod 26)

d. Angka tersebut diartikan ke dalam huruf menggunakan tabel 2.1 e. Huruf di kelompokkan menjadi 5 huruf.

Contoh:

Enkripsikan pesan JOHANNES dengan kunci RUSTAN menggunakan Cipher Vigenere.

Pertama, artikan pesan dan kunci ke dalam angka ( tabel 2.1 )

J O H A N N E S

9 14 7 0 13 13 4 18

p1 p2 p3 p4 p5 p6 p7 p8 Dan

R U S T A N

17 20 18 19 0 13

k1 k2 k3 k4 k5 K6

Menggunakan Cipher Vigenere: Ci ≡ Pi + Ki (mod 26) di peroleh:


(30)

C1 =p1 + k1 = 9 + 17 ≡ 0 ( mod 26 ) C2 =p2 + k2 = 14 + 20 ≡ 8 ( mod 26 ) C3 =p3 + k3 = 7 + 18 ≡ 25 ( mod 26 ) C4 =p4 + k4 = 0 + 19 ≡ 19 ( mod 26 ) C5 =p5 + k5 = 13 + 0 ≡ 13 ( mod 26 ) C6 =p6 + k6 = 13 + 13 ≡ 0 ( mod 26 ) C7 =p7 + k7 = 4 + 17 ≡ 21 ( mod 26 ) C8 =p8 + k8 = 18 + 20 ≡ 12 ( mod 26 )

Angka tersebut diartikan ke dalam huruf menggunakan tabel 2.1, kita peroleh AIZTNA VM

Langkah – langkah untuk mengdeskripsikan pesan dari cipher vigenere sebagai berikut: a. Pesan dan kunci diubah menjadi angka ( lihat tabel 2.1),

b. Huruf- huruf yang ada di pesan (C1, C2, C3,C4...) dan huruf di kunci (K1,K2, K3, K4, K5,.... )

c. Menggunakan Cipher Vigenere Pi ≡ Ci - Ki (mod 26)

d. Angka tersebut diartikan ke dalam huruf menggunakan tabel 2.1 e. Susun huruf sehingga mempunyai arti.

Contoh:

Deskripsikan pesan AIZTNA VM menggunakan Cipher Vigenere dengan kunci RUSTAN.

Artikan pesan tersebut dengan angka ( lihat tabel 2.1 )


(31)

c1 c2 c3 c4 c5 c6 c7 c8 dan

R U S T A N

17 20 18 19 0 13

k1 k2 k3 k4 k5 K6 Menggunakan Cipher Vigenere:

ci ≡ pi + ki ( mod 26 )

pi ≡ ci - ki ( mod 26 ) di peroleh: p1≡ c1 - k1 = 0 - 17 ≡ 9 ( mod 26 ) p2≡ c2 - k2 = 8 - 20 ≡ 14 ( mod 26 ) p3≡c3 - k3 = 25 –18 ≡ 7 ( mod 26 ) p4≡ c4 - k4 = 19 –19 ≡ 0 ( mod 26 ) p5≡ c5 - k5= 13 - 0 ≡ 13 ( mod 26 ) p6≡ c6 - k6 = 0- 13 ≡ 13 ( mod 26 ) p7≡ c7 - k7 = 21 - 17 ≡ 4 ( mod 26 ) p8≡ c8 - k8 = 12 - 20 ≡ 18 ( mod 26 )

Angka tersebut di kembalikan ke dalam huruf dengan menggunakan tabel 8.1, diperoleh pesan JOHANNES

2.4.4. Cipher Hill

Cipher Hill diciptakan oleh Lester Hill di tahun 1929. Untuk memperkenalkan cipher Hill, pertama-tama setiap blok dari dua huruf dari plaintext digantikan oleh sebuah blok


(32)

dari dua huruf ciphertext (menambahkan huruf boneka X, pada akhir pesan, jika perlu, sehingga blok akhir memiliki dua huruf).

Langkah – langkah untuk mengenkripsikan pesan dari cipher hill sebagai berikut:

a. Kelompokkan pesan menjadi 2 huruf (menambahkan huruf X, pada akhir pesan, jika perlu, sehingga blok akhir memiliki dua huruf),

b. Huruf-huruf ini diterjemahkan ke dalam setara numerik ( Tabel 2.1 ), c. Menggunakan transformasi yang ditentukan,

d. Ubah angka tersebut menjadi huruf. Contoh:

JOHANNES RUSTAN

Pertama kita bagi pesan menjadi dua huruf (menambahkan huruf X, pada akhir pesan, jika perlu, sehingga blok akhir memiliki dua huruf).

JO HA NN ES RU ST AN

Berikutnya, huruf-huruf ini diterjemahkan ke dalam setara numerik ( Tabel 2.1 ), diperoleh

9 14 7 0 13 13 4 18 17 20 18 19 0 13 Misal,

C1≡ 5P1 + 17P2 ( mod 26 ), 0 ≤C1≤ 26 C2 ≡ 4P1 + 15P2 ( mod 26 ), 0 ≤C2≤ 26 Untuk 9 dan 14

C1≡ 5 . 9 + 17 . 14 ≡ 23 ( mod 26 ), 0 ≤C1≤ 26 C2≡ 4 . 9 + 15 . 14 ≡ 12 ( mod 26 ), 0 ≤C2≤ 26


(33)

23 12 9 2 0 13 14 0 9 4 23 19 13 13

Angka tersebut di ubah ke huruf dengan menggunakan tabel 2.1 XM JC AN OA JE XT NN

Langkah – langkah untuk mengdeskripsikan pesan dari cipher hill sebagai berikut: a. Huruf-huruf ini diterjemahkan ke dalam setara numerik ( Tabel 8.1 ), b. Menggunakan transformasi yang ditentukan,

c. Ubah angka tersebut menjadi huruf. Untuk mendeskripsikan :

XM JC AN OA JE XT NN Diterjemahkan dengan tabel 2.1 23 12 9 2 0 13 14 0 9 4 23 19 13 13 Bentuk:

C1≡ 5P1 + 17P2 ( mod 26 ) C2≡ 4P1 + 15P2 ( mod 26 )

Diubah, dengan menggunakan matrik dan mencari inversnya.

( 7)(� ) ≡ (� )

Mencari (� ) dengan mencari invers dari ( 7) , diperoleh P1 ≡ 17C1 + 5C2 ( mod 26 )

P2 ≡ 18C1 + 23C2 ( mod 26 ) Untuk 23 dan 12

P1 ≡ 17. 23 + 5 . 12 ≡ 9 ( mod 26 ) P2 ≡ 18 . 23 + 23. 12 ≡ 14 ( mod 26 )


(34)

Dengan cara yang sama diperoleh

9 14 7 0 13 13 4 18 17 20 18 19 0 13 Angka tersebut diterjemahkan dengan tabel 2. 1

JO HA NN ES RU ST AN Dengan menggabungkan huruf-huruf yang sesuai dengan kata-kata, kita menemukan bahwa pesan tersebut : JOHANNES RUSTAN

2.4.5. Rail Fence

Sistem ini dikenal sebagai sistem transformasi dalam proses ciphering-nya, yang pertama adalah membagi teks menjadi 3 bagian dengan menyusun pesan dari kolom kiri ke kanan dalam tiga baris kemudian disusun kembali menjadi satu baris dari baris paling atas ke baris paling bawah. (aamt, 2012)

Contoh:

Plaintext: JOHANNES RUSTAN

J A E U A

O N S S N

H N R T

Ciphertext: J A E U A O N S S N H N R T

2.4.6. Rabin

Dipublikasikan oleh Michael O.Rabin pada tahun 1979, merupakan algortima asymetris pertama yang dibuktikan sangat sulit dalam faktorial. Rabin menggunakan kunci publik dan kunci private. Untuk mengenkripsi Rabin menggunakan C = m2 mod N, dimana


(35)

X2 = C mod N

Keuntungan dari menggunakan eksponen 2 dibandingkan dengan eksponen yang lebih besar dalah komputasinya yang lebih kecil serta pemecahannya dengan faktorial N .

Contoh : B melakukan enkripsi pesan m dan mengirimkan ciphertext C ke A

Enkripsi :

- Mendapatkan kunci publik A

- Representasikan pesan menjadi integer m dalam batasan {0,1,..n-1) - Komputasi c=m2 mod n

- Mengirimkan pesan ciphertext C ke A

Dekripsi Pesan C dengan cara : - Komputasi √C mod n

- Ada 4 akar yakni m1, m2, m3, m4 dari C modulo n - Pesan m sama dengan salah satu dari akar diatas

Ketika p≡3 mod 4 maka akan ada formula untuk menghitung akar dari C pad mod p.


(36)

Oleh karena itu dua akar kuadrat dari c mod p adalah

Dan juga dengan dua akar kuadrat dari c mod q adalah

Kemudian kita dapat memperoleh empat akar kuadrat dari c mod n dengan menggunakan teori Chinese Remainder

Misal : n=77 = 7 x 11 C = m2 mod 77

Maka untuk pesan m maka ciphertext c adalah √c mod 77

Untuk melakukan dekripsi kita memerlukan perhitungan c≡102≡ 23 mod 77 dengan

contoh misalkan panjang m adalah sebesar 10.

Untuk menemukan akar kuadrat dari 23 mod 7 dan mod 11 kita dapat gunakan karena formula untuk 7 dan 11 adalah kongruen dari 3 mod 4.

23 (7+1)/4≡ 22≡ 4 mod 7

23 (11+1)/4≡ 13≡ 1 mod 11

Dengan menggunakan Teori Chinese Remainder maka kita mendapatkan 4 buah akar dari 23 mod 77 adalah ±10, ±32 mod 77

Maka itu kemungkinan pesan yang ada adalah m1=10 , m2=67, m3=32 dan m4=45 Dari empat buah kemungkinan itu, kita bisa mendapatkan dengan cara menggunakan salah satu varian dari simbol jacobi (Michele E.,2011)


(37)

Dimana bo adalah untuk menentukan apakah angka yang didapatkan genap atau ganjil, serta b1 adalah hasil akhir yang memiliki nilai yang harus sama dengan m.

b0 = 10 mod 2 = 0

b1= [1 + (�) ] = 0.56493506

Artinya parity atau jenis angkanya adalah genap, dari m1,m2,m3 dan m4 yang memenuhi syarat adalah m1 dan m3. Kemudian dimasukkan ke dalam rumus b1 untuk mencari nilai m yang benar dari dua kemungkinan m1 atau m3.

b1= [1 + (�) ]

dengan masukkan m1 didapati b1 = 0.56493506 dengan masukkan m2 didapati b1 = 0.70779220

maka yang memenuhi syarat akhir adalah m1, sehingga hasil yang didapatkan adalah nilai m=10.

2.5. JavaScript

Javascript diperkenalkan pertama kali oleh Netscape pada tahun 1995. Pada awalnya bahasa yang sekarang disebut JavaScript ini dulunya dinamai “LiveScript” yang berfungsi sebagai bahasa sederhana untuk browser Netscape Navigator 2 yang sangat populer pada saat itu. Kemudian sejalan dengan sedang giatnya kerjasama antara Netscape dan Sun (pengembang bahasa pemrograman “Java”) pada masa itu, maka Netscape memberikan nama “JavaScript” kepada bahasa tersebut pada tanggal 4 desember 1995. Pada saat yang bersamaan Microsoft sendiri mencoba untuk mengadaptasikan teknologi ini yang mereka sebut sebagai “Jscript” di browser milik mereka yaitu Internet Explorer 3. JavaScript sendiri merupakan modifikasi dari bahasa pemrograman C++ dengan pola penulisan yang lebih sederhana dari bahasa pemrograman C++.


(38)

JavaScript adalah bahasa pemrograman yang khusus untuk halaman web agar halaman web menjadi lebih hidup. Kalau dilihat dari suku katanya terdiri dari dua suku kata, yaitu Java dan Script. Java adalah Bahasa pemrograman berorientasi objek, sedangkan Script adalah serangkaian instruksi program.

Ada beberapa hal yang harus diperhatikan dalam pengelolaan pemrograman JavaScript, diantaranya JavaScript adalah “case sensitive”, yang artinya JavaScript membedakan huruf besar dan huruf kecil, Jika Anda pernah belajar bahasa pemrograman seperti Turbo C atau C++, maka sama seperti bahasa pemrograman tersebut, dimana huruf T tidak sama dengan huruf t. Dalam bahasa pemrograman JavaScript juga, sebagai contoh fungsi perintah var tidak boleh ditulis Var dan juga tidak boleh ditulis VAR (huruf besar semua), yang benar adalah var (huruf kecil semua). Perintah lain adalah new Date tidak boleh ditulis new date (huruf kecil semua), dan banyak yang lainnya.

2.5.1. Kelebihan Javascript

Javasript bekerja pada sisi browser dan telah disupport oleh semua browser sehingga sangat berperan penting jika kita menggunakan javascript dalam membuat halaman website menjadi lebih responsif.

Salah satu implementasi dari Javascript yang banyak digunakan seperti pada Gmail, Google Reader adalah AJAX ( Asynchronous Javascript and XMLHTTP) yang dapat membuat halaman website lebih interaktif dan responsif.

2.5.2. Penggunaan Javascript

Contoh penggunaan Javascript pada sebuah website adalah sebagai berikut : <script type="text/javascript">

... ...

</script>


(39)

2.6. Riset-riset terkait

Dalam melakukan penelitian ini, penulis menggunakan beberapa riset terkait yang dijadikan untuk membuat penelitian berjalan lancar. Adapun riset-riset terkait tersebut adalah :

Tabel. 2.4. Riset Terkait No Judul Riset Nama Peneliti

Dan Tahun

Algoritma/ Metode yang

digunakan

Hasil Penelitian

1 Comparing Classical

Encryption With Modern

Techniques

Mobit Kumar, et al. 2010

Building Blocks, Caesar Cipher, Mono Alphabet Cipher,Play Fair, Hill Cipher, DES, SDES,

Vigenere

Kombinasi dari

algoritma subsitusi, translasi dan transposisi dapat membuat proses dekripsi menjadi lebih sulit. Ini cukup penting untuk meningkatkan performa algoritma di masa depan.

2 Design and

Implementation

of New

Encryption

algorithm to Enhance

Performance Parameters

Rajni Jain, et al. 2012

A Modified Hill Cipher, Block Cipher

Dengan mengggunakan modifikasi Hill Cipher dan teknik block cipher

simetris dapat

menghasilkan response time yang lebih cepat

3 Integrating Classical

Encryption With

Fauzan Saeed, et al. 2010

Playfair, Caesar,

Dari semua percobaan penelitian, yang terburuk adalah teknik


(40)

Modern Technique

Vigenere, DES, SDES

Vigenere yang

memberikan perbedaan dari 2 bit dibandingkan dengan playfair yang memberikan perbedaan 7 bit DES yang

menggunakan 16

putaran memberikan 35 bit perbedaan.

4 Implementation of Caesar Cipher With Rail Fence for Enchancing Data Security

Ajit Singh, et all. 2012

Caesar

Cipher, Rail Fence

Kombinasi dari

transposisi dan subsitusi dari algortima caesar dan rail fence untuk memberikan keamanan yang lebih baik pada teks.

5 Design of a Robust

Cryptosystem Algorithm for Non-invertible Matrices Based on Hill Cipher

Rushdi A.

Hamamreh, et al. 2009

Hill Cipher Ketika matrik kunci dikirim untuk blok data pertama, kunci publik akan terbentuk pada kedua sisi pengirim dan penerima. Sehingga sangat sulit untuk di serang

6 The Rabin

Cryptosystem revisited

Michele Elia, et al. 2013

Rabin

Cryptosystem

Rabin lebih aman untuk pengiriman pesan dan efektif dalam penerapan tanda tangan elektronik maupun sebagai fungsi hash


(41)

2.7. Perbedaan Dengan Riset Yang Lain

Dalam penelitian ini menggunakan Hill Cipher karena dari berbagai penelitian hill cipher dapat dimodifikasi untuk menghasilkan respon time yang cepat, kemudian digabungkan dengan Teknik Rail Fence yang dimodifikasi menjadi dua baris supaya mendapatkan respon yang lebih cepat, serta mengabungkan dengan Algoritma Rabin yang memiliki kekuatan dalam faktorisasinya dalam mengamankan sebuah pesan.

2.8. Kontribusi Riset

Dengan adanya kombinasi dari Hill Cipher Teknik Rail Fence dan pengamanan kunci Hill dengan Algoritma Rabin dapat menambah suatu daftar kombinasi algoritma yang baru, sehingga dapat nantinya digunakan dan diimplementasikan pada website karena memiliki waktu respon yang cepat serta aman.


(42)

BAB III

METODOLOGI PENELITIAN

3.1.Studi Literatur

Studi literatur yang dilakukan dalam penelitian ini adalah mengumpulkan bahan referensi mengenai Integrasi Enkripsi Klasik dengan teknik modern (Fauzan Saeed, et al. 2010) dan Design algoritma baru untuk meningkatkan parameter (Rajni Jain, et al. 2012) serta berbagai jurnal tentang kriptografi klasik dan modern.

3.2.Analisa Permasalahan

Pada tahap ini dilakukan analisis terhadap hasil studi literatur untuk mengetahui dan mendapatkan pemahaman mengenai perlunya suatu kombinasi algoritma yang baru untuk meningkatkan keamanan enkripsi.

3.3. Hipotesis

Menilai bahwa pentingnya membuat suatu algoritma baru yang bisa menambah keamanan maka akan dicoba menggabungkan teknik enkripsi klasik dengan Modern, adapun untuk algoritma klasik yang diambil adalah Hill Cipher dan Rail Fence serta algoritma modern yakni algoritma Rabin.

3.4.Perancangan Sistem

Pada tahap perancangan sistem dilakukan perancangan arsitektur, pengumpulan data , merancang antarmuka. Proses perancangan dilakukan berdasarkan hasil analisis studi literatur yang telah didapatkan. Kemudian melakukan suatu terobosan dengan mengenkripsi supaya data yang ada pada menjadi lebih aman.


(43)

a. Proses Enkripsi dan Pengiriman Ciphertext

Gambar 3.1 Proses Enripsi dan Pengiriman Ciphertext

b. Proses Dekripsi Ciphertext

Gambar 3.2 Proses Dekripsi Ciphertext

Algoritma Hill Cipher Enkripsi+Rail

Fence

plaintext Ciphertext Kunci Hill

Kunci Hill Algoritma

Rabin

Kunci Public Rabin

Ciphertext

Penerima

Penerima

Ciphertext

Algoritma Rabin

Dekripsi

Kunci Private Rabin

Kunci Hill Ciphertext Algoritma

Hill Cipher Dekripsi+Rail

Fence


(44)

3.4.1 Perancangan Keamanan Data di Website

Setelah melakukan penelitian pada masing-masing algoritma yang ada, maka akan dicoba melakukan penggabungan dari algoritma Hill, Rail Fence dan Rabin yang nantinya akan dilakukan penelitian atas waktu yang dibutuhkan dalam pemrosesan suatu tesks.

3.4.2 Proses Enkripsi

Pada tahap awal enkripsi, data yang dibutuhkan adalah berupa teks yang akan dienkripsi, dengan kunci sebagai berikut :

Tabel 3.1. Kunci Hill

_ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9 . ? , -

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40

3.4.2.1 Menterjemahkan proses Kata kunci menjadi matrik

Jika kita melakukan input Kata kunci adalah 12, maka akan diterjemahkan menjadi matrik

A =

28 29 1 2

Didapati dari tabel Kunci hill 1 diterjemahkan menjadi angka 28 dan Kunci Hill 2 diterjemahkan menjadi angka 29, sedangkan untuk mengisi sisa matrik yang kosong akan dilakukan pengisian otomatis mulai dari 1.


(45)

Jika kata kunci yang kita input adalah 12345, maka akan diterjemahkan menjadi matrik

A =

28 29 30 31 32 1 2 3 4

Contoh lain Jika Kata kuncinya adalah 8, 88, 888,88888

A = 35 A =

35 35 1 2

A =

35 35 35 1

A =

35 35 35 35 35 1 2 3 4

3.4.2.2 Menterjemahkan matrik dari isi pesan

Pada proses ini akan menerjemahkan isi pesan ke dalam bentuk matrik yang sesuai dengan kata kunci, jika kata kuncinya memiliki matrik 1 x 1 maka pesan yang akan diterjemahkan juga memiliki jumlah baris yang sama dengan kata kunci yakni 1. Contoh :

Jika dimasukkan Tesks Isi Pesan adalah : Universitas Sumatera Utara maka hasil dari matrik pesan dengan kata kunci 8 adalah


(46)

Jika kata kuncinya adalah 88 maupun 888 atau memiliki matrik dengan bentuk 2x2, maka hasil dari matrik pesan adalah :

M =

21 14 9 22 5 18 19 9 20 1 19 0 19 21 13 1 20 5 18 1 0 21 20 1 18 1

Jika kata kuncinya adalah 88888 atau memiliki matrik dengan bentuk 3x3, maka hasil dari matrik pesan adalah :

M =

21 14 9 22 5 18 19 9 20 1 19 0 19 21 13 1 20 5 18 1 0 21 20 1 18 1 0

3.4.2.3 Proses Kata kunci dengan Matrik Pesan

Setelah didapatkan hasil terjemahan dari kata kunci dan isi pesan, maka dilakukan perkalian matrik dan dilakukan mod 41 sehingga akan dihasilkan proses dari enkripsi pesan.

Contoh :

Perkalian kunci 8 dan isi pesan Universitas Sumatera Utara adalah sebagai berikut : A M = 7 3 5 4 9 0 3 1 5 7 7 0 1 7 5 6 3 0 6 6 5 3 1 5 7 0 0 3 5 6 6 5 0 6 6 5 7 3 5 4 5 5 3 5 7 0 0 1 7 5 6 3 0 3 5 0

7 3 5 7 0 0 3 5 6 3 0 3 5


(47)

AM (mod 41) =

38 39 28 32 11 15 9 28 3 35 9 0 9 38 4 35 3 11 15 35 0 38 3 35 15 35

Perkalian kunci 88 dan isi pesan Universitas Sumatera Utara adalah sebagai berikut :

AM =

1470 945 350 1470 350 1260 700 315 1435 735 700 630 700 63 40 11 62 15 54 21 9 62 41 21 36 21 Dan hasil proses mod 41 adalah sebagai berikut :

AM (mod 41) =

35 2 22 35 22 30 3 28 0 38 3 15 3 22 40 11 21 15 13 21 9 21 0 21 36 21

Perkalian kunci 88888 dan isi pesan Universitas Sumatera Utara adalah sebagai berikut :

AM =

1400 1190 315 2170 1610 1120 1330 1050 875 788 1156 315 1456 930 1086 718 1016 875 117 89 18 185 153 79 113 82 55

Dan hasil proses mod 41 adalah sebagai berikut :

AM (mod 41) =

6 1 28 38 11 13 18 25 14 9 8 28 21 28 20 21 32 14 35 7 18 21 30 38 31 0 14


(48)

Dari proses diatas akan dikembalikan lagi dari angka menjadi huruf sesuai dengan tabel 3.1

Contoh hasil dari kata kunci 8 adalah : ?,15KOI1C8I_I?D8CKO8_?C8O8

Contoh hasil dari kata kunci 88 adalah : 8BV8V3C1_?COCV-KUOMUIU_U9U Contoh hasil dari kata kunci 888 adalah : 8BV8V3C1_?COCRK2KP6J1XNJRJ Contoh hasil dari kata kunci 88888 adalah : FA1?KMRYNIH1U1TU5N8GRU3?4_N

3.4.2.4 Proses Enkripsi Rail Fence

Dengan hasil akhir yang didapati dari proses Hill diatas, maka dilakukan lagi kombinasi dengan Rail Fence yakni melakukan proses transposisi zigzag dengan 2 baris.

Hasil Enkripsi dari Universitas Sumatera Utara menghasilkan : ?,15KOI1C8I_I?D8CKO8_?C8O8 dengan 26 karakter

Dibagi dengan dua sehingga menghasilkan 13, kemudian dilakukan penulisan sebesar hasil pembagiannya menjadi :

?1KICIIDCO_CO ,5O18_?8K8?88

Kemudian digabungkan antara baris pertama dan kedua menjadi satu baris

Contoh hasil dari kata kunci 8 adalah : ?1KICIIDCO_CO,5O18_?8K8?88


(49)

Contoh hasil dari kata kunci 88888 adalah : F1KRNHUT58R34NA?MYI11UNGU?_

3.4.3. Proses Enkripsi Rabin

Melakukan proses enkripsi kunci dari Hill menjadi ciphertext yang nantinya akan dikirm ke penerima pesan. Proses pertama yang dilakukan pada Enkripsi Rabin adalah melakukan pengacakan bilangan prima di bawah 1000, yang nantinya dipakai untuk menentukan nilai dari n, dimana :

n = p.q

p dan q adalah bilangan prima dibawah 1000, dimana perkalian p dan q harus lebih besar dari kunci Hill.

Kemudian di Enkripsi dengan rumus : c = m^2 (mod) n

Contoh :

pada Kunci Hill 8 dilakukan proses pengacakan p dan q sehingga didapatkan nilai p dan q masing-masing adalah 631 dan 991, kemudian dilakukan enkripsi dengan rumus m^2 (mod) n didapati hasil akhir adalah 64.

pada Kunci Hill 88 dilakukan proses pengacakan p dan q sehingga didapatkan nilai p dan q masing-masing adalah 823 dan 263, kemudian dilakukan enkripsi dengan rumus m^2 (mod) n didapati hasil akhir adalah 7744.

pada Kunci Hill 888 dilakukan proses pengacakan p dan q sehingga didapatkan nilai p dan q masing-masing adalah 67 dan 151, kemudian dilakukan enkripsi dengan rumus m^2 (mod) n didapati hasil akhir adalah 9535.


(50)

3.4.4. Proses Pengiriman Pesan Teks yang sudah dienkripsi

Pada proses ini akan dilakukan pengiriman hasil enkripsi yang terdiri dari : - Hasil Enkripsi Hill dan Rail Fence

- Hasil Enkripsi Kunci Hill dengan Rabin dan Kunci Privatenya - b0=m mod 2 dan b1 = ½ [1+m/2]

Contoh Hasil pengiriman data adalah :

Hasil Enkripsi Hill dan Rail Fence : 8VVC_CCKK61NRB831?OR2PJXJJ

Hasil Enkripsi kunci Hill dengan Rabin : 9535 dengan kunci privatenya yakni : p= 67 q= 151 .

b0=m mod 2 dan b1 = 1/2 [1+m/2] yakni b0=0 dan b1=0.54388652762677

3.4.5. Proses Dekripsi

Setelah data didapat oleh penerima, maka penerima harus menterjemahkan kunci hill terlebih dahulu karena sudah dienkripsi oleh Rabin.

3.4.5.1 Proses Dekripsi rabin

Melakukan proses dekripsi dengan rumus m2=c mod n, dimana hasil dari sebuah m2 mod n adalah selalu menghasilkan 2 bilangan akar kuadrat, seperti halnya sebuah angka memiliki dua buah akar kuardrat.


(51)

m mod 11 kuadrat Akar kuadrat

1 1, 10

3 5, 6

4 2, 9

5 4, 7

9 3, 8

Karena n berupa bilangan prima dan sesuai teori rabin p≡q≡3 (mod) 4, maka kita dapat mencari nilai m menjadi

mp=((c ^ ((p+1)/4)) mod p) mq=((c ^ ((q+1)/4)) mod q)

dan didapati 4 buah hasil akhir dengan rumus : m1=(yp.p.mq+yq.q.mp)mod n

m2=-(yp.p.mq-yq.q.mp)mod n m3=(yp.p.mq+yq.q.mp)mod n m4 = -(yp.p.mq - yq.q.mp) mod n

dimana yp dan yq didapati dari menggunakan algoritma extended euclidean dengan rumus yp.p + yq.q = 1

Contoh :


(52)

p= 67 q=151 b0=0

b1 = 0.54388652762677

mp = 9535^(68/4) mod 67 = 9535^17 mod 67

= 4450941184661180417505813894521536960836130050156202660140 9912109375 mod 67

= 17

mq = 9535 ^ (152/4) mod 151 = 9535 ^ 38 mod 151

= 163751957591135842730966263610964763448146790819303346028227 041095836186090033205266664245936647838680104315849249728870468 42151903547346591949462890625 mod 151

= 18

Kemudian pencarian yp dan yq dengan menggunakan euclidean didapati Yp.67 + yq.151 =1


(53)

m1 = 9531 m2 = 586 m3 = 9229 m4 = 888

kemudian untuk mencari salah satu jawaban dari m1,m2,m3,m4 diatas dengan melakukan pengecekan parity dari keempat jawaban yang sesuai dengan b0 b0 = 0 sehingga jawaban yang sesuai adalah =

586 m2 Memenuhi Syarat 888 m4 Memenuhi Syarat

Pencarian akhir adalah mencari nilai z=1/2(1+(z1/n)) yang memenuhi syarat = b1 (0.54388652762677)

m4 = 888 Memenuhi Syarat Akhir sebagai kunci Hill

3.4.5.2 Proses Dekripsi Rail Fence

Dari data yang dikirim dilakukan proses dekripsi melalui Rail Fence dengan proses transposisi zigzag yang akan menghasilkan kembali ciphertext yang benar. Contoh : Data yang diperoleh penerima adalah :

8VVC_CCKK61NRB831?OR2PJXJJ

Dilakukan proses perhitungan berapa panjang karakter yakni sebesar 26 karakter, lalu dilakukan pembagian dengan dua menjadi :

8VVC_CCKK61NR B831?OR2PJXJJ


(54)

Kemudian dilakukan pembacaan dari atas kebawah berurutan dari kiri ke kanan sampai selesai, sehingga hasil akhir didapati bahwa ciphertextnya yang telah selesai dengan proses Rail Fence adalah : 8BV8V3C1_?COCRK2KP6J1XNJRJ

3.4.5.3 Proses Dekripsi Hill

Melakukan proses konversi kunci dari kata kunci ke dalam bentuk matrik sesuai dengan tabel 3.1

Contoh : data yang didapat dari pengirim adalah 888 maka hasil konversinya menjadi

A =

35 35 35 1

Setelah mendapatkan proses konversi matrik, dilakukan matrik inverse mod 41 sesuai dengan rumus perkalian matrik A dan matrik inverse menjadi 1, didapati Matrik inverse (mod 41) :

B =

40 35 35 6

Perkalian matrik AB=I (mod 41).

AB = 1 0 0 1


(55)

Pada proses ini akan menerjemahkan isi pesan ke dalam bentuk matrik yang sesuai dengan kata kunci, jika kata kuncinya memiliki matrik 2x2 maka pesan yang akan diterjemahkan juga memiliki jumlah baris yang sama dengan kata kunci yakni 2 Contoh :

Jika dimasukkan Tesks Isi Pesan adalah : 8BV8V3C1_?COCRK2KP6J1XNJRJ maka hasil dari matrik pesan dengan kata kunci 888 adalah

M =

35 2 22 35 22 30 3 28 0 38 3 15 3 18 11 29 11 16 33 10 28 24 14 10 18 10

3.4.5.5 Proses Matrik Invers dengan Matrik Pesan

Setelah mendapatkan matriks hail isi pesan maka dialkukan proses perkali dengan matrik invers

Contoh :

Matrik inverse adalah :

B =

40 35 35 6

Matrik isi Pesan adalah :

M =

35 2 22 35 22 30 3 28 0 38 3 15 3 18 11 29 11 16 33 10 28 24 14 10 18 10


(56)

Matrik perkaliannya adalah :

BM =

2030 465 1895 1785 1440 2355 470 2100 840 2010 470 1230 470 1333 136 944 1291 866 1248 165 1148 144 1414 165 633 165

Hal terakhir adalah melakukan proses mod 41 menjadi

BM (mod 41) =

21 14 9 22 5 18 19 9 20 1 19 0 19 21 13 1 20 5 18 1 0 21 20 1 18 1

3.4.5.6 Hasil Akhir Dekripsi

Dengan tabel 3.1 kita melakukan proses terjemahan dari angka ke huruf, maka akan didapati hasil akhir dari

BM (mod 41) =

21 14 9 22 5 18 19 9 20 1 19 0 19 21 13 1 20 5 18 1 0 21 20 1 18 1

Adalah : UNIVERSITAS SUMATERA UTARA

3.5.Implementasi Sistem

Pada tahap implementasi sistem ini akan dilakukan percobaan terhadap algoritma baru yang terbentuk ini dengan beberapa teks untuk dienkripsi.


(57)

Karena proses implementasi sistem akan dilakukan berbasis Web, maka perlu dilakukan installasi apache yang berfungsi sebagai Web Server. Paket installasi Apache dapat diperoleh dari website resmi apache di http://www.apache.org dan PHP dapat diperoleh pada website http://www.php.net .

Proses instalasi pada linux , cukup ketikkan : #apt-get install apache2

Jika sudah berhasil maka akan ditampilkan seperti gambar berikut :

Gambar 3.3. Installasi Apache di Linux

Jika Sudah berhasil dan aktif , maka pada browser akan muncul Tulisan “It work!” jika kita ketikkan http://localhost


(58)

3.6..Diagram Alir Penelitian

'

Gambar 3.5. Diagram alir penelitian

Studi Literatur dan Bimbingan

Dokumentasi

Pengumpulan data

Analisais Data Penelitian Algoritma

Hill , Rail Fence dan Rabin Perancangan Sistem

Implementasi Sistem

Pengujian


(59)

BAB IV

HASIL DAN PEMBAHASAN

4.1 Pendahuluan

Bab ini menyajikan bagaimana proses enkripsi dan dekripsi data serta perhitungan hasil penelitian yang dilakukan terhadap 100 data dengan kata kunci yang terdiri dari 5 huruf sebagai sampel, yang akan dihitung berapa lama waktu yang dibutuhkan.

4.2. Proses Enkripsi dan Dekripsi

4.2.1. Proses Enkripsi Data dengan Hill dan Rail Fence


(60)

Data yang diinput ke dalam Pesan adalah A, dengan kata kunci 12345 diperoleh hasil enkripsinya adalah 14B oleh algoritma Hill Cipher, kemudian oleh Rail Fence di proses menjadi 1B4 .

4.2.2. Proses Enkripsi Kunci Hill dengan Rabin

Gambar 4.2. Proses Enkripsi Kunci hill dengan Rabin

Kata kunci yang yang dienkripsi adalah 12345, didapati dua bilangan prima p = 463 dan q= 967 , yang didapati secara acak 1000 bilangan prima yang pertama, dimana hasil perkalian dari p dan q harus lebih besar dari kata kunci atau 12345. Pada pengacakan ini didapati hasil perkaliannya adalah 447721 sehingga memenuhi syarat untuk diproses lebih lanjut.

Setelah didapati nilai p dan q , dilakukan perkalian c=m^2 (mod) n . dimanaa m adalah kata kunci 12345 dan n adalah perkalian p dengan q. Sehingga didapati hasil dari enkripsi proses rabin adalah 12345*12345 mod 447721 atau sama dengan 173885. Dari proses data diatas telah selesai dienkripsi kemudian dikirimkan ke penerima dengan data hasil enkripsi Hill dan Rail Fence, Hasil enkripsi kunci Hill dengan Rabin, kunci private, dan nilai b0 dan b1 untuk pengecekan kondisi Rabin, yakni 1B4, 173885, 463,967, 0 dan 0.51378648756703.


(61)

4.2.3. Proses Dekripsi Kunci Hill Dengan Rabin

Gambar 4.3. Proses Dekripsi Kunci Hill dengan Rabin

Dari data yang diterima, dari sisi penerima melakukan proses pemecahan kunci Hill yang telah dienkripsi oleh Rabin. Proses yang digunakan adalah mencari nilai yp dan yq dimana hasil gari gcd(yp,yq)=1. 463.yp + 967.yq =1 , dengan menggunakan euclidean algoritma didapati hasil yp=-401 dan yq=192 . langkah berikutnya adalah mencari nilai m1,m2,m3 dan m4. Kemudian didapati yang memenuhi syarat adalah kunci m2 = 12345.

Proses berikutnya adalah mendekripsikan data 1B4 dengan Rail Fence agar dapat melakukan proses dekripsi lanjutan dengan algoritma Hill. Hasil setelah melalui proses dekripsi Rail Fence adalah 14B, dengan kunci Hill 12345.


(62)

4.2.4. Proses Dekripsi dengan Hill Cipher

Gambar 4.4. Proses Dekripsi dengan Hill Cipher

Setelah mendapatkan kunci Hill yang didekripsi serta pesan yang akan didekripsi yakni 14B, maka dilakukan proses dekripsi melalui algoritma Hill Cipher yang terdiri dari perubahan kata kunci dan inverse matrik hingga perkalian matrik dengan invers, didapati hasil akhir adalah A_ .


(63)

Pada setiap pemrosesan enkripsi data akan disimpan ke dalam log file yang bernama waktu1.log , dimana akan dilakukan pencatatan panjang kunci serta panjang pesan yang akan di enkripsi serta banyaknya waktu yang diperlukan untuk melalui semua proses enkripsi.

Pada gambar 4.5. menunjukkan jika yang diinput adalah nilai A, dengan kata kunci 12345, maka untuk melalui proses Hill Cipher dibutuhkan waktu 0.0000891685 detik. Untuk proses Rail Fence dibutuhkan waktu 0.0000159740 detik. Dan proses enkripsi kunci Hill melalui Rabin adalah 0.0017080307 detik. Sehingga total waktu yang dibutuhkan untuk enkripsi adalah 0.0018131732

Gambar 4.6. Waktu Dekripsi

Pada setiap pemrosesan dekripsi data akan disimpan ke dalam log file yang bernama waktu2.log , dimana akan dilakukan pencatatan banyaknya waktu yang diperlukan untuk melalui semua proses dekripsi.

Pada gambar 4.6. menunjukkan jika yang diinput adalah nilai A, dengan kata kunci 12345, dan setelah dilakukan enkripsi menghasilkan nilai kunci hill 345937, ciphertext 1B4, nilai p dan q adalah secara acak dari proses enkripsi sebelumnya yakni 887 dan 487. Serta b0 dan b1 untuk pemesahan kasus Rabin. Maka untuk melalui proses dekripsi kunci Hill Cipher oleh rabin dibutuhkan waktu 0.0001831055 detik. Untuk proses Rail Fence dibutuhkan waktu 0.0004541874 detik. Dan proses akhir dekripsi Hill adalah 0.0000970364 detik. Sehingga total waktu yang dibutuhkan untuk enkripsi adalah 0.0007343293


(64)

0 0.005 0.01 0.015 0.02 0.025

1 5 9 13 17 21 25 29 33 37 41 45 49 53 57 61 65 69 73 77 81 85 89 93 97

Wak

tu

(Mi

cro

d

et

ik

)

Banyaknya karakter untuk dienkripsi

Waktu Enkripsi Data

4.4. Hasil Penelitian

Dilakukan proses terhadap 1 sampai dengan 100 huruf , dengan jumlah kata kunci tetap 5 angka dengan perbandingan terhadap waktu yang dibutuhkan dalam proses enkripsi dan proses dekripsi, dengan hasil sebagai berikut :

4.4.1. Perhitungan waktu enkripsi

Gambar 4.7 Grafik enkripsi

Pada gambar 4.7. menunjukkan bahwa waktu yang dibutuhkan untuk melakukan enkripsi dengan data yang terekam di log selama melakukan percobaan.

Tabel 4.2. Waktu untuk enkripsi

Jumlah huruf waktu 1 0.000987 2 0.001493 3 0.001799


(65)

6 0.002101 7 0.00537 8 0.003123 9 0.001565 10 0.001822 11 0.002503 12 0.006395 13 0.00159 14 0.001944 15 0.001946 16 0.00247 17 0.0022 18 0.005955 19 0.005218 20 0.00249 21 0.00222 22 0.002735 23 0.001659 24 0.003367 25 0.002233 26 0.003675 27 0.001816 28 0.001608 29 0.001738 30 0.003803 31 0.004025 32 0.002586 33 0.002097 34 0.007759 35 0.002058 36 0.003305 37 0.02363 38 0.004759 39 0.003277 40 0.003911 41 0.003949 42 0.005769 43 0.003802 44 0.002634 45 0.003934 46 0.001962 47 0.009779 48 0.003412


(66)

49 0.004056 50 0.003436 51 0.004011 52 0.004131 53 0.004753 54 0.003573 55 0.003994 56 0.002467 57 0.003035 58 0.002665 59 0.002955 60 0.004008 61 0.004786 62 0.003711 63 0.003165 64 0.00234 65 0.00264 66 0.002208 67 0.004157 68 0.00219 69 0.003904 70 0.002375 71 0.003117 72 0.002496 73 0.002841 74 0.003754 75 0.002502 76 0.00329 77 0.002287 78 0.004176 79 0.00248 80 0.004326 81 0.003845 82 0.002357 83 0.002515 84 0.002704 85 0.00319 86 0.007303 87 0.002353 88 0.002843 89 0.006677


(67)

92 0.003325 93 0.002659 94 0.002497 95 0.003059 96 0.003621 97 0.004183 98 0.004745 99 0.005308 100 0.00587

4.4.2. Perhitungan waktu dekripsi

Gambar 4.8. Grafik dekripsi

Pada gambar diatas menunjukkan bahwa waktu yang dibutuhkan untuk melakukan dekripsi dengan data dari log, yakni :

Tabel 4.3. Waktu untuk dekripsi Jumlah

huruf waktu 1 0.000788 2 0.000797 0 0.0002 0.0004 0.0006 0.0008 0.001 0.0012 0.0014 0.0016 0.0018

1 5 9 13 17 21 25 29 33 37 41 45 49 53 57 61 65 69 73 77 81 85 89 93 97

Wak tu (mi k ro d et ik ) Banyaknya Karakter


(68)

3 0.00069 4 0.000702 5 0.000283 6 0.000303 7 0.000308 8 0.00078 9 0.000832 10 0.00045 11 0.000336 12 0.000352 13 0.000366 14 0.000832 15 0.000897 16 0.00091 17 0.000458 18 0.001014 19 0.001013 20 0.001038 21 0.000745 22 0.000654 23 0.000358 24 0.000296 25 0.00043 26 0.000388 27 0.000971 28 0.000965 29 0.000885 30 0.000465 31 0.000486 32 0.000457 33 0.000977 34 0.001004 35 0.000924 36 0.000535 37 0.000531 38 0.000513 39 0.001003 40 0.001061 41 0.001132 42 0.000601


(69)

45 0.001225 46 0.001087 47 0.001143 48 0.000638 49 0.000648 50 0.000637 51 0.00125 52 0.00119 53 0.00127 54 0.000708 55 0.000675 56 0.000684 57 0.001167 58 0.001275 59 0.001234 60 0.00077 61 0.000736 62 0.00075 63 0.001381 64 0.001209 65 0.00137 66 0.000808 67 0.00083 68 0.000913 69 0.001345 70 0.001297 71 0.001283 72 0.000844 73 0.000846 74 0.00088 75 0.001425 76 0.001446 77 0.001402 78 0.000869 79 0.000882 80 0.000925 81 0.001588 82 0.001455 83 0.001548 84 0.000939 85 0.000964 86 0.00099


(70)

87 0.001552 88 0.00156 89 0.001499 90 0.001557 91 0.001006 92 0.001017 93 0.001005 94 0.00159 95 0.001543 96 0.001543 97 0.001555 98 0.001143 99 0.001105 100 0.001122


(71)

BAB V

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Dengan perubahan perkembangan website maupun browser untuk menampilkannya membuat kita harus berusaha mengembangkan keamanan data kita, salah satunya adalah dengan melakukan kombinasi dari berbagai algoritma yang ada, sehingga nantinya akan terbentuk suatu kombinasi algoritma yang baru yang dapat menjaga keamanan dari website kita.

Apabila kita menggunakan algoritma yang sudah ada di internet bahkan yang sudah memiliki source code nya, maka dengan mudah website akan akan dibobol dengan menggunakan algoritma yang sudah ada. Dari beberapa percobaan dari penggabungkan algoritma Hill, Rail Fence dan Rabin yang ada ini, memiliki beberapa kesimpulan :

1. Merupakan kombinasi algoritma yang baru 2. Waktu yang dibutuhkan relatif singkat

3. Dapat diimplementasikan pada sebuah website

5.2 Saran

Saran untuk perbaikan penelitian ini agar lebih baik yaitu:

1. Untuk menjaga tetap amannya atau sulit ditebaknya proses algoritma ini, source code tidak akan diupload secara keseluruhan, artinya ada bagian tertentu yang disembunyikan

2. Untuk pengembangannya dapat dilakukan selain pada webstorage adalah untuk password yang memiliki karakter bintang / asterix.


(72)

DAFTAR PUSTAKA

Saeed, F., & Rashid, M. (2010). Integrating Classical Encryption with Modern Technique. IJCSNS International Journal of Computer, 280-285.

Jain, R., & Shivastava,A. (2012). Design and Implementation of New Encryption algorithm to enhance Performance Parameter. IOSR Journal of Computer Engineering ,33-39.

Kumar, M., Mishra, R., Pandey, R. K., & Singh, P. (2010). Comparing Classical Encryption With Modern Techniques. proceedings of S-JPSET, 1(1).

Luciano, D., & Prichett, G. (1987). Cryptology: From Caesar ciphers to public-key cryptosystems. The College Mathematics Journal, 18(1), 2-17.

Mollin, R. A. (2006). An introduction to cryptography. CRC Press.

Washington, L. C., & Trappe, W. (2002). Introduction to cryptography: with coding theory. Prentice Hall PTR.

Hamamreh, R. A., & Farajallah, M. (2009). Design of a robust cryptosystem algorithm for non-invertible matrices based on hill cipher. International Journal of Computer Science and Network Security, 11-16.

Song, M. M., & Tu, D. P. (2010). A New Hill Cryptosystem With Digital Signature Function Base on The Problem of Matrix. Journal of Guangxi University for Nationalities (Natural Science Edition), 3, 013.

Dooley, J. F. (2013). A Brief History of Cryptology and Cryptographic Algorithms. Springer.

Smith, A. M., & Zanavich, J. K. (1985). U.S. Patent No. 4,540,160. Washington, DC: U.S. Patent and Trademark Office.

Okamoto, T., & Uchiyama, S. (1998). A new public-key cryptosystem as secure as factoring. In Advances in Cryptology—EUROCRYPT'98 (pp. 308-318).


(73)

Tian-xiang (2009). Enhanced Rabin cryptosystem based on cubic congruence equation. Journal of Computer Applications, 7, 014.

Elia, M., Piva, M., & Schipani, D. (2011). The Rabin cryptosystem revisited. arXiv preprint arXiv:1108.5935.

Rosen, K. H. (1993). Elementary number theory and its applications. Reading, Mass.

Mirshokraie, Shabnam. Effective test generation and adequacy assessment for JavaScript-based web applications. Proceedings of the 2014 International Symposium on Software Testing and Analysis. ACM, 2014.

Sun, Cihai, and Hualing Liu. A New Introduction to JavaScript: New Performance (V8) and New Use (Node. js, WebGL, Firefox OS, Chrome OS) of

JavaScript. Proceedings of the 2013 International Conference on Business Computing and Global Informatization. IEEE Computer Society, 2013.


(1)

3 0.00069 4 0.000702 5 0.000283 6 0.000303 7 0.000308 8 0.00078 9 0.000832 10 0.00045 11 0.000336 12 0.000352 13 0.000366 14 0.000832 15 0.000897 16 0.00091 17 0.000458 18 0.001014 19 0.001013 20 0.001038 21 0.000745 22 0.000654 23 0.000358 24 0.000296 25 0.00043 26 0.000388 27 0.000971 28 0.000965 29 0.000885 30 0.000465 31 0.000486 32 0.000457 33 0.000977 34 0.001004 35 0.000924 36 0.000535 37 0.000531 38 0.000513 39 0.001003 40 0.001061 41 0.001132 42 0.000601 43 0.000589 44 0.000592


(2)

45 0.001225 46 0.001087 47 0.001143 48 0.000638 49 0.000648 50 0.000637 51 0.00125 52 0.00119 53 0.00127 54 0.000708 55 0.000675 56 0.000684 57 0.001167 58 0.001275 59 0.001234 60 0.00077 61 0.000736 62 0.00075 63 0.001381 64 0.001209 65 0.00137 66 0.000808 67 0.00083 68 0.000913 69 0.001345 70 0.001297 71 0.001283 72 0.000844 73 0.000846 74 0.00088 75 0.001425 76 0.001446 77 0.001402 78 0.000869 79 0.000882 80 0.000925 81 0.001588 82 0.001455 83 0.001548 84 0.000939 85 0.000964 86 0.00099


(3)

87 0.001552 88 0.00156 89 0.001499 90 0.001557 91 0.001006 92 0.001017 93 0.001005 94 0.00159 95 0.001543 96 0.001543 97 0.001555 98 0.001143 99 0.001105 100 0.001122


(4)

BAB V

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Dengan perubahan perkembangan website maupun browser untuk menampilkannya membuat kita harus berusaha mengembangkan keamanan data kita, salah satunya adalah dengan melakukan kombinasi dari berbagai algoritma yang ada, sehingga nantinya akan terbentuk suatu kombinasi algoritma yang baru yang dapat menjaga keamanan dari website kita.

Apabila kita menggunakan algoritma yang sudah ada di internet bahkan yang sudah memiliki source code nya, maka dengan mudah website akan akan dibobol dengan menggunakan algoritma yang sudah ada. Dari beberapa percobaan dari penggabungkan algoritma Hill, Rail Fence dan Rabin yang ada ini, memiliki beberapa kesimpulan :

1. Merupakan kombinasi algoritma yang baru 2. Waktu yang dibutuhkan relatif singkat

3. Dapat diimplementasikan pada sebuah website

5.2 Saran

Saran untuk perbaikan penelitian ini agar lebih baik yaitu:

1. Untuk menjaga tetap amannya atau sulit ditebaknya proses algoritma ini, source code tidak akan diupload secara keseluruhan, artinya ada bagian tertentu yang disembunyikan

2. Untuk pengembangannya dapat dilakukan selain pada webstorage adalah untuk password yang memiliki karakter bintang / asterix.


(5)

DAFTAR PUSTAKA

Saeed, F., & Rashid, M. (2010). Integrating Classical Encryption with Modern Technique. IJCSNS International Journal of Computer, 280-285.

Jain, R., & Shivastava,A. (2012). Design and Implementation of New Encryption algorithm to enhance Performance Parameter. IOSR Journal of Computer Engineering ,33-39.

Kumar, M., Mishra, R., Pandey, R. K., & Singh, P. (2010). Comparing Classical Encryption With Modern Techniques. proceedings of S-JPSET, 1(1).

Luciano, D., & Prichett, G. (1987). Cryptology: From Caesar ciphers to public-key cryptosystems. The College Mathematics Journal, 18(1), 2-17.

Mollin, R. A. (2006). An introduction to cryptography. CRC Press.

Washington, L. C., & Trappe, W. (2002). Introduction to cryptography: with coding theory. Prentice Hall PTR.

Hamamreh, R. A., & Farajallah, M. (2009). Design of a robust cryptosystem algorithm for non-invertible matrices based on hill cipher. International Journal of Computer Science and Network Security, 11-16.

Song, M. M., & Tu, D. P. (2010). A New Hill Cryptosystem With Digital Signature Function Base on The Problem of Matrix. Journal of Guangxi University for Nationalities (Natural Science Edition), 3, 013.

Dooley, J. F. (2013). A Brief History of Cryptology and Cryptographic Algorithms. Springer.

Smith, A. M., & Zanavich, J. K. (1985). U.S. Patent No. 4,540,160. Washington, DC: U.S. Patent and Trademark Office.

Okamoto, T., & Uchiyama, S. (1998). A new public-key cryptosystem as secure as factoring. In Advances in Cryptology—EUROCRYPT'98 (pp. 308-318). Springer Berlin Heidelberg.


(6)

Tian-xiang (2009). Enhanced Rabin cryptosystem based on cubic congruence equation. Journal of Computer Applications, 7, 014.

Elia, M., Piva, M., & Schipani, D. (2011). The Rabin cryptosystem revisited. arXiv preprint arXiv:1108.5935.

Rosen, K. H. (1993). Elementary number theory and its applications. Reading, Mass.

Mirshokraie, Shabnam. Effective test generation and adequacy assessment for JavaScript-based web applications. Proceedings of the 2014 International Symposium on Software Testing and Analysis. ACM, 2014.

Sun, Cihai, and Hualing Liu. A New Introduction to JavaScript: New Performance (V8) and New Use (Node. js, WebGL, Firefox OS, Chrome OS) of

JavaScript. Proceedings of the 2013 International Conference on Business Computing and Global Informatization. IEEE Computer Society, 2013.