• Tidak ada hasil yang ditemukan

MODIFIKASI VIGENERE CIPHER DENGAN KUNCI GESER METODE ENKRIPSI BLOK

N/A
N/A
Protected

Academic year: 2021

Membagikan "MODIFIKASI VIGENERE CIPHER DENGAN KUNCI GESER METODE ENKRIPSI BLOK"

Copied!
6
0
0

Teks penuh

(1)

234 Prosiding Seminar Nasional Matematika dan Pendidikan Matematika, “Integrasi Budaya, Psikologi, dan Teknologi dalam Membangun Pendidikan Karakter Melalui Matematika dan Pembelajarannya”.

MODIFIKASI VIGENERE CIPHER DENGAN KUNCI GESER METODE ENKRIPSI BLOK

Margareta Octavianingrum1), Desi Agustina Siambaton2), Agatha Feviari Kristina Dewi3) 1Fakultas Keguruan dan Ilmu Pendidikan, Universitas Sanata Dharma

email: margaretaocta1407@gmail.com

2Fakultas Keguruan dan Ilmu Pendidikan, Universitas Sanata Dharma email: agustinadesi96@gmail.com

3Fakultas Keguruan dan Ilmu Pendidikan, Universitas Sanata Dharma email: agathafeviari.af@gmail.com

Abstract

Saat ini, dunia telah memasuki era informasi, dimana informasi menjadi elemen penting dalam kehidupan. Informasi diamankan sedemikian rupa oleh pengirim sehingga kerahasiaan informasi terjaga dari orang selain penerima pesan menggunakan kriptografi. Vigenere cipher merupakan jenis kriptografi klasik yang sering digunakan. Vigenere cipher didasari oleh substitusi bujursangkar Vigenere atau substitusi angka. Setiap karakter dalam plainteks dienkripsi menjadi karakter lain menggunakan suatu kunci yang memiliki panjang tertentu. Kunci diulang secara periodik hingga panjang kunci sama dengan panjang plainteks, apabila panjang kunci kurang dari panjang plainteks. Namun, adanya perulangan karakter tersebut menyebabkan Vigenere cipher dapat dipecahkan melalui metode kasiski dan analisis frekuensi. Oleh sebab itu, penulis memodifikasi Vigenere cipher dengan kode geser dalam pembuatan kunci dan mengkombinasikan Vigenere cipher dengan metode blok dalam proses enkripsinya. Pembuatan kunci dengan kode geser dilakukan dengan menggeser seluruh kunci ke kiri sebanyak satu karakter sehingga karakter pertama menempati posisi ke-n. Untuk pergeseran kedua, karakter pertama dari kunci sebelumnya tidak digeser, tetapi karakter kedua akan menempati posisi ke-n sehingga karakter posisi ke-n akan menempati posisi n-1 dan seterusnya. Teknik enkripsi metode blok dilakukan dengan membagi setiap kata pada plainteks menjadi blok-blok berdasarkan panjang kunci. Pembuatan kunci dengan kode geser meminimalisir adanya perulangan karakter pada proses enkripsinya. Teknik enkripsi dengan metode blok membuat hasil cipherteks menjadi semakin acak. Hal ini akan menyulitkan kriptanalis, karena meskipun satu kunci dapat ditemukan, belum tentu pesan dapat dipecahkan sebab masih ada beberapa kunci lagi yang harus dipecahkan.

Keywords: Vigenere cipher, kode geser, metode blok, enkripsi

1. PENDAHULUAN

Kriptografi berasal dari kata “Crypto” yang berarti rahasia dan “graphy” artinya tulisan. Jadi, kriptografi adalah tulisan rahasia. Kriptografi dikenal sebagai ilmu penyandian dimana tulisan disamarkan menjadi bentuk yang tidak dapat dimengerti untuk menjaga pesan tetap aman. Dalam era masyarakat berbasis informasi, kerahasiaan informasi menjadi hal yang penting. Kriptografi sering digunakan dalam keamanan komputer dan jaringan, misalnya pada ATM atau e-mail. Hal ini dikarenakan pendistribusi data dan informasi dilakukan melalui komputer dan jaringannya. Data informasi diamankan sedemikian rupa oleh pengirim sehingga

