Enkripsi Julius Caesar

August 15, 2009 at 2:46 am 3 comments

Bagi orang yang memiliki data pribadi, atau data tertentu yang hanya boleh diketahui orang tertentu saja, tentu dia menginginkan agar data yang dia miliki hanya dia dan orang-orang tertentu saja yang bisa melihatnya. Contoh sebuah surat, apabila surat yang akan kita kirim adalah surat yang isinya rahasia, maka tentunya isi surat tersebut dimasukkan ke dalam amplop. Andaikata ada orang yang berniat tidak baik kemudian membuka amplop tersebut, maka bagaimana caranya agar isi surat tersebut tidak bisa dibaca oleh orang tersebut. Istilahnya isi surat tersebut sudah dienkripsi sehingga pembaca surat tersebut harus mendekripsikan agar bisa membacanya. Untuk bisa mendeskripsikannya maka perlu tahu caranya, atau metode enkripsi yang digunakan oleh sang penulis surat.
Enkripsi adalah suatu proses yang melakukan perubahan sebuah kode dari yang bisa dimengerti menjadi sebuah kode yang tidak bisa dimengerti (tidak berbaca). Enkripsi bisa diartikan sebagai kode atau chipper. Sebuah chiper menggunakan suatu algoritma yang dapat mengkodekan semua aliran data (stream) bit dari sebuah pesan menjadi cryptogram yang tidak dimengerti (unintelligible).

3 (tiga) kategori enkripsi, yaitu :
1. Kunci enkripsi rahasia. Dalam hal ini ada sebuah kunci rahasia yang digunakan untuk mengenkripsi dan sekaligus digunakan untuk mendeskripsi.
2. Kunci enkripsi public. Dalam hal ini ada dua kunci yang digunakan. Satu untuk enkripsi dan satunya untuk deskripsi.
3. Fungsi “one way”, atau satu arah adalah suatu fungsi dimana informasi dienkripsi untuk menciptakan “signature” dari informasi asli yang bisa digunakan untuk keperluan autentikasi.

Cryptography adalah suatu ilmu ataupun seni mengamankan pesan, dan dilakukan oleh cryptographer. Sedang, cryptanalysis adalah suatu ilmu dan seni membuka (breaking) ciphertext dan orang yang melakukannya disebut cryptanalyst.

Kriptografi, secara umum adalah ilmu dan seni untuk menjaga kerahasiaan berita [bruce Schneier – Applied Cryptography]

Cryptographic system atau cryptosystem adalah suatu fasilitas untuk mengkonversikan plaintext ke ciphertext dan sebaliknya. Dalam sistem ini, seperangkat parameter yang menentukan transformasi pencipheran tertentu disebut suatu set kunci. Proses enkripsi dan dekripsi diatur oleh satu atau beberapa kunci kriptografi. Secara umum, kunci-kunci yang digunakan untuk proses pengenkripsian dan pendekripsian tidak perlu identik, tergantung pada sistem yang digunakannya

Suatu pesan yang tidak disandikan disebut sebagai plaintext ataupun dapat disebut juga sebagai cleartext. Proses yang dilakukan untuk mengubah plaintext ke dalam ciphertext disebut encryption atau enchiperment. Sedangkan proses untuk mengubah chipertext kembali ke plaintext disebut decryption atau decipherment. Secara sederhana istilah-istilah di atas dapat digambarkan sebagai berikut :

julius2

Jauh sebelum ada enkripsi di dunia maya, Julius Caesar ternyata sudah menggunakan enkripsi dalam menulis pesan untuk para jenderalnya. Cara yang digunakan Julius Caesar adalah dengan menggeser setiap huruf dalam pesan yang dia kirimkan. Sebagai contoh jika pergeserannya adalah penambahan tiga karakter, maka :

Huruf asli    : A B C D E F G H I J K L M O P Q R S T U V W X Y Z

Huruf sandi : D E F G H I J K L M O P Q R S T U V W X Y Z  [   \  ]

Sebagai contoh dasar apabila menggunakan Visual Basic desain formnya seperti berikut:

julius1

TextBox paling atas diberinama txtplain

TextBox bawahnya lagi diberinama txtchipper

TextBox paling bawa diberinama txtplain1

Ada dua Command yang digunakan untuk mengenkripsi dan satunya lagi untuk mendekripsi.

