Penggunaan Metode Enkripsi Vigenere
dan MD5 dalam Proses Pengamanan Pesan
Oleh
:
PUTU ARIANA
14.1401.081
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS ILMU KOMPUTER
UNIVERSITAS INDONESIA TIMUR
MAKASSAR
2017
BAB I
PENDAHULUAN
A. Latar Belakang
Pesatnya perkembangan
teknologi pada era saat ini, memudahkan setiap orang untuk melakukan berbagai
aktivitas di dunia maya. Sebagai contoh seperti aktivitas mencari informasi
(searching), berbelanja secara on-line, mengirimkan pesan elektronik (e-mail),
dan berbagai aktivitas yang lain. Penggunaan fasilitas internet dimanfaatkan
oleh sebagian besar orang untuk memudahkan aktivitas mereka sehari-hari. Selain
untuk mempersingkat waktu, penggunaan media internet juga sangat ekonomis
karena meminimalkan biaya. Seperti pada aktivitas mengirimkan e-mail, sangat
memudahkan pengguna untuk mengirimkan pesan secara cepat karena beberapa saat
setelah pesan dikirim pesan tersebut dapat dibaca oleh penerima. Selain itu,
pengiriman e-mail juga sangat ekonomis karena tidak memerlukan biaya banyak
untuk ongkos di jalan. e-mail juga dapat mengunggah data dengan kapasitas yang
lebih besar dibandingkan dengan aplikasi yang lain. Namun di antara beberapa
keunggulan dari proses pengiriman e-mail, tentunya hal ini memiliki kekurangan.
Salah satu bahaya besar dalam proses pengiriman e-mail yaitu tentang keamaan
proses pengiriman e-mail. Beberapa masalah yang biasanya terjadi pada keamaan
proses pengiriman e-mail yaitu penyadapan baik penyadapan aktif maupun pasif,
penipuan, atau bahkan pencurian akun pengguna e-mail untuk digunakan hal-hal
yang merugikan pengguna. Para intruder
(peretas) biasanya memanfaatkan kesempatan untuk mengintai aktivitas seseorang
yang akan disadap. Intruder menyerap pesan-pesan yang dianggap mereka penting
(seperti yang bersifat mempunyai nilai jual). Mereka akan mengabaikan
pesan-pesan yang menurut mereka tidak penting seperti spam dan file sampah
karena mengganggu sebagian aktivitas pada intruder. Meskipun hanya pengirim dan
penerima e-mail yang hanya dapat membaca pesan tersebut secara kasat mata,
seorang intruder dapat dengan mudah membaca pesan-pesan pengguna e-mail. Berdasarkan permasalahan di atas, penulis
bertujuan untuk memaparkan beberapa solusi untuk mengatasinya. Pada makalah
ini, penulis akan memaparkan dua metode untuk mengatasi masalah penyadapan yang
biasanya dilakukan oleh para intruder, yaitu dengan menggunakan metode enkripsi
Vigenere yang merupakan metode kriptografi klasik dan MD5 (Message Digest 5)
yang merupakan metode kriptografi modern. Dengan metode enkripsi Vigenere,
pesan teks biasa (plain text) akan diubah menjadi suatu pesan yang tidak mudah
dibaca (cipher text). Dengan algoritma metode MD5, setiap pesan yang akan
di-enkripsi, terlebih dahulu dicari berapa banyak bit yang terdapat pada pesan,
anggap sebanyak b bit.
BAB II
Metode Enkripsi Vigenere dan MD5
A.
Kriptografi
Kriptografi berasal dari
bahasa Yunani, yang terdiri dari dua kata yaitu kripto dan graphia. Kripto
berarti secret (rahasia) dan graphia berarti writing (tulisan). Menurut
terminologinya, kriptografi adalah ilmu dan seni untuk menjaga keamanan pesan
ketika pesan dikirim dari suatu tempat ke tempat yang lain [1]. Definisi yang
dipakai dalam buku-buku yang lama (sebelum tahun 1980-an) menyatakan bahwa
kriptografi adalah ilmu dan seni untuk menjaga kerahasiaan pesan dengan cara
menyandikannya ke dalam bentuk yang tidak dapat dimengerti lagi maknanya [7].
Schneier menyatakan bahwa kriptografi adalah seni untuk menjaga keamanan pesan
[11]. Sedangkan Menezes dan kawan-kawan menyatakan bahwa kriptografi adalah
ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek
keamanan informasi seperti kerahasiaan, integritas data, serta otentikasi [5].
Adapun tujuan dari
system kriptografi adalah sebagai berikut
1. Confidentiality
Memberikan kerahasiaan pesan dan menyimpan data dengan
menyembunyikan informasi melalui teknik-teknik enkripsi.
2. Message Integrity
Memberikan jaminan untuk tiap bagian bahwa pesan tidak akan
mengalami perubahan dari saat ia dibuat hingga saat ia dibuka.
3. Non-repudiation
Memberikan cara untuk membuktikan bahwa suatu dokumen
datang dari seseorang apabila ia mencoba menyangkal memiliki dokumen tersebut.
4. Authentication
Memberikan dua layanan. Pertama, mengidentifikasi keaslian
suatu pesan dan memberikan jaminan keautentikannya. Kedua, menguji identitas
seseorang apabila ia akan memasuki sebuah sistem.
Pada dasarnya keamanan dan kerahasian suatu pesan, data,
ataupun informasi adalah merupakan hal yang
mutlak yang harus kita lakukan. Sedangkan alat untuk melakukan
pengamanan data dalam sistem komunikasi jaringan komputer sering disebut
cryptography. Kriptografi (cryptography) merupakan ilmu dan seni penyimpanan
pesan, data, atau informasi secara aman. Kritptanalisis (cryptanalysis)
merupakan ilmu dan seni pembongkaran pesan, data, atau informasi rahasia
seperti di atas. Kriptologi (cryptology) adalah panduan dari kriptografi dan
kriptanalist. Kriptografi memiliki dua
bagian yang penting, yaitu enkripsi dan dekripsi. Proses yang dilakukan untuk
mengamankan sebuah pesan (yang disebut
plaintext) menjadi pesan yang
tersembunyi (disebut ciphertext) adalah
enkripsi (encryption).
B.
Vigenere Cipher
Vigenere chiper merupakan salah satu algoritma kriptografi klasik
untuk menyandikan suatu plaintext dengan menggunakan teknik
substitusi. Vigenere cipher pada
dasarnya cukup rumit untuk
dipecahkan. Meskipun begitu,
Vigenere cipher tetap
memiliki kelemahan. Salah satunya adalah dapat diketahui panjang
kuncinya dengan menggunakan metode kasiski.
Hal ini disebabkan karena umumnya
terdapat frasa yang berulang-ulang pada
ciphertext yang dihasilkan.
Vigenere Cipher
adalah suatu algoritma kriptografi klasik
yang ditemukan oleh
Giovan Battista Bellaso. Beliau
menuliskan metodenya
tersebut pada bukunya
yang berjudul La
Cifra del. Sig. Giovan
Battista Bellaso pada
tahun 1553. Nama vigenere
sendiri diambil dari seorang yang bernama Blaise de Vigenere.
Nama vigenere diambil sebagai
nama algoritma ini karena beliau menemukan kunci yang lebih kuat lagi untuk algoritma
ini dengan metode autokey cipher meskipun
algoritma dasarnya telah ditemukan lebih
dahulu oleh Giovan
Battista Bellaso.
Kode vigènere termasuk kode
abjad-majemuk (polyalphabetic substitution cipher). Algoritma ini baru dikenal
luas 200 tahun kemudian dan dinamakan kode vigènere. Vigènere merupakan pemicu
perang sipil di Amerika dan kode vigènere digunakan oleh Tentara Konfederasi
(Confederate Army) pada perang sipil Amerika (American Civil War). Kode
vigènere berhasil dipecahkan oleh Babbage dan Kasiski pada pertengahan abad 19
[2]. Algoritma enkripsi jenis ini sangat dikenal karena mudah dipahami dan
diimplementasikan. Teknik untuk menghasilkan ciphertext bisa dilakukan
menggunakan substitusi angka maupun bujursangkar vigènere. Teknik susbtitusi
vigènere dengan menggunakan angka dilakukan dengan menukarkan huruf dengan
angka, hampir sama dengan kode geser. Disampaikan juga oleh Phillip dan Garcia
bahwa, “With the advent of computer the Vigenère cipher has become even easier
to break. Most cipher texts can be
cracked within a few seconds even with long keys” [8].
Algoritma ini
menjadi terkenal karena cukup
sulit dipecahkan. Matematikawan Charles Lutwidge
Dodgson menyatakan bahwa algoritma
ini tidak terpecahkan. Pada tahun
1917, ilmuwan Amerika menyebutkan bahwa
Vigenere cipher adalah sesuatu
yang tidak mungkin untuk ditranslasikan. Namun hal ini terbantahkan
sejak Kasiski berhasil
memecahkan algoritma pada abad ke-19.
Pada dasarnya Vigenere
Cipher serupa dengan Caesar
Cipher, perbedaannya adalah pada
Vigenere Cipher setiap huruf pesan
aslinya digeser sebanyak satu huruf pada
kuncinya sedangkan pada
Caesar Cipher setiap huruf
pesannya digeser sebanyak 1 huruf
yang sama.
Algoritma Vigenere
Cipher ini menggunakan bujursangkar
Vigenere untuk melakukan
enkripsi. Setiap baris di dalam
bujursangkar menyatakan huruf-huruf
ciphertext yang diperoleh
dengan Caesar cipher. Untuk lebih jelasnya perhatikan gambar
di bawah ini.
Deretan huruf kuning mendatar merepresentasikan plaintext, sedangkan
deretan huruf hijau menurun merepresentasikan kunci. Contoh, misalkan plaintext dengan huruf P
disandikan dengan kunci K, maka hasil ciphertext yang dihasilkan adalah huruf
Z.
Gambar 1. Korespondensi
Plantext dan Chipertext.
Sedangkan metode lain untuk
melakukan proses enkripsi dengan metode vigènere cipher yaitu menggunakan
tabula recta (disebut juga bujursangkar vigènere).
Gambar 1. Tabel Bujursangkar Cipher Vigenere.
Kolom paling kiri dari
bujursangkar menyatakan huruf-huruf kunci, sedangkan baris paling atas
menyatakan huruf-huruf plaintext. Setiap baris di dalam bujursangkar menyatakan
huruf-huruf ciphertext yang diperoleh dengan Caesar cipher, yang mana jumlah
pergeseran huruf plaintext ditentukan nilai numerik huruf kunci tersebut
(yaitu, a=0, b=1, c=2, …, z=25). Bujursangkar vigènere digunakan untuk
memperoleh ciphertert dengan menggunakan kunci yang sudah ditentukan. Jika
panjang kunci lebih pendek daripada panjang plaintext, maka kunci diulang
penggunaannya (sistem periodik). Bila panjang kunci adalah m, maka periodenya
dikatakan m. Contohnya adalah sebagai berikut :
merupakan ciphertext dari pergeseran
karakter yang terdapat pada plaintext.
merupakan pergeseran karakter pada plaintext. Kr merupakan kunci berupa
hasil konversi tabel berbentuk bilangan desimal dari pergeseran karakter yang terdapat pada kunci yang
digunakan. Hasil perhitungan yang dilakukan akan menghasilkan sebuah bilangan
desimal untuk kemudian perlu dikonversi menggunakan tabel konversi untuk
memperoleh ciphertext.
Proses dekripsi menggunakan
Vigenere cipher membutuhkan 1 buah kunci untuk dapat menghasilkan plaintext.
Kunci yang digunakan merupakan kunci yang sama dengan kunci yang digunakan pada
proses enkripsi. Kemuadian dari kunci yang sudah ada akan dikonversikan
mengguakan tabel konversi sehingga menjadi bentuk desimal. Selain mengkonversi
kunci yang digunakan, Vigenere cipher juga harus mengkonversi ciphertext ( ) menggunakan table konversi yang juga
menghasilkan bilanngan desimal, kemudian plaintext ( ) akan diperoleh dengan mendekripsi plaintext
dengan persamaan :
Pi merupakan plaintext dari
pergeseran karakter yang terdapat pada ciphertext. merupakan pergeseran karakter pada
ciphertext. merupakan kunci berupa
hasil konversi tabel berupa bilangan desimal dari pergeseran karakter yang terdapat pada kunci yang digunakan.
Kemudian untuk mendapatkan dapat
dilakukan dengan terlebih dahulu mengurangi nilai dengan nilai hasil dari pengurangan yang sudah dilakukan
akan dijumlahkan dengan angka 26 untuk kemudian hasil penjumlahan akan di
modulo 26. Hasilnya akan berupa bilangan decimal, dari hasil bilangan desimal
yang didapat akan dikonversi dengan tabel konversi sehingga diperoleh karakter
plaintext yang diinginkan. Berikut ini adalah flowchart pengamanan pesan
menggunakan Vigenere Cipher.
Gambaran
2. Proses Pengamanan Pesan
Menggunakan
Vigenere Cipher.
Gambar
3. Flowchart Proses Pengamanan Pesan
Menggunakan Vilage Cipher.
Penyisipan pesan ke dalam
media covertext dinamakan encoding, sedangkan ekstraksi pesan dari stegotext
dinamakan decoding. Kedua proses ini mungkin memerlukan kunci rahasia yang
dinamakan stegokey agar hanya pihak yang berhak saja yang dapat melakukan
penyisipan pesan dan ekstraksi pesan. Gambar 4 memperlihatkan diagram
penyisipan dan ekstraksi pesan. Diagram ini mirip dengan diagram enkripsi-dekripsi
pada kriptografi [7].
C.
MD5 (Message Digest
5)
MD5 adalah salah satu
kriptografi modern dari serangkaian algortima message digest yang didesain oleh
Profesor Ronald Rivest dari MD5 termasuk algoritma enkripsi yang digunakan
untuk membuat variable yang lebih sederhana dari data yang berukuran besar
dengan memanfaatkan fungsi hash. Fungsi hash kriptografik yang digunakan secara
luas dengan hash value 128-bit. Dongjing menyatakan bahwa,“MD5 used widely in
cryptographic protocols and internet
Pada standar Internet (RFC
1321), MD5 telah dimanfaatkan dalam berbagai macam pada aplikasi keamanan,
serta juga dapat digunakan untuk melakukan pengujian integritas sebuah file.
Aplikasi MD5 mampu mengetahui bahwa pesan yang dikirim tidak ada perubahan sewaktu
berada di jaringan [12]
Pada algoritma metode MD5,
setiap pesan yang akan di-enkripsi, terlebih dahulu dicari berapa banyak bit
yang terdapat pada pesan, misalkan sebanyak
bit. Di sini adalah bit non
negatif integer, bisa saja nol dan
tidak harus selalu kelipatan delapan [12]. Pesan dengan panjang bit dapat digambarkan [2]. Algoritma utama
MD5 bekerja dalam keadaan 128 bit, yang terbagi menjadi empat 32 bit word, A,
B, C, dan D. Kemudian algoritma akan bekerja di setiap fragmen 512 bit. Proses
dalam setiap fragmen ini terdiri dari empat putaran, satu putaran terdiri dari
16 operasi berdasarkan fungsi F, penambahan modular, dan rotasi bit kiri.
Message Digest atau intisari
pesan memiliki tiga sifat penting, yakni: (1) Jika P diketahui, maka MD5(P)
akan dengan mudah dapat dihitung, (2) Jika MD5(P) diketahui, maka tidak mungkin
menghitung P, dan (3) Tidak seorang pun dapat memberi dua pesan yang mempunyai
intisari pesan yang sama. H(M) H(M’). MD5 dapat memproses teks masukan ke dalam
blok-blok bit sebanyak 512 bit, selanjutnya dibagi ke dalam 32 bit sub blok
sebanyak 16 buah. Keluaran dari MD5 berupa 4 buah blok dengan masingmasing blok
terdiri dari 32 bit yang akan menjadi
128 bit biasanya disebut nilai hash [11]. Berikut contoh MD5 dari pesan ASCII sepanjang 43-byte sebagai masukan
dan hash MD5 terkait:
MD5("The quick brown fox
jumps over the lazy dog") = 9e107d9d372bb6826bd81d3542a419d6. Perubahan
yang kecil pada pesan menghasilkan hash yang benar-benar berbeda, misalnya pada
kata “dog”, huruf d diganti menjadi c:
MD5("The quick brown fox
jumps over the lazy cog") = 1055d3e698d289f2af8663725127bd4b. Hash dari
panjang-nol ialah: MD5("")= d41d8cd98f00b204e9800998ecf8427e.
Penjelasan algoritma MD5 tersebut yaitu proses pesan variabel-panjang menjadi
output sepanjang 128 bit. Pesan masukan dipecah menjadi potongan 512-bit blok
(enam belas 32-bit little endian integer) pesan sehingga panjangnya dibagi oleh
512. Selanjutnya: bit tunggal pertama, 1, ditambahkan ke akhir pesan. Hal ini
diikuti oleh nol sebanyak yang diperlukan untuk membawa panjang pesan hingga 64
bit kurang dari kelipatan 512. Bit sisanya diisi dengan integer 64-bit yang
mewakili panjang pesan asli dalam bit [4].
Dalam MD5 terdapat 5 langkah
yang digunakan untuk menghitung intisari pesan. Langkah pertama yaitu
menambahkan bit, pesan akan ditambahkan bit-bit tambahan sehingga panjang bit
akan kongruen dengan 448, mod 512.langkah kedua yaitu penambahan panjang pesan
yang biasa disebut MD Strengthening atau penguatan MD, bit-bit ditambahkan ke
dalam dua word (32 bit) dan ditambahkan dengan low-order terlebih dahulu.
Langkah ketiga yaitu inisialisasi MD5 menggunakan empat buah word 32 bit
register dengan bilangan hexadecimal. Langkah keempat yaitu proses pesan di
dalam blok 16 word, dan langkah terakhir yaitu keluaran MD-5 yakni 128 bit dari
word terendah A dan tertinggi word D masing-masing 32 bit [12]. Berikut
ditampilkan gambar flowchart class MD5. Langkah pertama yaitu start dan
memasukkan data, setelah itu dilakukan enkripsi MD5 yang menghasilkan
chipertext.
GAMBAR
4. FLOWCHART MD5
Ditinjau dari algoritma terlihat bahwa
kriptografi klasik dan modern mempunyai perbedaan yang signifikan. Dalam
kriptografi klasik prosesnya termasuk sederhana dan mampu dipecahkan dengan
mudah menggunakan perhitungan yang
manual. Di sisi lain pada kriptografi modern, hasil dari enkripsinya
cukup rumit, dan susah dalam perhitungan manual walaupun perhitungan manual
masih bisa digunakan. Dari penjabaran perbandingan kedua kriptografi tersebut,
maka terlihat bahwa kriptografi modern (MD5) jauh lebih aman daripada
kriptografi klasik (vigener cipher} [4].
Dalam proses pengamanan pesan, hal yang
dilakukan pertama kali oleh pengguna yakni memasukkan data melalui user
interface (layer aplikasi). Sebelum data masuk ke database maka data akan
melalui sistem pengamanan data. Data akan terenkripsi yang selanjutnya disimpan
dalam database, sehingga data menjadi lebih aman. Jika suatu data ingin
digunakan maka data didekripsi kembali melalui sistem pengamanan data, sehingga
data dapat terbaca oleh pengguna. Berikut digambarkan mekanisme pengamanan
data.
GAMBAR 5. MEKANISME PENGAMANAN DATA
BAB III
KESIMPULAN DAN SARAN
A.
Kesimpulan
Kriptografi klasik dan kriptografi modern khususnya
vigenere cipher dan Message Digest 5 (MD5) sangatlah berbeda baik dalam segi
proses ataupun algoritmanya, hasilnya maupun tingkat kerumitannya. Vigenere
cipher merupakan salah satu metode enkripsi klasik yang digunakan untuk
menyembunyikan pesan berupa teks dengan menggunakan teknik substitusi dimana
tiap huruf pada plaintext diganti (disubstitusi) menjadi huruf lain berdasarkan
kunci yang digunakan. Sedangkan MD5 merupakan sebuah fungsi hash satu arah yang
mengubah masukan dengan panjang variabel menjadi keluaran dengan panjang tetap
yaitu 128 bit.
B.
Saran
Saran dari penulis yaitu
aplikasi MD5 dapat digabungkan dengan algoritma kriptografi lainnya sehingga
didapat aplikasi kriptografi yang lebih handal, selanjutnya Vigenere cipher
tidak hanya digunakan untuk mengamankan pesan pada email, namun dapat digunakan
untuk mengamankan yang lainnya. Untuk pengembangan selanjutnya, contoh aplikasi
dapat mempergunakan 2 (dua) komputer atau lebih.
DAFTAR PUSTAKA
1. Ariyus, Dony. (2006). Kriptografi, Keamanan Data, dan
Komunikasi. Yogyakarta: Graha Ilmu.
2. Ariyus, Dony. (2008). Pengantar Ilmu Kriptografi: Teori,
Analisis, dan Implementasi. Yogyakarta: Penerbit Andi.
3. Burnett, Steve dan Paine, Stephen. (2004). RSA Security’s
Official Guide to Cryptography. McGraw-Hill, Inc.
4. Irfan, M. Dwi Ramadhani. (2016). Perbandingan kriptografi
klasik (caesar cipher) dan kriptografi modern (MD5). Jurnal Teknik Informatika,
Universitas Islam Sunan Gunung Djati, Bandung.
5. Menezes, dkk. (1996). Handbook of Applied Cryptography. CRC
Press.
6. Mohammed Najm Abdullah, Rula Sami Khudhair, dan Mohaned
Kadam Sabr. (2013). Study and analysis of efficient AES multi-layer key.
International Journal of Oriental Scientific Publishing, Vol. 6, No.4.
7. Munir, Rinaldi. (2006). Kriptografi. Bandung: Penerbit
Informatika.
8. Phillip I. Wilson, Mario Garcia. (2006). A modified version
of the vigenere algorithm. Intenational Journal f omputer Science and Network
Security. Vol. 6 No. 3B.
9. Pfleeger, Charles P. (1997). Security in Computing Second
Edition. Prentice-hall Intenational, inc.
10. Rosyadi, Ahmad. (2012). Implementasi algoritma kriptografi
AES untuk enkripsi dan deskripsi e-mail. TRANSIENT, VOL. 1, NO. 3, SEPTEMBER
2012, ISSN: 2302-9927, 64
11. Schneier, Bruce. (1996). Applied Cryptography 2nd. John
Wiley & Sons, Ltd.
12. Sofwan, Aghus., Budi. Agung, Susanto. Toni, dkk. (2006).
Aplikasi Kriptografi dengan Algoritma Message Digest 5 (MD5). Jurnal Teknik
Elektro, Vol. 149 11, Universitas Diponegoro, Semarang
Belum ada tanggapan untuk "Penggunaan Metode Enkripsi Vigenere dan MD5 dalam Proses Pengamanan Pesan"
Posting Komentar