orang selain penerima pesan tidak dapat mengenali pesan tersebut. Proses tersebut dikenal sebagai proses enkripsi. Data atau pesan asli yang dirahasiakan disebut plainteks dan data hasil enkripsi ataupenyandian disebut cipherteks. Selain enkripsi, ada pula proses dekripsi yang merupakan kebalikan dari proses enkripsi, dimana data yang sudah dienkripsi dikonversikan kembali menjadi data aslinya sehingga dapat dimengerti kembali.

Vigenere cipher adalah salah satu jenis algoritma kriptografi klasik yang berbasis karakter. Proses enkripsi Vigenere cipher dengan mengubah plainteks menggunakan kunci tertentu yang

(2)

Pendidikan Matematika Universitas Muhammadiyah Purworejo, Ruang Seminar UMP, Sabtu, 12 Mei 2018

235 berulang sepanjang plainteks sehingga

diperoleh cipherteks. Karena berbasis karakter, maka kunci yang digunakan biasanya berupa kata atau kalimat. Akan tetapi, Vigenere cipher memiliki kelemahan yaitu adanya perulangan karakter sehingga memudahkannya diserang dengan analisis frekuensi dan metode Kasiski. Kedua cara tersebut dapat mengetahui panjang huruf yang digunakan sebagai kunci pada Vigenere cipher. Oleh karena itu, diperlukan modifikasi pada Vigenere cipher untuk mengatasi kelemahan tersebut. Modifikasi yang dilakukan adalah menambahkan kode geser pada pembuatan kunci dan menggunakan teknik enkripsi metode blok pada proses enkripsinya.

2. KAJIAN LITERATUR DAN PEGEMBANGAN HIPOTESIS A. Vigenere Cipher

Vigenere cipher adalah suatu algoritma kriptografi klasik yang ditemukan oleh Giovan Battista Bellaso. Teknik untuk menghasilkan cipherteks bisa dilakukan menggunakan substitusi angka maupun bujursangkar Vigenere. Pada bujursangkar Vigenere, setiap baris menyatakan huruf-huruf cipherteks

yang diperoleh dengan Caesar cipher dan setiap kolom menunjukan kunci.

Gb.1 bujursangkar Vigenere

Vigenere cipher menggunakan suatu kunci yang memiliki panjang tertentu. Panjang kunci tersebut bisa

lebih pendek ataupun sama dengan panjang plainteks. Jika panjang kunci kurang dari panjang plainteks, maka kunci tersebut akan diulang secara periodik hingga panjang kunci itu sama dengan panjang plainteksnya.

Jika diperhatikan dengan seksama, bujursangkar Vigenere cipher dapat diperoleh dengan menggunakan fungsi modulo dimana: ... (i) ... (ii) dengan P = Indeks Plainteks K = Indeks Kunci C = Indeks Cipherteks

Sebagai contoh, jika plainteks adalah KAPITA dan kunci adalah ABC maka proses enkripsinya adalah sebagai berikut:

1. Dari tiap-tiap karakter di plainteks, pasangkan satu-satu secara berurutan dengan kuncinya. Terlihat bahwa kunci hanya terdiri dari 3 karakter sedangkan plainteksnya lebih dari itu, sehingga kuncinya diulang sepanjang plainteks.

Plainteks K A P I T A Kunci A B C A B C

2. Gunakan persamaan (ii). Ubah kunci menjadi indeks kunci, kemudian tambahkan ke indeks plainteksnya (A=0, B=1,…,Z=25) Plainteks K A P I T A P 10 0 15 8 19 0 Kunci A B C A B C K 0 1 2 0 1 2 (P+K)mod26 10 1 17 8 20 2 Cipherteks K B R I U C

Jadi, cipherteks dari KAPITA dengan kunci ABC adalah KBRIUC.

B. Kunci Geser

Kunci geser merupakan kunci yang dibuat dengan cara menggeser

(3)

236 Prosiding Seminar Nasional Matematika dan Pendidikan Matematika, “Integrasi Budaya, Psikologi, dan Teknologi dalam Membangun Pendidikan Karakter Melalui Matematika dan Pembelajarannya”.