Sedangkan coding untuk kedua tombol tersebut adalah

Private Sub cmdenkripsi_Click()
n = Len(Trim(txtplain.Text))
For i = 1 To n
kar = Mid(txtplain.Text, i, 1)
nascii = Asc(kar)
ntambah = nascii + 3
sandi = Chr(ntambah)
xsandi = xsandi + sandi
Next i
txtchipper.Text = xsandi
End Sub

Private Sub cmddekripsi_Click()
n = Len(Trim(txtchipper.Text))
For i = 1 To n
kar = Mid(txtchipper.Text, i, 1)
nascii = Asc(kar)
nkurang = nascii – 3
sandi1 = Chr(nkurang)
xsandi1 = xsandi1 + sandi1
Next i
txtplain1.Text = xsandi1
End Sub

Sehingga jika dirun hasilnya seperti berikut :

julius3

begitulah hasilnya kalau dicoba dengan Visual Basic. Bagaimana kalau dicoba dengan php ? sekalian saja dicoba dengan membuat desain formnya seperti berikut :

julius4

sedangkan scriptnya sebagai berikut :

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”&gt;
<html xmlns=”http://www.w3.org/1999/xhtml”&gt;
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=iso-8859-1″ />
<title>Julius Caesar</title>
</head>
<body>
<?
if ($_POST[‘submit1’])
{
$n = strlen(trim($_POST[‘plain’]));
for ($i=1; $i<= $n; $i++) {
$w = substr($_POST[‘plain’], $i-1, 1);
$x = ord($w);
$xx = chr($x + 3);
$sandi = $sandi . $xx;
}
$hasilplain = $sandi;
}
else if ($_POST[‘submit2’])
{
$n = strlen(trim($_POST[‘plain’]));
for ($i=1; $i<= $n; $i++) {
$w1 = substr($_POST[‘plain’], $i-1, 1);
$x1 = ord($w1);
$xx1 = chr($x1 + 3);
$sandi1 = $sandi1 . $xx1;
}
$hasilplain = $sandi1; //untuk chipper text

$n = strlen(trim($_POST[‘chipper’]));
for ($i=1; $i<= $n; $i++) {
$w = substr($_POST[‘chipper’], $i-1, 1);
$x = ord($w);
$xx = chr($x – 3);
$sandi = $sandi . $xx;
}
$hasilchipper = $sandi; //untuk plain text bawah
}
?>

<form method=”POST” action=”<?php echo $_SERVER[‘PHP_SELF’]; ?>””>
<table>
<tr><td>Plain Text</td><td>:</td><td><input type=”text” name=”plain” value = “<? echo $_POST[‘plain’] ;?>” /></td> </tr>
<tr><td></td><td></td><td>
<input type=”submit” name=”submit1″ value=”Enkripsi” />
</td></tr>
<tr><td>Chipper Text</td><td>:</td><td>
<input type=”text” name=”chipper” value = “<? echo “$hasilplain” ; ?>”/></td> </tr>
<tr><td></td><td></td><td>
<input type=”submit” name=”submit2″ value=”Dekripsi” />
</td></tr>
<tr><td>Plain Text</td><td>:</td><td><input type=”text” name=”plain1″ value =”<? echo “$hasilchipper”; ?>” /></td> </tr>
</table>
</form>
</body>
</html>

jika dijalankan hasilnya sebagai berikut :

julius5

nah jadi juga akhirnya….

Entry filed under: Enkripsi. Tags: .

makan dan bicara Vigenere Cipher

3 Comments Add your own

  • 1. Arie  |  September 9, 2009 at 5:06 pm

    terima kasih pencerahannya …
    sudah saya coba cuma keluarnya : WIVERK
    masih belum sesuai harapan …

    Reply
  • 2. Arie  |  September 9, 2009 at 5:27 pm

    TERIMA KASIH PENCERAHANNYA ….. SUDAH JADI PAK…

    Reply
  • 3. Arie kusworo  |  September 9, 2009 at 5:30 pm

    ahirnya .. gak sia2 sampai jam 12.28 , semakin malam semakin membawa rejeki … dengan niat semua pasti bisa !!!

    Reply

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Trackback this post  |  Subscribe to the comments via RSS Feed


August 2009
M T W T F S S
« Jun   Sep »
 12
3456789
10111213141516
17181920212223
24252627282930
31  

%d bloggers like this: