Anda di halaman 1dari 5

Studi dan Perbandingan Berbagai Macam Algoritma Cipher

Transposisi
1)
Reyhan Yuanza Pohan
1) Jurusan Teknik Informatika ITB, Bandung 40132, email: if14126@students.if.itb.ac.id

Abstract – Masalah pengiriman data ataupun pesan adalah cipher substitusi dan cipher transposisi.
telah menjadi masalah penting pada era teknologi
informasi seperti sekarang ini. Terkadang pesan- Sedangkan contoh algoritma modern adalah cipher
pesan ini harus bersifat rahasia agar tidak diketahui blok. Dalam makalah ini, penulis akan melakukan
secara umum. Apabila pesan tersebut diketahui, maka studi dan perbandingan dari berbagai macam
pesan tersebut dapat disalahgunakan untuk kejahatan algoritma cipher transposisi.
oleh orang lain.
Cipher transposisi dapat disebut juga sebagai cipher
Kriptografi merupakan salah satu alat keamanan permutasi karena sebenarnya metode cipher
yang digunakan untuk menyembunyikan suatu pesan. transposisi ini mempermutasikan karakter-karakter
Kriptografi sudah digunakan di segala bidang plainteks, yaitu dengan menyusun ulang urutan
keamanan. Salah satu metode algoritma kriptografi karakter dalam pesan. Contoh paling sederhana
klasik yang sudah dikenal sejak lama adalah penggunaan cipher transposisi adalah dengan
Transposition Cipher atau Cipher transposisi. Metode membalikkan karakter-karakter dalam suatu kata.
ini juga dikenal sebagai permutasi. Algoritma ini Misalkan kata KRIPTOGRAFI dienkripsi menjadi
memindahkan urutan tiap karakter dalam pesan. IFARGOTPRIK, ini adalah contoh paling sederhana.
Terdapat berbagai macam jenis algoritma cipher Sedangkan contoh cipher transposisi yang lebih rumit
transposisi seperti Rail Fence Cipher, Route Cipher, sebagai berikut:
Columnar Transposition, dan Myszkowski
transposition. Misalkan kita mempunyai plainteks