karakter kunci dengan aturan tertentu seperti pada algoritma Caesar atau sandi geser. Salah satu modifikasi algoritma kunci bergeser dilakukan oleh Faruqi (2010) dengan aturan sebagai berikut :

1. Misalkan panjang kunci adalah N 2. Pertama kita geser seluruh kunci

ke kiri sebanyak satu karakter dan karakter pertama akan digeser ke posisi N.

3. Selanjutnya setelah kunci diatas dipakai, maka karakter pertama dari kunci pada step 2 tidak digeser, tetapi karakter ke dua akan menepati posisi ke N dan karakter posisi N akan menepati posisi N-1 dan seterusnya sampai pada karakter ke 3 menepati posisi ke dua.

4. Selanjutnya pada step ke 3 posisi karaker ke 1 dan 2 tidak berubah tapi posisi karakter ke 4 sampai N akan berubah, yaitu di geser ke kiri 1 karakter, dan seterusnya. 5. Bila telah sampai pada karakter ke

N-1 yang tidak berubah, kembali ke step 2.

6.

Misalkan kunci ABCDE. Penggunaan ke- Kunci

1 ABCDE 2 BCDEA 3 BDEAC 4 BDACE 5 BDAEC 6 DAECB 7 DECBA 8 DEBAC 9 DEBCA dst…

Penerapan pada plainteks “IQBAL CAKEP”

Plainteks IQBAL CAKEP Kunci ABCDE BCDEA Cipherteks IRDDP DCNIP

Plainteks IQBAL CAKEP Kunci BDEAC BDACE

Cipherteks JTFAN DDKGT

Plainteks IQBAL CAKEP Kunci BDAEC DAECB

Cipherteks JTBEN FAOGQ

Plainteks IQBAL CAKEP Kunci DECBA DEBAC

Cipherteks LUDBL FELER

Plainteks IQBAL Kunci DEBCA

Cipherteks LUCCL

Pada contoh di atas, bahkan kata yang berulang pun tidak akan muncul berulang pada chiperteks, namun lama kelamaan kunci yang dipakai akan berulang, misalkan kunci yang akan dipakai adalah ABCDE, maka berikut adalah pergeseran sampai mencapai kembali perulangan yang sama:

ABCDE BCDEA BDEAC

BDACE BDAEC DAECB DECBA DEBAC DEBCA EBCAD ECADB ECDBA ECDAB CDABE CABED CAEDB CAEBD AEBDC ABDCE ABCED ABCDE Algoritma ini memungkinkan penggunaan kunci secara berulang akan berkurang, karena semakin panjang kunci akan semakin lama pula pengulangan yang akan terjadi. Namun, terlihat bahwa ada perulangan kunci pada karakter ke-101 pada contoh di atas.

C. Metode Pendistribusian Kunci dengan Blok

Metode untuk melakukan proses enkripsi dengan menggunakan blok adalah dengan membagi plainteks menjadi blok-blok yang ditentukan tergantung dari keinginan pengirim pesan. Misalkan, plainteks HARI INI HARI MINGGU.

Plainteks tersebut dibagi menjadi 3 blok. Setiap blok

(4)

Pendidikan Matematika Universitas Muhammadiyah Purworejo, Ruang Seminar UMP, Sabtu, 12 Mei 2018

237 mengandung 6 karakter. Karena

blok ketiga tidak mencukupi, maka ditambah dengan karakter “X” atau karakter lain yang diinginkan, sehingga diperoleh:

Blok 1 Blok 2 Blok 3 HARIIN IHARIM INGGUX

3. HASIL DAN PEMBAHASAN

Dengan adanya metode kasiski dan analisis frekuensi menyebabkan Vigenere cipher mudah dipecahkan. Hal ini dikarenakan penggunaan kunci berulang yang berakibat juga pada perulangan cipherteks. Sejauh ini, modifikasi terhadap Vigenere cipher telah dilakukan. Salah satunya dengan menerapkan metode kunci bergeser. Pada algoritma kunci bergeser, kunci akan diulang dengan aturan tertentu sehingga penggunaan kunci yang berulang telah dikurangi. Akan tetapi, metode ini pun tidak menutup kemungkinan untuk munculnya perulangan kata. Misalkan panjang kunci adalah 5 karakter, maka setiap 100 karakter yang dienkripsi akan mengalami perulangan. Oleh karena itu, penulis memperoleh ide untuk meningkatkan keamanan metode ini yaitu dengan menambahkan metode blok pada proses enkripsinya.

