TEKNIK ENKRIPSI DAN DEKRIPSI HILL CIPHER (Rivalri Kristianto Hondro, M.Kom.) NIDN: 0108038901 E-Mail: rivalryhondro@gmail.com Sejarah Singkat Hill Cipher ditemukan oleh Lester S. Hill pada tahun 1929, dan seperti Digraphic Ciphers lainnya, ia bertindak berdasarkan kelompok huruf. Berbeda dengan yang lain meski bisa diperpanjang untuk mengerjakan blok huruf berukuran berbeda. Jadi, secara teknis ini adalah cipher substitusi poligrafik, karena dapat bekerja pada digraf, trigraf (blok 3 huruf) atau secara teoritis setiap blok berukuran. Hill Cipher menggunakan perhitungan matematika yang disebut Aljabar linier, dan khususnya mengharuskan pengguna untuk memiliki pemahaman dasar tentang matriks. Ini juga memanfaatkan Modulo Arithmetic (seperti the Affine Cipher). Karena itu, hill cipher memiliki sifat matematika yang jauh lebih penting daripada beberapa yang lain. Namun, sifat inilah yang memungkinkannya bertindak (relatif) dengan mudah pada blok huruf yang lebih besar. Dalam contoh yang diberikan, kita akan berjalan melalui semua langkah untuk menggunakan sandi ini untuk bertindak pada digraf dan trigraf. Hal ini dapat diperpanjang lebih jauh, tapi ini kemudian membutuhkan pengetahuan yang jauh lebih dalam tentang latar belakang matematika. Beberapa konsep penting digunakan di seluruh: Matrix Multiplication; Modular Inverses; Penentu Matriks; Matrix Adjugates (untuk menemukan invers). Penerapan Hill Cipher Algoritma Enkripsi Hill Cipher 1. Tentukan Plaintext (pesan) selanjutnya, susun plaintext dalam bentuk blok matriks (2x1 jika ordo kunci 2x2, 3x1 jika ordo kunci 3x3). 2. Tentukan matriks kunci dengan persyaratan nilai determinasi matriks kunci harus nilai bilangan ganjil postif atau negatif. 3. Lakukan proses Enkripsi, dengan rumus: C = Ciphertext M k = Matriks Kunci M p = Matriks Plaintext Page 1 of 5
Algoritma Dekripsi Hill Cipher: Terlebih dahulu menentukan kunci matriks yang akan digunakan, dengan cara sebagai berikut: 1. Tentukan Nilai Determinan Matriks Kunci 2. Tentukan Nilai Invers Modulo a -1 dan det : Nilai Determinan Matriks Kunci (Mk) a dan b : Bilangan Bulat Positif atau Negatif mod (modulo atau modulus) : Sisa Bagi NB: Mencari nilai a atau b mengunakan rumus: Menentukan nilai k menggunakan bilangan bulat positif atau negatif, Contoh:..., -2, -1, 0, 1, 2, 3, 4, dst. Lakukan perhitungan menggunakan rumus sampai hasil perhitungannya mendapatkan nilai bilangan bulat postif atau negatif, maka hasil perhitungan rumus tersebut adalah hasil untuk nilai Invers Modulo, hindari bilangan pecahan. 3. Tentukan Matriks Invers Matriks Kunci (Mk) 4. Tentukan Kunci dekripsi Hill Cipher (Mk -1 ) 5. Rumus Dekripsi Hill Cipher P = Plaintext M k -1 = Matriks Kunci Invers M c = Matriks Ciphertext Page 2 of 5
Contoh Soal Diketahui: 1. Plaintext = RIVALRYHONDRO 2. Modulus yang di gunakan untuk mengambil nilai index huruf untuk plaintext dan ciphertext menggunakan susunan abjad huruf A Z, yaitu Mod 26. 3. No Index 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 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 4. Matriks Kunci ordo 2x2 dengan nilai determinan matriks: (7*2) (2*2) = 17 (Bilangan Ganjil) Penyelesaian Proses Enkripsi Hill Cipher: Susun Plaintext dengan mengikuti Kunci R I V A L R Y H O N D R O Matriks 1 Matriks 2 Matriks 3 Matriks 4 Matriks 5 Matriks 6 Matriks 7 Jika didalam blok ada karkter berjumlah ganjil maka tambahkan sembarangan karakter yang sama. R I V A L R Y H O N D R O O 17 8 21 0 11 17 24 7 14 13 3 17 14 14 Matriks 1 Matriks 2 Matriks 3 Matriks 4 Matriks 5 Matriks 6 Matriks 7 Proses Enkripsi Hill Cipher Matriks 1: Page 3 of 5
Hasil Enkripsi Matriks 1 Huruf R dan I adalah P dan M Proses Enkripsi Hill Cipher Matriks 2: Hasil Enkripsi Matriks 2 Huruf V dan A adalah L dan Q NB: Untuk selanjutnya lakukan hal yang sama seperti Proses Enkripsi Matriks 1 dan Matriks 2 Hasil Enkripsi Hill Cipher: Plaintext R I V A L R Y H O N D R O O 17 8 21 0 11 17 24 7 14 13 3 17 14 14 Ciphertext P M L Q P L I T Q P R V S W 15 12 11 16 15 11 8 19 16 15 17 21 18 22 Page 4 of 5
Penyelesaian Proses Dekripsi Hill Cipher: Matriks Kunci (Mk) = 1. Nilai Determinan = (7*3) (2*2) = 17 2. Nilai Invers Modulo 17-1 mod 26 =? atau (17* b) mod 26 = 1 b =? b = 23 lakukan pengujian (17 * 23) mod 26 = 1 ; bernilai benar (true) 3. Invers Matriks Kunci (Mk) 4. Tentukan Matriks Kunci Dekripsi HILL CIPHER NB: Lakukan proses Dekripsi sama hal nya dengan proses Enkripsi dengan menggunakan rumus. Dengan Kunci Dekripsi Page 5 of 5