Pada makalah ini, penulis akan membahas jenis-jenis INI PESAN RAHASIA
algoritma di atas. Pembahasan akan meliputi
penjelasan, cara kerja masing-masing algoritma, Untuk meng-enkripsi pesan, plainteks ditulis secara
kelebihan dan kekurangannya. Penulis juga akan horizontal dengan lebar kolom tetap, missal selebar 5
mencoba memberikan usulan cara untuk karakter (kunci k = 5)
meningkatkan tingkat keamanan cipher transposisi.
I N I P E
Kata Kunci: kriptografi, Transposition Cipher, Rail S A N R A
Fence Cipher, Route Cipher, Columnar Cipher, H A S I A
Myszkowski transposition
maka cipherteksnya dibaca secara vertikal menjadi
1. PENDAHULUAN
ISHNAAINSPRIEAA
Perkembangan teknologi informasi saat ini sudah
berkembang secara pesat. Dengan berkembangnya Pada zaman Yunani dahulu, tentara Sparta
teknologi informasi ini, pertukaran data dapat menjadi menggunakan sebuah alat yang dinamakan scytale.
suatu permasalahan. Hampir setiap hari pertukaran Alat terdiri dari sebuah silinder dan pita panjang dari
data terjadi, data-data ini bervariasi besarnya maupun daun papyrus. Pesan dituliskan horizontal dan bila pita
jenisnya. Adakalanya data-data ini bersifat rahasia dilepaskan, maka huruf-huruf di dalamnya telah
seperti data pribadi, data organisasi, ataupun data tersusun membentuk pesan rahasia. Scytale
negara. Kerahasiaan ini perlu dijaga agar tidak orang merupakan suatu penerapan cipher transposisi pada
yang menyalahgunakan data-data tersebut. Untuk zaman dahulu.
itulah, kriptografi dikembangkan.
Cipher transposisi mempunyai berbagai macam
Kriptografi adalah suatu ilmu menyembunyikan algoritma yang berbeda-beda seperti Rail Fence
informasi. Sampai dengan saat ini, sudah ada berbagai Cipher, Route Cipher, Columnar Transposition, dan
macam algoritma kriptografi, namun secara Myszkowski transposition. Setiap algoritma itu
keseluruhan algoritma kriptografi dibagi menjadi dua mempunyai kelebihan dan kekurangannya masing-
yaitu klasik dan modern. Contoh algoritma klasik masing. Pada makalah ini, penulis akan mencoba
merumuskan sebuah usulan algoritma baru yang dapat Misalkan kita mempunyai plainteks
menutupi kekurangan cipher transposisi.
WE ARE DISCOVERED FLEE AT ONCE
2. ALGORITMA CIPHER TRANSPOSISI
enkripsi dilakukan dengan kunci k = 9, spiral ke dalam
2.1. Rail Fence Cipher arah jarum jam kanan atas
Algoritma ini melibatkan penulisan plainteks sehingga
mempunyai baris atas dan baris bawah yang terpisah. W R I O R F E O E
Urutan karakter pada baris atas akan diikuti oleh E E S V E L A N J
karakter berikutnya pada baris bawahnya, dan A D C E D E T C X
seterusnya sehingga n-rail. Apabila penulisan ke
bawah sudah mencapai n, maka penulisan dilakukan maka cipherteksnya menjadi
ke baris atasnya dan seterusnya. Bila penulisan ke atas
juga sudah mencapai n-rail, maka penulisan dilakukan EJX CTE DEC DAE WRI ORF EON ALE VSE
seperti awal. Cipherteks dibaca secara horizontal.
Untuk lebih jelasnya, berikut adalah contohnya: Pada zaman perang saudara di Amerika (American
Civil War), sebuah varian dari route cipher digunakan
Misalkan kita mempunyai plainteks yaitu Union Route Cipher. Cara kerja algoritma varian
ini sama dengan route cipher biasa, hanya saja
MEET ME AT NOON transposisi dilakukan pada keseluruhan kata
dibandingkan tiap karakter
enkripsi dilakukan dengan kunci k = 3, offset = 0
2.3. Columnar Transposition
M . . . M . . . N . . . Pada columnar transposition, pesan ditulis dalam
. E . T E . T . O . N baris dengan panjang tertentu, kemudian dibaca
. . E . . . A . . . O . kembali dari kolom ke kolom. Pembacaan per
kolomnya berdasarkan urutan yang acak. Panjang
maka cipherteksnya menjadi baris dan permutasi kolomnya biasanya didefinisikan
oleh sebuah kata kunci. Sebagai contoh kata
MMNET ETONE AO COLUMN mempunyai panjang 6 (sehingga panjang
baris adalah 6) dan permutasi didefinisikan dengan
Namun enkripsi juga dapat dilakukan dengan urutan alphabet dari kata kunci. Dengan menggunakan
memulainya bukan dari baris paling atas (offset = 0), kata COLUMN, maka urutannya akan menjadi [1 5 2
namun bisa juga dari baris lainnya. Dengan 6 3 4]. Untuk lebih jelasnya, berikut adalah
menggunakan contoh plainteks di atas: contohnya:

Enkripsi dilakukan dengan kunci k = 3, offset = 2 Misalkan kita mempunyai plainteks

. . E. . . . A . . . O . ESCAPE TONIGHT THROUGH TUNNEL


. E . T E . T . O . N
M . . . M . . . N . . . enkripsi umum columnar transposition dilakukan
dengan kunci PRISON [4 5 1 6 3 2]
maka cipherteksnya menjadi
4 5 1 6 3 2
EAOET ETONM MN E S C A P E
T O N I G H
Biasanya penulisan cipherteks dilakukan menjadi T T H R O U
blok-blok standar biasanya sepanjang 5 karakter. Bila G H T U N N
hasil cipherteks tidak habis dibagi dengan panjang E L Q K J E
karakter, maka penambahan karakter dummy
dilakukan pada saat pengenkripsian. Maka cipherteksnya menjadi

