Sabtu, 07 Februari 2009

Caesar Cipher


Caesar cipher adalah enkripsi berbasis karakter  paling sederhana dengan metode pertukaran atau subtitusi, dimana tiap 1 karakter diganti dengan karakter yang berada di n digit sebelah kanan atau kirinya, tergantung arah pergeserannya. Caesar cipher adalah dasar enkripsi yang sangat baik untuk dipahami sebelum membahas enkripsi berbasis karakter lainnya yang lebih rumit. Perhatikan Caesar Wheel (Roda Kaisar).

Setiap abjad diasosiasikan dengan angka, misal: A = 0, B = 1, …, Z = 25, maka secara matematis caesar cipher dirumuskan sebagai berikut:



Enkripsi: Ci = E(Pi) = (Pi + n) mod 26
Dekripsi: Pi = D(Pi) = (Ci - n) mod 26

dimana :
Ci : Karakter hasil enkripsi (cipher character) ke-i
Pi : Karakter pesan asli (plain character) ke-i
n : Jumlah pergeseran karakter sebanyak n digit.


Sehingga apabila dilakukan pergeseran ke kanan sebanyak 13 digit seperti Caesar Whell (Roda Kaisar) di atas, maka karakter A menjadi N, H menjadi U, M menjadi Z dan seterusnya.



Jika Caesar Wheel (Roda Caesar) diputar  360 derajat  atau digeser sebanyak 26 karakter, maka Plain text sama dengan Cipher text karena posisi huruf cipher character akan sama dengan posisi huruf plain character. 



Dan apabila pergeseran roda lebih dari 360 derajat, pada contoh di bawah ini digeser 27 karakter, maka pergeseran 27 karakter sama dengan pergeseran 1 karakter saja. Rumus: 27 modulo 26 = 1 karakter.



Keamanan
Enkripsi Caesar cipher sangat tidak aman, karena kuncinya hanya 26 kombinasi sehingga bisa dipecahkan, hanya dengan metode exhaustive key search saja. Selain itu polanya enkripsinya dapat diprediksi, terutama pada karakter-karakter yang sering muncul seperti huruf vokal (a, i, u, e, o).

Sejarah
Nama Sandi Caesar diambil dari Julius Caesar, yang menurut buku Suetonius Kehidupan Dua belas Caesar, menggunakan sandi ini dengan geseran tiga, untuk mengirim pesan yang mengandung rahasia atau taktik militer.

"Jika ia memiliki suatu rahasia yang akan disampaikan, ia menuliskannya dalam sandi, dengan mengganti urutan abjad, sehingga tak satu kata pun dapat dimengerti. Jika ada yang ingin membaca pesan-pesan ini, ia harus mengganti huruf keempat dalam alfabet, yaitu D, untuk A, dan seterusnya untuk huruf-huruf lain." - Suetonius, Kehidupan Julius Caesar 56

Pada Perang Dunia I, Tentara Kekaisaran Rusia menggunakan Caesar cipher karena banyak ahli militer pada waktu itu, tidak menguasai ilmu kriptografi yang lebih maju, sebagai akibatnya, para kriptanalis asal Jerman dapat memecahkan sandi-sandi tentara Rusia dengan mudah.

Cuplikan kode program: VB. Net




4 komentar:

abdulsalims mengatakan...

Brooo... Minta Source Code nya dooong!!

Unknown mengatakan...

bro minta source codenya dong

Unknown mengatakan...

Maap, saya baru baca maklum sibuk. Ini enkripsi yg sangat sederhana.

Ferdes mengatakan...

mana lagi source code nya

Posting Komentar