2.3. Tujuan Kriptografi - Kombinasi hybrid algortima hill cryptosystem teknik rail fence dan rabin pada javascript untuk keamanan data di website

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.

   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 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 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

  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 Ciphertext 3

  4

  5

  6

  7

  8

  9

  10

  11

  12

  13

  14

  

15

  16

  17

  18

  19

  20

  21

  22

  23

  24

  25

  1

  2 D H E F G

  I J K L M N O P Q R S T U

  V W

  X Y Z A B 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, c. Angka diubah menjadi huruf. 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

  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

  P≡a(C−b)(mod 26),0 ≤P≤ 25 Dimana a merupakan invers dari (mod 26). 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 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

  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 ciphertext

  10

  17

  24

  5

  12

  19

  7

  14

  21

  2

  9

  16

  23

  4

  11

  18

  25

  6

  13

  20

  1

  8

  15

  22

  3 K R Y F M T A H O

  V C J Q

  X E L S Z G N U B

  I P W 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

  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

  Ci ≡ Pi + Ki (mod 26) , 0 ≤ ci ≤25, 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

  13

  13

  4

  18 p1 p2 p3 p4 p5 p6 p7 p8 Dan

  R U S T A N

  17

  20

  18

  19

  13 k1 k2 k3 k4 k5 K6 Menggunakan Cipher Vigenere: Ci ≡ Pi + Ki (mod 26) di peroleh: 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 ) A

  I Z T N A

  V M

  8

  25

  19

  13

  21

  12 c1 c2 c3 c4 c5 c6 c7 c8 dan R U S T A N

  17

  20

  18

  19

  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 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

  Dengan cara yang sama diperoleh:

  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.

  5 17

  1

  1

  ( )( ) ≡ ( )

  4 15

  2

  2

  1 5 17

  Mencari ( ) dengan mencari invers dari ( ) , diperoleh

  2 4 15

  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 ) 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

  2

  dan kunci private. Untuk mengenkripsi Rabin menggunakan C = m mod N, dimana N=pq adalah dua bilangan prima sehingga didapati

  X

  2

  = 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)

  2 mod n

  • Komputasi c=m
  • 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.

  Dengan menggunakan kriteria Euler dapat ditegaskan bahwa

  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

2 C = m mod 77

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

  2 Untuk melakukan dekripsi kita memerlukan perhitungan c≡10 ≡ 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.

  (7+1)/4

  2

  23 ≡ 2 ≡ 4 mod 7

  (11+1)/4

  3

  23 ≡ 1 ≡ 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) Dengan percobaan

  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

  1

  b1= [1 + ( ) ]

  2

  = 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.

  1

  b1= [1 + ( ) ]

  2

  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 mengadaptasi kan 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++.

  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> Penempatan Javascript adalah pada tag <head> , <body> atau sebagai file external.

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 Modern Vigenere, Vigenere yang Technique DES, SDES memberikan perbedaan dari 2 bit dibandingkan dengan playfair yang memberikan perbedaan 7 bit DES yang menggunakan

  16 putaran memberikan 35 bit perbedaan.

  4 Implementation Ajit Singh, et Caesar Kombinasi dari of Caesar Cipher all. 2012 Cipher, Rail transposisi dan With Rail Fence Fence subsitusi dari algortima for Enchancing caesar dan rail fence Data Security untuk memberikan keamanan yang lebih baik pada teks.

  5 Design of a Rushdi

  A. Ketika matrik kunci

  Hill Cipher

  Robust Hamamreh, et dikirim untuk blok data Cryptosystem al. 2009 pertama, kunci publik Algorithm for akan terbentuk pada Non-invertible kedua sisi pengirim dan Matrices Based penerima. Sehingga on Hill Cipher sangat sulit untuk di serang

  6 The Rabin Michele Elia, et Rabin Rabin lebih aman untuk Cryptosystem al. 2013 Cryptosystem pengiriman pesan dan revisited efektif dalam penerapan tanda tangan elektronik maupun sebagai fungsi hash

  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.