2.2. Route Cipher CNHTQ EHUNE PGONJ ETTGE SOTHL AIRUK


Dalam algoritma route cipher, plainteks dituliskan ke
dalam suatu dimensi yang sudah ditentukan, cara ini Pada columnar transposition yang umum, semua area
seperti enkripsi yang dilakukan pada bab kosong diisi dengan nilai dummy seperti contoh di
pendahuluan. Namun perbedaannya adalah pembacaan atas, dalam hal ini [Q K J E]. Sedangkan pada
cipherteks dilakukan dalam pola yang diberikan dalam beberapa coloumnar transposition yang lain, area
kunci. Sebagai contoh: kosong dibiarkan tetap kosong. Dengan menggunakan
contoh plainteks dan kunci seperti di atas:
melakukan perbandingan dari masing-masing
4 5 1 6 3 2 algoritma dan usulan perbaikan dalam merancang
E S C A P E suatu algoritma cipher transposisi yang baru
T O N I G H
T T H R O U 3.1. Hasil Perbandingan
G H T U N N Rail Fence cipher mempunyai kelebihan
E L dibandingkan algoritma lainnya dalam proses
penulisan plainteks menjadi cipherteks karena
maka cipherteksnya menjadi penulisan dapat dilakukan di baris mana saja. Hal ini
akan menambah kerumitan dalam proses enkripsi
CNHTE HUNPG ONETT GESOT HLAIR U maupun dekripsi.