Dalam modifikasi Vigenere cipher dengan kunci geser metode enkripsi blok, pembuatan kunci dilakukan dengan aturan yang sama dengan metode kunci bergeser. Adapun langkah-langkahnya adalah sebagai berikut:

a. Tentukan plainteks.

b. Tentukan kunci dengan aturan kode bergeser, yaitu:

i. Misalkan panjang kunci adalah ii. Geser seluruh kunci ke kiri

sebanyak satu karakter, sehingga karakter pertama akan digeser ke posisi .

iii. Selanjutnya setelah kunci di atas dipakai, maka karakter pertama dari kunci pada step 2 tidak digeser, tetapi karakter kedua akan menempati posisi ke- dan karakter posisi akan menempati posisi dan seterusnya sampai pada

karakter ke-3 menempati posisi kedua.

iv. Selanjutnya pada step ke-3 posisi karakter ke-1 dan 2 tidak berubah tapi posisi karakter ke-4 sampai akan berubah, yaitu digeser ke kiri satu karakter, dan seterusnya. v. Bila telah sampai pada karakter ke

yang tidak berubah, kembali ke step 2.

c. Bagi plainteks menjadi blok-blok sesuai panjang kunci.

i. Jika karakter suatu kata dalam plainteks lebih panjang dari panjang kunci, maka kata tersebut dibagi menjadi dua atau lebih blok. Panjang kata merupakan kelipatan dari panjang kunci.

ii. Jika karakter dalam blok terakhir yang dibuat maupun karakter suatu kata dalam plainteks kurang dari panjang kunci, maka tambahkan karakter lain seperti “X” sehingga panjang kata plainteks akan sama dengan panjang kunci.

d. Pasangkan blok-blok tiap kata dengan setiap pergeseran kunci. Satu kata dipasangkan dengan satu pergeseran kunci. Jika satu kata terbagi menjadi dua atau lebih blok, maka blok kedua hingga ke- dari kata tersebut tetap dipasangkan dengan satu pergeseran kunci yang sama. e. Apabila telah diperoleh cipherteksnya,

sisipilah cipherteks untuk setiap kata yang dibentuk dengan karakter akhir dan karakter pertama kata selanjutnya. Hal ini bertujuan agar penerima pesan dapat mengetahui pergantian kunci yang digunakan saat proses dekripsi.

Sebagai contoh kita mengacu pada modifikasi vigenere cipher dengan kode bergeser sebelumnya, kita memakai kunci yang sama yaitu ABCDE. Adapun kumpulan kunci sebagai berikut:

Penggunaan ke- Kunci

1 ABCDE 2 BCDEA 3 BDEAC 4 BDACE 5 BDAEC 6 DAECB

(5)

238 Prosiding Seminar Nasional Matematika dan Pendidikan Matematika, “Integrasi Budaya, Psikologi, dan Teknologi dalam Membangun Pendidikan Karakter Melalui Matematika dan Pembelajarannya”.

7 DECBA

8 DEBAC

9 DEBCA

dst...

Kemudian proses enkripsi menggunakan metode blok. Setiap kata pada plainteks dibagi menjadi blok-blok dengan panjang karakter sesuai dengan panjang kunci. Jika kata melebihi panjang karakter blok, maka kata tersebut dibagi menjadi 2 atau lebih blok. Apabila blok terakhir yang dihasilkan oleh kata tersebut kurang dari panjang karakter blok, maka kata tersebut ditambah karakter “X” atau lainnya. Begitu pula untuk kata yang kurang dari panjang karakter blok. Perulangan setiap kunci disesuaikan dengan jumlah blok yang dihasilkan oleh setiap kata. Satu kata menggunakan satu kunci. Apabila kunci telah digunakan semua, maka kunci akan diulang.

