KONSEP PEMBUATAN APLIKASI KRIPTOGRAFI GABUNGAN ANTARA ALGORITMA CAESAR CIPHER DAN ALGORITMA BASE64 DENGAN BAHASA PEMROGRAMAN

C#
Dalam tulisan ini penulis akan mejelaskan sebuah konsep kriptografi yang mengabungkan antara algoritma kriptografi klasik dan modern. Algoritma klasik yang penulis gunakan adalah Caesar cipher, sedangkan algoritma kriptorafi modernnya adalah Base64. 1. Caesar cipher Inti dari algoritma kriptografi ini adalah melakukan pergeseran terhadap semua karakter pada plainteks dengan nilai pergeseran yang sama. Adapun langkah-langkah yang dilakukan untuk membentuk chiperteks dengan Caesar Cipher adalah : 1. Menentukan besarnya pergeseran karakter yang digunakan dalam membentuk cipherteks ke plainteks. 2. Menukarkan karakter pada plainteks menjadi cipherteks dengan berdasarkan pada pergeseran yang telah ditentukan sebelumnya. Berikut adalah contoh penggunaan Caesar Cipher dengan besar pergeseran sebesar 3 karakter. Dengan nilai pergeseran tersebut, didapat tabel pergeseran nilai Caesar Cipher sebagai berikut :

Tabel Subtitusi : pi : 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 ci : 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

Contoh proses penggunaan Caesar Chiper : Pesan : ITATS

Dengan enkripsi menggunakan tabel di atas, pesan dienkripsi menjadi : Chiper : LWDWV

Penerima yang menerima chiper tersebut kemudian mendekripsi lagi pesan

Persamaan Enkripsi ci = E(pi) = (pi + k) mod 26 .Persamaan Dekripsi pi = D(ci) = (ci ± k) mod 26 dengan pi adalah karakter plainteks ke-i. binary menjadi rangkaian bit-bit plainteks dibagi menjadi blok-blok bit dengan panjang yang sama. biasanya 64 bit yang direpresentasikan dengan karakter ASCII.. B=1. dan jumlah pergeseran sebagai key. Algoritma Base64 Algoritma Base64 merupakan algoritma yang menggunakan salah satu konsep algoritma enkripsi modern yaitu algoritma Block Cipher yang yang berupa operasi pada mode bit namun algoritma Base64 ini lebih mudah dalam pengimplementasiannya dari algoritma-algoritma yang lainnya. ci adalah karakter chiperteks ke-i.dengan menggunakan tabel yang sama menjadi : Pesan Hasil Dekripsi : ITATS Bila setiap abjad pada plainteks dimisalkan sebagai angka dengan urutan A= 0. dan Z=25. Base64 menggunakan karakter A ± Z. C=2.. maka didapat persamaan matematis dari algoritma Caesar Cipher yaitu : . RFC ini menegaskan sebuah standar untuk implementasi Base64 terhadap data binary dan melampirkan sebuah karakter padding ³=´ jika terdapat kekurangan pada byte. a ± z dan 0 ± 9 untuk 62 nilai pertama. . Standar yang penulis gunakan adalah MIME (Multipurpose Internet Mail Extensions)/RFC 1521. Pada algoritma ini. . 2.. sedangkan 2 nilai terakhir digunakan symbol (+ dan /). Dan k adalah jumlah pergeseran Abjad. Base64 terhadap data adalah metoda yang untuk melakukan encoding (penyandian) format 6-bit character..