Untuk mendapatkan kembali plainteks, penerima Route cipher bisa dikatakan mempunyai proses
pesan harus mencari jumlah kolom dengan membagi enkripsi dan dekripsi yang sangat rumit. Hal ini
panjang pesan dengan panjang kunci. Kemudian dia didukung oleh kunci yang digunakan dapat membuat
akan dapat menulis kembali pesan dalam kolom- proses enkripsi dan dekripsi yang fleksibel. Route
kolom. Selanjutnya mengurutkan kembali kolom cipher mempunyai kunci yang paling banyak
tersebut dengan melihat kata kunci. dibandingkan algoritma lainnya. Untuk sebuah pesan
dengan panjang yang masuk akal, jumlah
2.4. Myszkowski Transposition kemungkinan kunci potensial akan terlalu besar
Sebenarnya myszkowski transposition ini merupakan sekalipun untuk komputasi modern. Akan tetapi,
sebuah variasi dari columnar transposition yang justru kunci dari route cipher ini yang membuat
diusulkan oleh Émile Victor Théodore Myszkowski algoritma ini mempunyai kekurangan. Pemilihan rute
pada tahun 1902. Varian ini memerlukan sebuah kata kunci yang buruk dapat meninggalkan kelebihan
kunci yang mempunyai karakter berulang. Dalam potongan plainteks, sehingga dapar memberikan
columnar transposition biasanya, kemunculan seorang kriptanalis sebuah petunjuk.
karakter yang sama diperlakukan seperti karakter
berikutnya dalam urutan abjad, sebagai contoh kata Algoritma columnar transposition sebenarnya adalah
kunci TOMATO akan mempunyai urutan [5 3 2 1 6 contoh algoritma cipher transposisi yang paling
4]. Dalam myszkowski transposition, kemunculan standar. Algoritma ini bersifat sangat matematis
karakter yang sama diberi nomor urutan yang sama sehingga proses enkripsi dan dekripsi tidak begitu
sehingga kata kunci TOMATO mempunyai urutan [4 rumit untuk komputasi modern. Algoritma ini lebih
3 2 1 4 3]. Kolom plainteks dengan nomor urutan digunakan sebagai suatu komponen dalam cipher yang
angka yang unik dibaca ke bawah, sedangkan kolom lebih kompleks.
dengan nomor urutan yang sama dibaca dari kiri ke
kanan. Untuk lebih jelasnya, diberikan contoh sebagai Dari semua algoritma cipher transposisi, algoritma
berikut: myszkowski transposition merupakan algoritma yang
memiliki tingkat kerumitan tinggi dengan kunci yang
Misalkan kita mempunyai plainteks sederhana. Myszkowski transposition mempunyai
kerumitan yang lebih tinggi dibandingkan columnar
THIS IS A VERY SECRET MESSAGE transposition karena pembacaan cipherteks tidak
hanya satu arah namun bisa dua arah.
enkripsi dilakukan dengan kunci TOMATO [4 3 2 1 4
3] Namun secara keseluruhan, semua algoritma cipher
transposisi mempunyai kelemahan yaitu serumit
4 3 2 1 4 3 apapun kita melakukan transposisi atau permutasi
T H I S I S pada karakter-karakter dalam plainteks, kita hanya
melakukan mengacak urutan dari plainteks tidak
A V E R Y S
mengubahnya. Kemunculan karakter cipherteks akan
E C R E T M
sama dengan plainteks, hal ini dapat memberikan
E S S A G E
pertunjuk bahwa proses enkripsi menggunakan salah
satu algoritma cipher transposisi. Sehingga, usaha
maka cipherteksnya menjadi untuk memecahkan suatu cipher transposisi tidaklah
sulit bila kita mencoba semua algoritma cipher
SREA IERS HSVS CMSE TIAY ETEG
transposisi. Pada subbab berikutnya, penulis akan
mencoba memberikan usulan algoritma cipher
3. HASIL PERBANDINGAN DAN USULAN transposisi yang baru.
PERBAIKAN
3.2 Usulan Perbaikan
Cara kerja masing-masing algoritma cipher transposisi
Setelah membandingkan kelebihan dan kekurangan
telah dijelaskan di bab sebelumnya, bab ini akan
dari masing-masing algoritma cipher transposisi, Penulis juga mempunyai sebuah usulan perbaikan lain
penulis memberikan sebuah usulan perbaikan dengan dalam merancang sebuah columnar transposition.
merancang sebuah algoritma cipher transposisi yang Perbaikan ini mengganti cara penempatan penulisan
menggabungkan kelebihan dari semua algoritma lama. plainteks menjadi kolom-kolom. Apabila pada
biasanya dalam columnar transposition, penulisan
Algoritma baru ini melakukan urutan penulisan plainteks dalam satu baris dari kolom pertama sampai
plainteks menjadi cipherteks menggunakan rail fence kolom terakhir terisi, dalam perbaikan ini.tidak semua
cipher dalam bentuk kolom-kolom seperti pada kolom tersebut terisi. Setiap baris hanya memenuhi
columnar transposition dengan tambahan kunci kolom sampai dengan nomor urutannya. Sebagai
seperti pada route cipher. Jadi bisa dikatakan contoh:
algoritma baru ini merupakan sebuah cipher
transposisi ganda. Untuk lebih jelasnya, contoh dari Misalkan contoh plainteksnya adalah seperti
algoritma baru adalah sebagai berikut: sebelumnya, dengan menggunakan kunci
KRIPTOGRAFI juga
Misalkan kita mempunyai plainteks
6 9 4 8 11 7 3 10 1 2 5
HERE IS A SECRET MESSAGE THAT WILL BE H E R E I S A S E
ENCRYPTED BY A NEW ALGORITHM C R E T M E S S A G
E T H A T W I
enkripsi dilakukan dengan kunci KRIPTOGRAFI [6 9 L L B
4 8 11 7 3 10 1 2 5], offset = 1, ganjil atas-bawah, E E N C R Y P T E D B
genap kiri-kanan Y
A N E W A L
6 9 4 8 11 7 3 10 1 2 5 G O R I
H E R E I S A S E C T H
T E G A S S E M T E R M
H A T W I L L B E E N
N A Y B D E T P Y R C maka cipherteksnya menjadi
E W A L G O R I T H M
EAEGD ASIPR EHBNE RBHCE LEYAG TMSEW
maka cipherteksnya menjadi YLETA CWIER TLENO HSSTI MTRA

