RESUME MATERI ALGORITMA HILL DAN COLUMNER
A. ALGORITMA HILL
Hill Cipher merupakan salah satu algoritma kriptografi kunci simetris. Algoritma Hill Cipher menggunakan matriks berukuran m x m sebagai kunci untuk melakukan enkripsi dan dekripsi. Dasar teori matriks yang digunakan dalamHill Cipher antara lain adalah perkalian antar matriks dan melakukan invers pada matriks.
Teknik kriptografi ini enggunakan sebuah matriks persegi sebagai kunci berukuran m x m sebagai kunci untuk melakukan enkripsi dan dekripsi. Dasar teori matriks yang digunakan dalam Hill cipher antara lain adalah perkalian antar matriks dan melakukan invers pada matriks.
Karena menggunakan matriks sebagai kunci, Hill cipher merupakan algoritma kriptografi kunci simetris yang sulit dipecahkan, karena teknik kriptanalisis seperti analisis frekuensi tidak dapat diterapkan dengan mudah untuk memecahkan algoritma ini. Hill cipher sangat sulit dipecahkan jika kriptanalis hanya memiliki ciphertext saja (chipertext-only), namun dapat dipecahkan dengan mudah jika kriptanalis memiliki ciphertext dan potongan dari plaintext-nya (known-plaintext).
A. Gambar Kriptografi Simetris :
B. Contoh Kriptografi Simetris :
Perhitungan Matematis Dasar dari teknik hill cipher adalah aritmatika modulo terhadap matriks. Dalam penerapannya, Hill cipher menggunakan teknik perkalian matriks dan teknik invers terhadap matriks. Kunci pada hill cipher adalah matriks n x n dengan n merupakan ukuran blok. Jika matriks kunci kita sebut dengan K, maka matriks K adalah sebagai berikut :
Matriks K yang menjadi kunci ini harus merupakan matriks yang invertible, yaitu memiliki multiplicative inverse K-1 sehingga :
K.K-1 = 1
Ingat ! Kunci harus memiliki invers karena matriks K-1 tersebut adalah kunci yang digunakan untuk melakukan dekripsi.
Cara Enkripsi
Dengan mengkodekan atau mengubah setiap huruf abjad dengan integer sebagai berikut: A = 0, B = 1, …, Z = 25
maka secara matematis, proses enkripsi pada hill cipher adalah:
C = K . P mod 26
C = Cipherteks | K = Kunci | P = Plainteks
Proses enkripsi pada hill cipher dilakukan per blok plainteks. Ukuran blok tersebut sama dengan ukuran matriks kuncinya. Perhatikan contoh dibawah ini!
P = D O D I S P U T R A ,dikodekan/diintegerkan menjadi
P = 3 14 3 8 18 15 20 19 17 0
Karena matriks kunci K berukuran 2, maka plainteks dibagi menjadi blok yang masing-masing bloknya berukuran 2 karakter. Blok pertama dari plainteks P1,2 =[3;14] kemudian dienkripsi dengan kunci K dengan persamaan C = K . P mod 26. Karena perkalian tersebut menghasilkan lebih dari angka 25 maka dilakukan modulo 26 pada hasil yang lebih dari 25.
Karakter yang berkorespondensi dengan 21 dan 9 adalah V dan J. Setelah melakukan enkripsi semua blok pada plainteks P maka dihasilkan cipherteks C sebagai berikut:
P = D O D I S P U T R A
C = V J R N P W L U R X
Cipherteks yang dihasilkan oleh enkripsi hill chiper atau kode hill menghasilkan cipherteks yang tidak memiliki pola yang mirip dengan plainteks atau pesan aslinya.
Mancari K Invers dan Teknik Dekripsi
Perhitungan matematis dekripsi pada hill chiper atau kode hill ini sama halnya dengan enkripsi. Namun matriks kunci harus dibalik (invers) terlebih dahulu dan kunci invers harus memenuhi persamaan K . K-1 = 1.
P=K-1.Cm26
Sebelum mendekripsi kita akan menginvers kunci K terlebih dahulu, untuk menginvers kita akan menggunakan persamaan [K | I] = K-1, proses invers ini kita akan kita lakukan dengan operasi baris/ row operation.
Dalam variasi, pesan diblokir menjadi segmen yang panjang kunci yang panjang dan setiap segmen permutasi yang sama (yang diberikan oleh kunci) diterapkan. Ini sama dengan transposisi columnar mana baca-out adalah dengan baris bukan kolom. columnar transposisi cipher terus digunakan untuk tujuan yang serius sebagai komponen yang lebih kompleks cipher setidaknya dalam tahun 1950-an.
CNHTQ EHUNE PGONJ ETTGE SOTHL AIRUK
CNHTE HUNPG ONETT GESOT HLAIR U
B. ALGORITMA COLUMNAR
Dalam columnar transposisi cipher, pesan ditulis dalam deretan panjang tetap, dan kemudian membaca lagi kolom dengan kolom, dan kolom yang dipilih dalam beberapa orak rangka. Kedua lebar baris dan permutasi dari kolom biasanya ditentukan oleh kata kunci. Sebagai contoh, kata Zebra adalah panjang 6 (sehingga baris yang panjang 6), dan permutasi ditentukan oleh urutan abjad dari huruf-huruf dalam kata kunci. Dalam hal ini, order akan “6 3 2 4 1 5″.
Dalam columnar transposisi cipher biasa, spasi cadang dipenuhi dengan nulls;dalam kolumnar transposisi cipher tidak teratur, ruang yang dibiarkan kosong.Akhirnya, pesan tersebut dibacakan dalam kolom, dalam urutan yang ditentukan oleh kata kunci. Misalnya, kita menggunakan zebra kata kunci dan pesan KAMI DITEMUKAN. LARI DI SEKALI. Dalam transposisi columnar biasa, kita menulis ini ke grid sebagai berikut:
Menyediakan lima nulls (QKJEU) di akhir. Ciphertext tersebut kemudian membacakan sebagai:
Dalam kasus yang tidak teratur, kolom tidak dilengkapi dengan nulls:
Hal ini mengakibatkan ciphertext berikut:
Untuk memahaminya, penerima harus bekerja di luar panjang kolom dengan membagi panjang pesan dengan panjang kunci. Lalu ia dapat menulis pesan di kolom lagi, maka re-order kolom dengan mereformasi kata kunci.
Columnar transposition merupakan salah satu metode kriptografi dimana pesan dituliskan berderet dari suatu panjang yang ditetapkan, lalu dibaca kembali kolom per kolom dengan urutan pembacaan berdasarkan suatu kata kunci. Panjang deret ditentukan oleh panjang kata kunci. Urutan pembacaan kolom berdasarkan urutan abjad kata kunci, misalnya ZEBRAS menjadi “6 3 2 4 1 5”.
Misalkan ada sebuah pesan NAMA SAYA ODIT akan dienkripsi menggunakan transposisi kolumnar dengan kata kunci HOI maka proses enkripsinya akan menjadi seperti ini:
Hasilnya chipertext adalah NAYD ASAT MAOT
Contoh lain kata COLUMN mempunyai panjang 6 (sehingga panjang baris adalah 6) dan permutasi didefinisikan dengan urutan alphabet dari kata kunci. Dengan menggunakan kata COLUMN, maka urutannya akan menjadi [1 5 2 6 3 4]. Untuk lebih jelasnya, berikut adalah contohnya:
Misalkan kita mempunyai plainteks
ESCAPE TONIGHT THROUGH TUNNEL
enkripsi umum columnar transpositiondilakukan dengan kunci PRISON [4 5 1 6 3 2]
Maka cipherteksnya menjadi
Pada columnar transposition yang umum, semua area kosong diisi dengan nilai dummy seperti contoh di atas, dalam hal ini [Q K J E]. Sedangkan pada beberapa coloumnar transposition yang lain, area kosong dibiarkan tetap kosong. Dengan menggunakan contoh plainteks dan kunci seperti di atas:
maka cipherteksnya menjadi
Untuk mendapatkan kembali plainteks, penerima pesan harus mencari jumlah kolom dengan membagi panjang pesan dengan panjang kunci. Kemudian dia akan dapat menulis kembali pesan dalam kolom- kolom. Selanjutnya mengurutkan kembali kolom tersebut dengan melihat kata kunci.
Komentar
Posting Komentar