maka Base64 mengaturya dengan menambahkan padding pada bit terakhir. jika string biner tidak tepat dibagi dalam 6-bit dan urutan biner tidak merupakan ukuran 3 byte. bentuk blok dengan panjang masing-masing blok adalah 6 bit Sehingga menjadi : 011000 010110 101101 110101 4.Berikut adalah tabel Index Base64 Di bawah ini merupakan sebuah contoh step by step mengkonversi kata ³aku´. Maka cipherteks dari plainteks ³aku´ adalah : Ywt1 Selanjutnya. . 2. Selanjutnya konversikan bentuk desimal tersebut ke dalam bentuk string dengan melihat tabel encode base 64. maka akan dipisah menjadi ³ITA´ dan ³TS+1byte´. Dari baris biner tersebut. 6. Rubah ³aku´ dalam bentuk desimal menjadi : 97. Konversikan tiap blok tersebut dalam bentuk desimal. menjadi : 01100001 01101011 01110101 3. Sebagai contoh kata ³ITATS´. Plainteks : aku 1. 107. 117 Konversikan dalam bentuk biner 8 bit. menjadi : 24 22 45 53 5.

. Sedangkan pada tabel 4 jumlah byte padding yang ditambahkan adalah 1 Byte karena sebelumnya telah memiliki 2 Byte. Apabila terdapat singlebyte maka jumlah padding yang ditambahkan adalah 2 Byte yang bernilai 0. seperti dapat dilihat pada tabel di bawah ini. 3. Konsep Pembuatan Aplikasi Berdasarkan dua algoritma kriptografi tersebut di atas. Sehingga memenuhi aturan 3 Byte (24 bit). penulis membuat suatu rancangan aplikasi yang akan meng-enkripsi suatu teks dengan menggunakan suatu algoritma gabungan kedua algoritma tersebut. Contoh penggunaan padding dapat dilihat pada tabel berikut.Proses padding akan dilakukan apabila sekelompok karakter yang dimiliki tidak bernilai 3 Byte (24 bit). Padding dilakukan dengan menambahkan karakter µ=¶.

karena dengan bahasa pemrograman ini kita dapat menggunakan librari criptografi yang telah ada di dalamnya. Kami menggunakan bahasa pemrograman Microsoft Visual C# 2008.Konsep tersebut secara umum digambarkan dengan bagan berikut : Proses Enkripsi Plainteks Proses Dekripsi Cipherteks Enkripsi dengan algoritma caesar Enkripsi dengan algoritma base64 Enkripsi dengan algoritma base64 Enkripsi dengan algoritma caesar Chiper Plainteks Dalam Pembuatan Aplikasi ini. Sebelum melakukan peng-codingan pada program kami membuat flowchart yang akan menjadi konsep aplikasi ini. Adapun flowchart tersebut terdiri dari 2 proses. Berikut adalah gambar flowchart tersebut : . yakni Proses Enkripsi Dan Dekripsi.

i++ Konversi ASCII to Binary Hitung Panjang Binary Dapat di bagi 3 Byte Tidak Ya Padding 3 Byte Tdk Tambahkan 2 Byte Ya Buat pengelompokan masing2 : 6 bit Konversi ke index base64 Desimal Tampilkan Hasil Konversi End .Flowchart Enkripsi START Input P I =0 C = (P + K) mod 256 IF : I < Panjang Plainteks.

.Comand Dekripsi Berikut adalah User Interface : Comand Enkripsi Plainteks Cipherteks Comand Clear all Kesimpulan : Aplikasi ini adalah aplikasi yang menggabungkan antara 2 metode kriptografi Modern dan Klasik. Metode kriptografi klasik yang kami gunakan adalah caesar cipher. sedangkan metode kriptografi modern yang kami gunakan adalah metode kriptografi Base64.

2009 7. http://www.LookupTables. Modul Pembelajaran Matakuliah Computer Security System. www. ³Makalah PDF : Pembuatan aplikasi kriptografi algoritma Base64 menggunakan java jdk 1.blogspot.com. bandung. ³Pemrograman Dasar C-Java-C#´. 2009.Refferensi : 1. 3. Jurusan Sistem Informasi Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Gunadarma. http://crowja.html di akses pada 3 Januari 2012 4. Antonius. Wikipedia.html 2.com/2011/02/enkripsi-base64-pengertian-manfaat-dan.au/encode_encrypt. 2011 6.di-mgt. Hayatun Nufus. Informatika.com di akses 3 Januari 2012 5.6´. Erico Darmawan.com . ITATS.

Sign up to vote on this title
UsefulNot useful