STEYT SELTR CRNCM ISLEO HEAAW ESIDG 4. KESIMPULAN


ERAET GAMEH TWBEN YBPRE ALIH
Cipher transposisi atau cipher permutasi merupakan
Proses enkripsi dimulai dengan menghitung jumlah salah satu algoritma kriptografi klasik yang
karakter dalam kata kunci, dalam hal ini melakukan pengacakan urutan karakter dalam
KRIPTOGRAFI yaitu 11. Nilai ini menjadi nilai k plainteks. Cipher transposisi mempunyai berbagai
seperti pada rail fence cipher, berarti kita akan macam algoritma. Setiap algoritma mempunyai cara
membuat 11 kolom. Kesebelas kolom tersebut diberi kerja, kelebihan dan kekurangan masing-masing.
nomor urutan sesuai abjad seperti pada columnar
transposition. Urutan penulisan dilakukan sepert rail Kelebihan Rail Fence Cipher adalah penulisan
fence cipher secara horizontal, dan karena itu nilai plainteksnya menjadi cipherteks. Route Cipher
offset perlu diperjhatikan, dalam hal ini bernilai 1, mempunyai rancangan kunci yang paling kuat.
sehingga penulisan dilmulai dari dari kolom ke-2. Columnar transposition digunakan untuk menambah
kekuatan dan kerumitan suatu cipher lain. Myszkowski
Setelah penulisan plainteks menjadi bentuk kolom- transposition adalah algoritma cipher transpose yang
kolom, pembacaan cipherteks dilakukan sesuai dengan terbaik di antara algoritma lainnya.
kunci pembacaan seperti pada route cipher, dalam hal
ini “ganjil atas-bawah, genap kiri-kanan”. Hal ini Semua algoritma cipher transposisi mempunyai
berarti untuk semua nomor urutan ganjil pembacaan kelemahan frekuensi kemunculan karakter cipherteks
dilakukan dari atas ke bawah dan semua nomor urutan sama dengan plainteks sehingga bisa diserang
genap dibaca dari kiri ke kanan. Urutan kunci menggunakan analisis frekuesi. Untuk meningkatkan
menentukan urutan pembacaan sehingga penulisan tingkat keamanan sebuah cipher transposisi adalah
cipherteks yang dilakukan terlebih dahulu adalah dengan menggabungkannya dengan algoritma klasik
nomor ganjil karena dalam kunci ganjil disebutkan lain yaitu cipher substitusi. Atau dengan merancang
terlebih dahulu. sebuah algoritma baru sehingga menambah
kemungkinan proses enkripsi yang digunakan.
Area-area kosong dapat diisikan dengan nilai dummy
seperti pada columnar transposition ataupun tidak.
Penulis merancang dua algoritma cipher transposisi
baru. Algoritma pertama menggunakan kelebihan
penulisan plainteks rail fence cipher, kunci route
cipher, dan kolom-kolom columnar transposition.
Algoritma kedua adalah sebuah variasi pengembangan
dari columnar transposition. Algoritma ini menuliskan
plainteks dalam kolom-kolom di mana setiap barisnya
diisi sampai dengan nomor urutan kunci.

DAFTAR REFERENSI

[1] Munir, Rinaldi, Diktat Kuliah IF5054 Kriptografi,


Sekolah Teknik Elektro dan Informatika ITB,
2007.
[2] http://en.wikipedia.org/wiki/Transposition_cipher,
Akses: Oktober 2007
[3] http://www.purplehell.com/riddletools,
Akses: Oktober 2007
[4] http://www.math.temple.edu/~renault/cryptology,
Akses: Oktober 2007
[5] http://www.antilles.k12.vi.us/math/cryptotut,
Akses: Oktober 2007

Anda mungkin juga menyukai