Misalkan plainteks adalah AGATHA OCTA DAN DESI BELAJAR KRIPTOGRAFI dan kunci ABCDE. Karena panjang karakter blok adalah 5, maka setiap kata dibagi menjadi blok-blok yang berisi 5 karakter. Adapun proses enkripsinya adalah sebagai berikut:

Plainteks AGATH AXXXX Kunci ABCDE ABCDE Cipherteks AHCWL AYZAB

Plainteks OCTAX DANXX Kunci BCDEA BDEAC

Cipherteks PEWEX EDRXZ

Plainteks DESIX BELAJ Kunci BDACE BDAEC

Cipherteks EHSKB CHLEL

Plainteks ARXXX KRIPT Kunci BDAEC DAECB

Cipherteks BUABZ NRMRU

Plainteks OGRAF IXXXX Kunci DAECB DAECB

Cipherteks RGVCG LXBZX

Apabila disusun dalam rangkaian huruf secara utuh, maka diperoleh cipherteks

“AHCWLAYZABPEWEXEDRXZEHSKB CHLELBUABZNRMURGVCGLBZX’. Untuk mempermudah penerima pesan mengetahui pergantian kunci, maka cipherteks diubah menjadi “AHCLAYZABBPPEWEXXEEDRXZZE EHSKBBCCHLELBUABZZNNRMURGV CGLBZX” (tanpa underline).

4. KESIMPULAN

Adapun kesimpulan dari hasil analisis yang telah dilakukan, antara lain:

a. Modifikasi vigenere cipher yang dilakukan antara lain memodifikasi pada pembuatan kunci dengan kunci geser dan metode enkripis blok dalam proses enkripsinya.

b. Penggunaan kunci tergantung panjang karakter pada setiap suku kata sehingga perulangan kunci pun akan berbeda untuk setiap pesan yang dienkripsi.

c. Algoritma ini lebih aman dibandingkan dengan vigenere chiper biasa, karena frekuensi perulangan kunci dapat diminimalisir.

d. Algoritma ini akan menyulitkan kriptanalis, karena meskipun satu kunci dapat ditemukan, belum tentu pesan dapat dipecahkan sebab masih ada beberapa kunci lagi yang harus dipecahkan.

e. Perulangan kunci ke-101 pada modifikasi sebelumnya pun dapat diminimalisir apabila setiap kata dalam plainteks tidak berpasangan tepat satu-satu dengan setiap pergeseran kunci.

f. Proses dekripsi menjadi lebih lama, karena penerima pesan harus menganalisis terlebih dahulu letak pergantian kunci yang disisipkan.

5. REFERENSI

Ariyus, Dony. 2008. Pengantar Ilmu Kriptografi: Teori, Analisis, dan Implementasi. Yogyakarta: Andi Offset.

Faruqi, Muhammad Iqbal, Maret 2010, Modifikasi Vigenere Chiper dengan Menggunakan Kunci Bergeser. (Online).

Bandung: ITB,

http://informatika.stei.itb.ac.id/~rinaldi.

munir/Kriptografi/2009-2010/Makalah1/Makalah1_IF3058_201 0_051.pdf, diakses tanggal 5 Maret 2018.

(6)

Pendidikan Matematika Universitas Muhammadiyah Purworejo, Ruang Seminar UMP, Sabtu, 12 Mei 2018

239 Rebu, Marselinus Junardi. 2015.

Kriptografi Klasik. (Online). Matematika. Fakultas Sains dan Teknologi. Universitas

Sanata Dharma.

https://repository.usd.ac.id/954/2/10311401 7_full.pdf, dikases tanggal 5 Maret 2018.

Sadikin, Rifki. 2012. Kriprografi Untuk Keamanan Jaringan. Yogyakarta: Andi Offset

Referensi

Dokumen terkait

Akan tetapi pada algoritma vigenere cipher terlihat bahwa terdapat perulangan kata pada hasil enkripsi dengan rata-rata terbesar informasi dapat diprediksi sebesar

Kata kunci yang dapat dijadikan perbandingan adalah kata kunci dengan panjang karakter (P) antara P katakunci -3 sampai P katakunci +3. Karena “varitas” memiliki