Caesar Chiper
Caesar Chiper
Tabel subsitusi:
Plainteks:
|
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
|
Cipherteks:
|
D E F G H I J K L M N O P Q R S T U V W X Y Z A B C
|
Jadi huruf A pada plainteks disubsitusikan dengan D, huruf B disubsitusikan dengan E, demikian seterusnya. Gambar diatas memperlihatkan Caesar wheel yang berfungsi sebagai subsitusi. Caesar wheel terdiri dua buah lempeng lingkaran besi. Lingkaran besi paling luar menyatakan huruf-huruf plainteks sedangkan lingkaran besi paling terdalam menyatakan huruf-huruf chiperteks. Lingkaran besi terdalam dapat diputar sejauh pergeseran yang diinginkan. Misalnya jika lingkaran besi terdalam digeser sejauh 3 huruf, maka susunan huruf-huruf dalam kedua lingkaran besi mempresentasikan tabel subsitusi di atas.
Gambar Caesar Wheel
Dengan
menggunakan caesar chiper, maka pesan
AWASI
ASTERIX DAN TEMANYA OBELIX
Disandikan
dengan caesar chiper menjadi
DZDVL
DVWHUL[ GDQ WHPDQQ\D REHOL[
Dengan
mengkodekan setiap huruf alfabet dengan integer:’A’=0,
’B’=1,..., ‘Z’=25, maka secara matematis pergeseran 3 huruf alfabet ekivalen
dengan melakukan operasi modulo terhadap plainteks P menjadi chiperteks C
dengan persamaan
C = E(P) = (P+3) mod 26 (1)
Karena
ada 26 huruf di dalam alfabet. Penerima pesan mengembalikan lagi chiperteks
dengan opreasi kebalikan, yang secara matematis dapat dinyatakan dengan
persamaan
P = D(P) = (C-3) mod 26
(2)
Perhatikan
bahwa fungsi D adalah balikan (inverse)
dari fungsi E,
Chiperteks
pada contoh 1 dapat juga dihitung dengan menggunakan persamaan 1 sebagai berikut:
P1 = ‘A’ = 0 maka c1 = E(0) = (0+3) mod 26 = 3 =’D’
P2 = ‘W’ = 22 maka c2 = E(22) = (22+3) mod 26 = 25 =’Z’
P3 = ‘A’ = 0 maka c3 = E(0) = (0+3) mod 26 = 3 =’D’
P1 = ‘S’ = 18 maka c4 = E(18) = (18+3) mod 26 = 21 =’V’
Dst..
Bila keseluruhan
perhitungan diselesaikan, maka diperoleh chiperteksnya adalah
DZDVL DVWHUL[ GDQ WHPDQQ\D REHOL[
Chiperteks
tersebut dapat di kembalikan menjadi plainteks asal dengan persamaan 2 menjadi
AWASI ASTERIX DAN TEMANNYA OBELIX
Dalam praktek,
orang biasanya mengelompokkan chiperteks menjadi kelompok-kelompok yang terdiri
dari beberapa huruf. Tujuannya agar kriptanalis menjadi lebih sukar. Kriptanalis
mudah menerka jika kata-kata di dalam chiperteks sama panjangnya dengan
kata-kata di dalam plainteksnya. Dengan mengelompokkan 4 huruf, maka chiperteks
pada contoh 1 di atas menjadi :
DZDV LDVW HUL[ GDQW HPDQ Q\DR EHOL [
Berikut
contoh aplikasi Caesar Chiper menggunakan vb.net
Ket :
- Label1 = text : PLAINTEKS
- Label2 = text : CHIPERTEKS
- Botton1 = nama : enkripsi
- Botton2= nama : deskripsi
- Textbox1 = nama : plainteks
- Textbox2 = nama : chiperteks
Listing
program
Public Class Form1
Private
Sub enkripsi_Click(ByVal
sender As System.Object, ByVal e As
System.EventArgs) Handles enkripsi.Click
Dim
x As String = ""
Dim
xkalimat As String
= ""
For
i = 1 To Len(plainteks.Text)
x = Mid(plainteks.Text,
i, i)
x = Chr(Asc(x) + 3)
xkalimat = xkalimat + x
Next
chiperteks.Text = xkalimat
End
Sub
Private
Sub dekripsi_Click(ByVal
sender As System.Object, ByVal e As
System.EventArgs) Handles dekripsi.Click
Dim
X As String = ""
Dim
XKALIMAT As String
= ""
For
i = 1 To Len(chiperteks.Text)
X = Mid(chiperteks.Text,
i, i)
X = Chr(Asc(X) - 3)
XKALIMAT = XKALIMAT + X
Next
plainteks.Text = XKALIMAT
End
Sub
End Class
Hasil
program
Demikian artikel saya tentang Caesar Chiper, semoga artikel di
atas bermanfaat bagi teman sekalian...
Komentar
Posting Komentar