View
445
Download
14
Category
Preview:
DESCRIPTION
merupakan tugas matakuliah desain dan analisis keamanan jaringan mengenai sandi kriptografi
Citation preview
Desain dan Analisis Keamanan Jaringan
“Sistem kriptografi klasik berbasis substitusi”
Oleh
DESI NILAWATI
1102636
PROGRAM STUDI PENDIDIKAN TEKNIK INFORMATIKA
JURUSAN ELEKTRONIKA
FAKULTAS TEKNIK
UNIVERSITAS NEGERI PADANG
2014
Sistem kriptografi klasik berbasis substitusi sebagai berikut :
1. Sandi Caesar chipper
2. Sandi substitusi
3. Sandi transposisi
4. Sandi vigenere
5. Sandi affine
6. Sandi hill
7. Sandi one time pad
8. Sandirotor
Penjelasannya sebagai berikut :
1. Sandi Caesar Chiper
Sandi Caesar mengganti setiap huruf di teks terang (plaintext) dengan huruf yang berselisih
angka tertentu dalam alfabet. Contoh ini menggunakan geseran tiga, sehingga huruf B di
plaintext menjadi E di teks tersandi (ciphertext).
Dalam kriptografi, sandi Caesar, atau sandi geser, kode Caesar atau Geseran Caesar
adalah salah satu teknik enkripsi paling sederhana dan paling terkenal. Sandi ini termasuk
sandi substitusi dimana setiap huruf pada teks terang (plaintext) digantikan oleh huruf lain
yang memiliki selisih posisi tertentu dalam alfabet. Misalnya, jika menggunakan geseran 3,
W akan menjadi Z, I menjadi L, dan K menjadi N sehingga teks terang "wiki" akan menjadi
"ZLNL" pada teks tersandi. Nama Caesar diambil dari Julius Caesar, jenderal, konsul, dan
diktator Romawi yang menggunakan sandi ini untuk berkomunikasi dengan para
panglimanya.
Langkah enkripsi oleh sandi Caesar sering dijadikan bagian dari penyandian yang lebih
rumit, seperti sandi Vigenère, dan masih memiliki aplikasi modern pada sistem ROT13.
Pada saat ini, seperti halnya sandi substitusi alfabet tunggal lainnya, sandi Caesar dapat
dengan mudah dipecahkan dan praktis tidak memberikan kerahasiaan bagi pemakainya.
Contoh
Cara kerja sandi ini dapat diilustrasikan dengan membariskan dua set alfabet; alfabet sandi
disusun dengan cara menggeser alfabet biasa ke kanan atau ke kiri dengan angka tertentu
(angka ini disebut kunci). Misalnya sandi Caesar dengan kunci 3, adalah sebagai berikut:
Alfabet Biasa: ABCDEFGHIJKLMNOPQRSTUVWXYZ
Alfabet Sandi: DEFGHIJKLMNOPQRSTUVWXYZABC
Untuk menyandikan sebuah pesan, cukup mencari setiap huruf yang hendak disandikan di
alfabet biasa, lalu tuliskan huruf yang sesuai pada alfabet sandi. Untuk memecahkan sandi
tersebut gunakan cara sebaliknya. Contoh penyandian sebuah pesan adalah sebagai berikut.
teks terang: kirim pasukan ke sayap kiri
teks tersandi: NLULP SDVXNDQ NH VDBDS NLUL
Proses penyandian (enkripsi) dapat secara matematis menggunakan operasi modulus
dengan mengubah huruf-huruf menjadi angka, A = 0, B = 1,..., Z = 25. Sandi ( ) dari
"huruf" dengan geseran n secara matematis dituliskan dengan,
Sedangkan pada proses pemecahan kode (dekripsi), hasil dekripsi ( ) adalah
Setiap huruf yang sama digantikan oleh huruf yang sama di sepanjang pesan, sehingga
sandi Caesar digolongkan kepada, substitusi monoalfabetik, yang berlawanan dengan
substitusi polialfabetik.
Sejarah dan Penggunaan
Julius Caesar menggunakan sandi ini dengan geseran tiga ke kiri.
Nama Sandi Caesar diambil dari Julius Caesar, yang menurut buku Suetonius Kehidupan
Duabelas Caesar, menggunakan sandi ini dengan geseran tiga, untuk mengirim pesan yang
mengandung rahasia atau taktik militer.
Jika ia memiliki suatu rahasia yang akan disampaikan, ia menuliskannya dalam
sandi, dengan mengganti urutan abjad, sehingga tak satu kata pun dapat
dimengerti. Jika ada yang ingin membaca pesan-pesan ini, ia harus mengganti
huruf keempat dalam alfabet, yaitu D, untuk A, dan seterusnya untuk huruf-huruf
lain. - Suetonius, Kehidupan Julius Caesar 56[1]
Keponakan Caesar, Augustus juga menggunakan skema sandi Caesar, namun dengan
geseran satu ke kanan, dengan sedikit perbedaan.
Jika ia hendak menulis sandi, ia menuliskan B untuk A, C untuk B, dan seterusnya,
serta AA untuk Z. — Suetonius, Kehidupan Augustus 88.[2]
Juga terdapat bukti bahwa Julius Caesar juga menggunakan sistem yang lebih rumit.
Penulis Aulus Gellius, merujuk pada sebuah risalah (yang sekarang hilang) dalam sandi-
sandinya.
Bahkan terdapat suatu risalah yang ditulis secara cerdas oleh ahli tatabahasa
Probus mengenai arti rahasia dari huruf-huruf yang menyusun surat-surat Caesar
— Aulus Gellius, 17.9.1–5.
Masih belum diketahui seberapa efektif sandi Caesar pada waktu itu, namun kemungkinan
besar sandi tersebut cukup aman, karena amat sedikit dari musuh Caesar yang dapat
membaca, apalagi yang dapat memecahkan sandi. Tidak ada catatan mengenai
ditemukannya solusi untuk memecahkan sandi Caesar pada zaman itu. Catatan tertua
mengenai pemecahan sandi substitusi monoalfabetik seperti sandi Caesar adalah pada abad
ke-9, oleh kebudayaan Arab Muslim yang menemukan analisis frekuensi.
Juga diketahui bahwa sejenis sandi Caesar juga pernah digunakan sebelum masa Caesar.
Sandi Caesar dengan geseran satu diklaim telah ditemukan di belakang Hezuzah. [3]
Pada abad ke-19, iklan pribadi di surat-surat kabar kadang-kadang dituliskan dengan sandi
Caesar. David Kahn (1967) menuliskan beberapa pasangan kekasih berkomunikasi secara
rahasia dengan sandi Caesar melalui iklan di The Times. Bahkan pada Perang Dunia I,
Tentara Kekaisaran Rusia menggunakan sandi Caesar, karena banyak tentara yang tidak
mampu menggunakan metode sandi yang lebih maju; akibatnya para kriptoanalis Jerman
dan Austria dapat memecahkan sandi-sandi tentara Rusia dengan mudah.
Sekarang sandi Caesar tidak dapat digunakan untuk hal-hal yang penting, namun dapat
digunakan untuk kepentingan sederhana seperti diari, surat cinta, menyembunyikan
penghinaan, spoiler dan lain-lain yang tidak melibatkan para ahli. Sandi Caesar dengan
geseran 13 disebut algoritma ROT13, digunakan pada forum-forum internet agar suatu
tulisan (mis. spoiler) tidak langsung terbaca.
Pada akhir abad ke-16 ditemukan sandi Vigenère yang merupakan pengembangan lebih
lanjut daripada sandi Caesar. Sandi Vigenère menggunakan sandi Caesar dengan bilangan
geseran yang berbeda tiap hurufnya, sesuai dengan sebuah kata kunci. Berbeda dengan
sandi Caesar yang dapat dipecahkan melalui analisis frekuensi sederhana, Sandi Vigenère
pada saat itu terlihat sulit sekali dipecahkan. Sandi Vigenère dijuluki le chiffre
indéchiffrable (sandi yang tak terpecahkan) hingga akhirnya dipecahkan pada abad ke-19
dengan cara analisis frekuensi lanjutan.
Pada April 2006, seorang bos mafia buronan Bernardo Provenzano tertangkap di pulau
Sisilia. Keberhasilan ini tak lepas dari keberhasilan pihak berwenang memecahkan sandi
yang digunakan sang buronan. Provenzano menggunakan suatu variasi dari sandi Caesar. [4]
Memecahkan sandi Caesar
Proses membaca teks tersandi menjadi
teks terang disebut dekripsi. Sandi Caesar
dapat dipecahkan bahkan jika seseorang
hanya memiliki teks tersandi tanpa
mengetahui nilai geserannya, ataupun
bahwa sandi Caesar telah digunakan.
Jika pihak pemecah sandi hanya
mengetahui bahwa digunakan substitusi
monoalfabetik dalam suatu sandi, sandi
tersebut dipecahkan dengan cara analisis
frekuensi. Setiap bahasa memiliki huruf
yang sering digunakan atau jarang
digunakan. Misalnya huruf a sering sekali
digunakan dalam bahasa Indonesia, dan q
atau x jarang sekali muncul. Setiap bahasa
memiliki pola frekuensi tertentu, yang
menunjukkan frekuensi relatif dari
digunakannya huruf-huruf dalam bahasa
tersebut. Pola frekuensi huruf dalam
bahasa Inggris ditunjukkan dalam
gambar.
Pola frekuensi huruf-huruf dalam bahasa Inggris. Pola ini memiliki sifat tertentu, misalnya
"lonjakan" pada e, atau tiga bar tinggi pada r-s diikuti 6 batang rendah pada u-z.
Jika pemecah kode menghitung frekuensi huruf pada teks tersandi, karakteristik khusus
pada grafik disamping tentu masih ada pada teks tersandi, hanya saja posisinya telah
digeser. Misalkan sang pemecah kode menemukan lonjakan di C, serta tiga batang tinggi
berturut-turut diikuti enam batang rendah berturut-turut dimulai dari O, maka bisa ditebak
bahwa sandi tersebut menggunakan geseran 5 ke kiri, dan dari kesimpulan ini kita dapat
mendekripsi teks tersandi dengan menggeser setiap huruf sandi 2 posisi ke kanan.
Cara kedua yang lebih mudah, dapat dilakukan jika sang pemecah sandi mengetahui bahwa
pengirim sandi menggunakan sandi Caesar. Sandi tersebut akan dipecahkan dengan
menggunakan brute force attack, yaitu mencoba ke-26 kemungkinan geseran yang
digunakan. Biasanya hanya satu dari ke-26 kemungkinan ini yang dapat dibaca. Misalkan
suatu teks tersandi "EXXEGOEXSRGI". Pada tabel disamping ditunjukkan hasil percobaan
yang dilakukan, dan hanya satu hasil yang dapat dibaca, yaitu attackatonce. Hal ini berarti
pesan yang disandikan adalah pesan berbahasa Inggris "attack at once", yang berarti
"serang sekarang juga".
Dengan kemajuan komputer dan teknologi informasi, kedua cara diatas dapat dijalankan
dengan mudah dan cepat, sehingga saat ini sandi Caesar sama sekali tidak berguna untuk
menyembunyikan atau menyandikan dokumen-dokumen atau perintah-perintah penting dan
rahasia.
2. Sandi Substitusi
Dalam kriptografi, sandi substitusi adalah jenis metode enkripsi dimana setiap satuan pada
teks terang digantikan oleh teks tersandi dengan sistem yang teratur; suatu "satuan" dapat
berarti satu huruf (paling umum), pasangan huruf, suku kata, kata, dan sebagainya. Sang
penerima pesan baru dapat membaca pesan tersebut setelah melakukan substitusi balik
terlebih dahulu. Pada sandi substitusi, satuan-satuan pada teks terang diubah namun
susunannya tetap. Kebalikannya adalah sandi transposisi, dimana satuan-satuan teks terang
susunannya diacak sedemikian rupa sehingga tidak dapat terbaca, namun tidak
mengubah/menyubstitusi huruf-huruf tersebut.
Sandi substitusi juga dikelompokkan menjadi berbagai jenis. Jika sandi tersebut
menyubstitusi huruf demi huruf, maka ia disebut sandi substitusi sederhana; jika
menyubstitusi dengan urutan yang lebih besar disebut sandi substitusi poligraf. Sebuah
sandi substitusi monoalfabetik menggunakan pola substitusi yang tetap di seluruh pesan
(misal: sandi Caesar), sedangkan sandi substitusi polialfabetik menggunakan substitusi
yang berbeda-beda sepanjang pesan (misal: sandi Vigenère).
Substitusi sederhana
Substitusi satu huruf secara terpisah (substitusi sederhana) dapat dilakukan dengan
menuliskan seluruh alfabet pada urutan tertentu untuk menggambarkan penggantian /
substitusi. Alfabet sandi dapat digeser (sandi Caesar) atau dibalik (sandi Atbash), maupun
diacak dengan lebih rumit.
Metode penyandian substitusi telah dipakai dari jaman dulu (kriptografi klasik) hingga kini
(kriptografi modern). Kriptografi klasik terbagi menjadi dua kategori utama, yaitu metode
penyandian substitusi dan metode penyandian transposisi.
Bentuk penyandian kriptografi klasik berupa teks (huruf/karakter) dengan menggunakan
alat tulis berupa kertas dan pensil. Namun bila menggunakan mesin sandi, biasanya mesin
tersebut masih sangat sederhana.
Sesuai dengan namanya, pada awalnya, metode penyandian substitusi adalah penyandian
dengan cara mengganti huruf/karakter teks aslinya ke huruf/karakter lain sebagai teks
sandinya, baik setiap satu huruf/karakter atau setiap kelompok huruf/karakter atau bisa juga
kombinasi dari itu.
Kemudian dalam perkembangannya, dalam metode penyandian substitusi modern,
digunakan sebuah program aplikasi tertentu dimana teks asli yang berbentuk kumpulan
karakter dalam sebuah file digital diganti dengan kumpulan karakter lain secara digital pula
sehingga menghasilkan file sandi yang siap dikomunikasikan.
Untuk membaca teks aslinya kembali dari teks sandi, cukup dengan membalik prosesnya.
Terdapat berbagai macam metode penyandian substitusi, diantaranya adalah :
1. Metode Penyandian Substitusi Sederhana
2. Metode Penyandian Caesar
3. Metode Penyandian Vigenére
4. Metode Penyandian Hill
5. Metode Penyandian OTP
Metode Penyandian Substitusi Sederhana
Metode penyandian substitusi sederhana ini termasuk dalam kriptografi klasik. Metode ini
dilakukan dengan mengganti setiap huruf dari teks asli dengan huruf lain sebagai huruf
sandi yang telah didefinisikan sebelumnya oleh algoritma kunci.
Dalam metode penyandian substitusi sederhana, deretan alfabetiknya bisa berupa deretan
dari A sampai Z yang disebut deret langsung, ataupun kebalikannya dari Z ke A yang
disebut deret inversi (kebalikan), namun dapat pula berupa deretan acak berkunci ataupun
tidak berkunci.
Untuk memudahkan dalam mengoperasikan penyandiannya, deretan huruf tersebut dapat
dibuatkan kedalam sebuah tabel, ataupun dengan matematika aljabar modulus 26,
tergantung algoritma kunci yang ditentukan.
1. Huruf asli : 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
Huruf sebagai kunci sandi :
2. Deret langsung : M N O P Q R S T U V W X Y Z A B C D E F G H I J K L
3. Deret inversi : F E D C B A Z Y X W V U T S R Q P O N M L K J I H G
4. Deret acak tidak berkunci : Q P A L Z M O W K S N X I E J D B C V F H R U Y T G
5. Deret acak berkunci (BATIK TULIS) : B A T I K U L S C D E F G H J M N O P Q R V
W X Y Z
6. Deret acak berkunci inversi (WAYANG GOLEK) : Z X V U T S R Q P M J I H F D C B
K E L O G N Y A W
Untuk mempermudah pemahaman dapat diperhatikan contoh berikut :
Teks asli :
SEMUA HAL BESAR DIAWALI DARI SEBUAH IMPIAN
Algoritma : Deret inversi dengan kunci A = F
Hasil teks sandi : NBTLF YFUEB NFOCX FJFUX CFOXN BELFY XTQXF SXXXX
Algoritma : Deret acak berkunci (BATIK TULIS)
Hasil teks sandi : PKGRB SBFAK PBOIC BWBFC IBOCP KARBS CGMCB HXXXX
Teks sandi umumnya ditulis dalam bentuk grup-grup kata sandi yang masing-masing grup
terdiri dari 4 atau 5 huruf. Teknik penulisan seperti ini dilakukan dengan pertimbangan :
- Pada saat itu, digunakan untuk menekan biaya transmisi telegram;
- Memudahkan dalam mengecek kesalahan saat ditransmisikan;
- Menghilangkan karakteristik kata-kata dari teks aslinya.
Bila teks sandinya berakhir tidak genap 4 atau 5 huruf, maka digunakan huruf-huruf
sebagai pelengkapnya. Dalam contoh, teks sandi digenapi dengan huruf XXXX. Namun
dalam prakteknya penggenapan huruf ini bisa dengan huruf apa saja, terutama huruf yang
jarang dipakai.
http://hadiwibowo.wordpress.com/2007/04/18/metode-penyandian-substitusi/
3. Sandi Transposisi
Kriptografi klasik adalah kriptografi yang dipakai pada jaman dulu. Bentuk penyandiannya
berupa teks (huruf) dengan menggunakan alat tulis berupa kertas dan pensil, namun bila
menggunakan mesin sandi, biasanya mesin tersebut masih sangat sederhana.
Kriptografi klasik terbagi menjadi dua kategori utama, yaitu metode penyandian transposisi
dan metode penyandian substitusi.
Metode penyandian transposisi adalah metode penyandian dengan cara mengubah letak dari
teks pesan yang akan disandikan. Dan untuk membaca pesan aslinya kembali, cukup
dengan mengembalikan letak dari pesan tersebut berdasarkan kunci dan algoritma
pergeseran huruf yang telah disepakati.
Terdapat beberapa algoritma dalam metode penyandian transposisi yaitu :
1. Penyandian transposisi rail fence
2. Penyandian transposisi route
3. Penyandian transposisi kolom
4. Penyandian transposisi ganda
5. Penyandian transposisi Myszkowski
Penyandian Transposisi Rail Fence
Rail Fence atau bisa juga disebut alur pagar adalah bentuk penyandian transposisi dengan
cara menuliskan huruf-huruf teks asli secara turun naik dalam sebuah pagar imajiner. Teks
sandinya dibaca secara baris per baris.
Lebih mudahnya dapat dilihat dari contoh berikut :
Teks pesan asli :
TENTUKAN PRIORITAS ANDA SEBAB KITA TIDAK DAPAT MENGERJAKAN
SEMUANYA X.
Algoritma : 5 baris
Proses :
T – - – - – - – P – - – - – - – S – - – - – - – A – - – -
- E – - – - – N – R – - – - – A – A – - – - – B – B – - -
- – N – - – A – - – I – - – T – - – N – - – E – - – K – -
- – - T – K – - – - – O – I – - – - – D – S – - – - – I -
- – - – U – - – - – - – R – - – - – - – A – - – - – - – T – DST
Hasil penyandian (teks sandi) :
TPSAD MKNEN RAABB IATEA AAYNA ITNEK TKANJ NUATK OIDSI ADPGR SMXUR
ATAEE
Penyandian Transposisi Route
Penyandian transposisi dengan metode route hampir sama dengan metode Rail Fence.
Penyandian Transposisi Route dilakukan dengan cara menuliskan teks asli secara kolom
dari atas kebawah dalam sebuah kisi-kisi imajiner dengan ukuran yang telah disepakati.
Teks sandinya dibaca dengan arah (route) sesuai perjanjian, misalnya dibaca secara (1)
spiral dengan arah jarum jam, mulai dari kiri atas atau (2) secara ular tangga, mulai dari
kanan bawah dan lain-lain cara pembacaannya.
Penyandian route memiliki banyak sekali variasi algoritma pembacaan teks-nya. Namun
tidak semua algoritma tersebut memberikan hasil teks sandi yang memenuhi standar
―aman‖. Beberapa algoritma tidak mengacak teks asli dengan sempurna, sehingga akan
memberikan celah yang dapat dengan mudah dipecahkan oleh seorang kriptoanalisa.
Penyandian transposisi route yang terkenal adalah Union Route yang digunakan oleh
tentara Amerika selama perang sipil.
Contoh penyandian transposisi route :
Teks pesan asli :
TENTUKAN PRIORITAS ANDA SEBAB KITA TIDAK DAPAT MENGERJAKAN
SEMUANYA X.
Algoritma : 5 baris, spiral arah jarum jam mulai dari kanan bawah.
Proses :
T K I A A B T D M R N A
E A O S S K I A E J S N
N N R A E I D P N A E Y
T P I N B T A A G K M A
U R T D A A K T E A U X
Hasil penyandian (teks sandi) :
XUAET KAADT RUTNE TKIAA BTDMR NANYA MKGAA TBNIP NAOSS KIAEJ SEANP
DIEAR
Penyandian Transposisi Kolom
Penyandian Transposisi Kolom dituliskan secara baris (biasa) dengan panjang yang telah
ditentukan sebagai kunci-nya. Teks sandi-nya dibaca secara kolom demi kolom dengan
pengacakan melalui permutasian angka kuncinya. Panjang baris dan permutasian kolomnya
disebut sebagai ―kata kunci‖.
Dalam prosesnya, kata kunci tersebut didefinisikan dahulu dengan angka sesuai urutan
abjad. Sedangkan proses untuk mengembalikan ke teks sandi ke teks aslinya dilakukan
langkah kebalikan darinya.
Lebih mudahnya dapat dilihat dalam contoh berikut :
Teks pesan asli :
TENTUKAN PRIORITAS ANDA SEBAB KITA TIDAK DAPAT MENGERJAKAN
SEMUANYA X.
Kata kunci : PELIKAN yang berarti 7 kolom
Proses :
PELIKAN didefinisikan sesuai urutan abjad menjadi 7 2 5 3 4 1 6
7 2 5 3 4 1 6
T E N T U K A
N P R I O R I
T A S A N D A
S E B A B K I
T A T I D A K
D A P A T M E
N G E R J A K
A N S E M U A
N Y A X
Hasil penyandian (teks sandi) :
KRDKA MAUEP AEAAG NYTIA AIARE XUONB DTJMN RSBTP ESAAI AIKEK ATNTS
TDNAN
Penyandian Transposisi Ganda
Penyandian transposisi ganda adalah metode penyandian transposisi kolom yang dilakukan
dua kali. Dua kali proses penyandian ini dilakukan untuk mempersulit upaya pemecahan
teks sandi transposisi kolom yang biasanya dapat dengan mudah dilakukan dengan metode
anagram.
Proses penyandian yang kedua ini bisa menggunakan kunci yang sama atau dua kunci yang
berbeda.
Sebagai contoh ditetapkan kunci kedua yang berbeda yaitu GERHANA; terhadap teks sandi
pertama : KRDKA MAUEP AEAAG NYTIA AIARE XUONB DTJMN RSBTP ESAAI AIKEK
ATNTS TDNAN
Proses :
GERHANA didefinisikan sesuai urutan abjad menjadi 4 3 7 5 1 6 2
4 3 7 5 1 6 2
K R D K A M A
U E P A E A A
G N Y T I A A
I A R E X U O
N B D T J M N
R S B T P E S
A A I A I K E
K A T N T S T
D N A N
Hasil penyandian (teks sandi) :
AEIXJ PITAA AONSE TRENA BSAAN KUGIN RAKDK ATETT ANNMA AUMEK SDPYR
DBITA
Selama perang dunia I dan II, metode penyandian transposisi ganda ini digunakan oleh
beberapa negara sebagai metode penyandian terhadap pesan-pesan rahasia yang
dikomunikasikan.
Penyandian Transposisi Myszkowski
Émile Victor Théodore Myszkowski di tahun 1902 memperkenalkan variasi dari metode
penyandian transposisi kolom, yang dibedakan dalam pendefinisian dan permutasian kata
kunci-nya.
Dalam metode penyandian transposisi kolom, kata kunci misalnya BOROBUDUR di
definisikan menjadi 1 4 6 5 2 8 3 9 7; sedangkan dalam metode Myszkowski
menjadi 1 3 4 3 1 5 2 5 4
Teks sandinya dibaca secara urutan nomor kolom, bila nomor urut kolomnya sama dibaca
secara bersamaan dimulai dari sebelah kiri.
Lebih mudahnya dapat dilihat dalam contoh berikut :
Teks pesan asli :
TENTUKAN PRIORITAS ANDA SEBAB KITA TIDAK DAPAT MENGERJAKAN
SEMUANYA X.
Kata kunci : BOROBUDUR yang berarti 9 kolom
Proses :
BOROBUDUR didefinisikan sesuai urutan abjad menjadi 1 3 4 3 1 5 2 5 4
1 3 4 3 1 5 2 5 4
T E N T U K A N P
R I O R I T A S A
N D A S E B A B K
I T A T I D A K D
A P A T M E N G E
R J A K A N S E M
U A N Y A X
Hasil penyandian (teks sandi) :
TURIN EIIAM RAUAA AAANS ETIRD STTPT JKNYN POAAK ADAEA MNKNT SBBDK
EGNEX
Untuk mempersulit pemecahan sandi oleh para kriptoanalisa, maka biasanya metode
penyandian transposisi dikombinasikan dengan metode penyandian substitusi.
http://hadiwibowo.wordpress.com/2007/03/28/metode-penyandian-transposisi/
4. Sandi Vigenère
Sandi Vigenère dinamai untuk menghormati Blaise de Vigenère (gambar), sekalipun
Giovan Batista Belaso menemukannya sebelum Vigenère.
Sandi Vigenère adalah metode menyandikan teks alfabet dengan menggunakan deretan
sandi Caesar berdasarkan huruf-huruf pada kata kunci. Sandi Vigenère merupakan bentuk
sederhana dari sandi substitusi polialfabetik. Kelebihan sandi ini dibanding sandi Caesar
dan sandi monoalfabetik lainnya adalah sandi ini tidak begitu rentan terhadap metode
pemecahan sandi yang disebut analisis frekuensi. Giovan Batista Belaso menjelaskan
metode ini dalam buku La cifra del. Sig. Giovan Batista Belaso (1553); dan disempurnakan
oleh diplomat Perancis Blaise de Vigenère, pada 1586. Pada abat ke-19, banyak orang yang
mengira Vigenère adalah penemu sandi ini, sehingga, sandi ini dikenal luas sebagai "sandi
Vigenère".
Sandi ini dikenal luas karena cara kerjanya mudah dimengerti dan dijalankan, dan bagi para
pemula sulit dipecahkan. Pada saat kejayaannya, sandi ini dijuluki le chiffre indéchiffrable
(bahasa Prancis: 'sandi yang tak terpecahkan'). Metode pemecahan sandi ini baru ditemukan
pada abad ke-19. Pada tahun 1854, Charles Babbage menemukan cara untuk memecahkan
sandi Vigenère. Metode ini dinamakan tes Kasiski karena Friedrich Kasiski-lah yang
pertama mempublikasikannya.
Cara kerja
Tabel Vigenère, atau tabula recta, dapat digunakan untuk enkripsi maupun dekripsi sandi
Vigenère.
Sandi Vigenère sebenarnya merupakan pengembangan dari sandi Caesar. Pada sandi
Caesar, setiap huruf teks terang digantikan dengan huruf lain yang memiliki perbedaan
tertentu pada urutan alfabet. Misalnya pada sandi Caesar dengan geseran 3, A menjadi D, B
menjadi E and dan seterusnya. Sandi Vigenère terdiri dari beberapa sandi Caesar dengan
nilai geseran yang berbeda.
Untuk menyandikan suatu pesan, digunakan sebuah tabel alfabet yang disebut tabel
Vigenère (gambar). Tabel Vigenère berisi alfabet yang dituliskan dalam 26 baris, masing-
masing baris digeser satu urutan ke kiri dari baris sebelumnya, membentuk ke-26
kemungkinan sandi Caesar. Setiap huruf disandikan dengan menggunakan baris yang
berbeda-beda, sesuai kata kunci yang diulang
Misalnya, teks terang yang hendak disandikan adalah perintah "Serbu Berlin":
serbuberlin
Sedangkan kata kunci antara pengirim dan tujuan adalah "Pizza"
"PIZZA" diulang sehingga jumlah hurufnya sama banyak dengan teks terang: PIZZAPIZZAP
Huruf pertama pada teks terang, S, disandikan dengan menggunakan baris berjudul P, huruf
pertama pada kata kunci. Pada baris P dan kolom S di tabel Vigenère, terdapat huruf H.
Demikian pula untuk huruf kedua, digunakan huruf yang terletak pada baris I (huruf kedua
kata kunci) dan kolom E (huruf kedua teks terang), yaitu huruf M. Proses ini dijalankan terus
sehingga
Teks terang: serbuberlin
Kata kunci: PIZZAPIZZAP
Teks bersandi: HMQAUQMQKIC
Proses sebalinya (disebut dekripsi), dilakukan dengan mencari huruf teks bersandi pada
baris berjudul huruf dari kata kunci. Misalnya, pada contoh di atas, untuk huruf pertama,
kita mencari huruf H (huruf pertama teks tersandi) pada baris P (huruf pertama pada kata
kunci), yang terdapat pada kolom S, sehingga huruf pertama adalah S. Lalu M terdapat pada
baris I di kolom E, sehingga diketahui huruf kedua teks terang adalah E, dan seterusnya
hingga didapat perintah "serbuberlin".
Enkripsi (penyandian) dengan sandi Vigenère juga dapat dituliskan secara matematis,
dengan menggunakan penjumlahan dan operasi modulus, yaitu:
atau C = P + K kalau jumlah dibawah 26 & - 26 kalau hasil jumlah di atas 26
dan dekripsi,
atau P = C - K kalau hasilnya positif & + 26 kalau hasil pengurangan minus
Keterangan: adalah huruf ke-i pada teks tersandi, adalah huruf ke-i pada teks terang,
adalah huruf ke-i pada kata kunci, dan adalah operasi modulus (sisa pembagian).
Pehitungan Sandi Vigenere
Rumus enkripsi vigenere cipher :
atau
Ci = ( Pi + Ki ) – 26 kalau hasil penjumlahan Pi dan Ki lebih dari 26
Rumus dekripsi vigenere cipher :
atau
Pi = ( Ci – Ki ) + 26 kalau hasil pengurangan Ci dengan Ki minus
Dimana:
Ci = nilai desimal karakter ciphertext ke-i
Pi = nilai desimal karakter plaintext ke-i
Ki = nilai desimal karakter kunci ke-i
Nilai desimal karakter:
A=0 B=1 C=2 ... Z=25
Sebagai contoh, jika plaintext adalah STIKOMBALI dan kunci adalah KAMPUS maka
proses enkripsi yang terjadi adalah sebagai berikut:
Plaintext: STIKOMBALI
Key: KAMPUSKAMP
Ciphertext: CTUZIELAXX
Pada contoh diatas kata kunci KAMPUS diulang sedemikian rupa hingga panjang kunci
sama dengan panjang plainteksnya. Jika dihitung dengan rumus enkripsi vigenere plainteks
huruf pertama S (yang memiliki nilai Pi=18) akan dilakukan pergeseran dengan huruf K
(yang memiliki Ki=10) maka prosesnya sebagai berikut:
Ci = ( Pi + Ki ) mod 26
= (18 + 10) mod 26
= 28 mod 26
= 2
Ci=2 maka huruf ciphertext dengan nilai 2 adalah C . Begitu seterusnya dilakukan
pergeseran sesuai dengan kunci pada setiap huruf hingga semua plainteks telah terenkripsi
menjadi ciphertext. Setelah semua huruf terenkripsi maka proses dekripsinya dapat dihitung
sebagai berikut:
Pi = ( Ci – Ki ) + 26
= ( 2 – 10 ) + 26
= –8 + 26
= 18
Pi=18 maka huruf plainteks dengan nilai 18 adalah S. Begitu seterusnya dilakukan
pergeseran sesuai dengan kunci pada setiap huruf hingga semua ciphertext telah terdekripsi
menjadi plainteks.
5. Sandi Afine
Dalam kriptografi terdapat dua konsep utama yakni enkripsi dan dekripsi. Enkripsi adalah
proses dimana informasi/data yang hendak dikirim diubah menjadi bentuk yang hampir
tidak dikenali sebagai informasi awalnya dengan menggunakan algoritma tertentu. Dekripsi
adalah kebalikan dari enkripsi yaitu mengubah kembali bentuk tersamar tersebut menjadi
informasi awal. Ada beberapa contoh macam-macam metode kriptografi untuk membuat
pesan rahasia antara lain: Caesar, Affine, Monoalphabetic, Polyalphabetic, Vigenere,
Beaufort, Playfair, Transposisi, MD5, DES, RSA, DSA, ElGamal, dan SHA. Metode
pertama kriptografi adalah Caesar, yang mana metode mengikuti pola pesan rahasia yang
dikirim oleh raja Caesar pada jaman romawi, kini banyak model untuk dapat diterapkan
dalam kriptografi, diantaranya adalah affine. Affine sudah cukup baik untuk mengirim
pesan rahasia berupa pesan teks rahasia.
Pesan (message) adalah data atau informasi yang dapat dibaca dan dimengerti maknanya.
Nama lain untuk pesan adalah plainteks (plaintext) atau teks jelas (cleartext). Maka
diperlukan membuat aplikasi pesan rahasia berupa teks menggunakan metode Affine yang
merupakan perluasan dari caesar yang mengalihkan plainteks dengan sebuah nilai dan
menambahkannya dengan sebuah pergeseran.
Di dalam kriptografi sering ditemukan berbagai istilah atau terminologi, beberapa istilah
yang penting untuk diketahui diantaranya adalah (Munir, 2006):
Pesan (message) adalah data atau informasi yang dapat dibaca atau dimengerti
maknanya. Nama lainnya untuk pesan adalah plainteks (plaintext) atau teks jelas
(clear text).
Pengirim (sender) adalah entitas yang melakukan pengiriman pesan kepada entitas
lainnya.
Kunci (cipher) adalah aturan atau fungsi matematika yang digunakan untuk
melakukan proses enkripsi dan dekripsi pada plaintext dan ciphertext.
Enkripsi adalah mekanisme yang dilakukan untuk merubah plaintext menjadi
ciphertext.
Dekripsi adalah mekanisme yang dilakukan untuk merubah ciphertext menjadi
plaintext.
Penerima (recipient) adalah entitas yang menerima pesan dari pengirim/entitas yang
berhak atas pesan yang dikirim.
Pengubahan plainteks ke cipherteks agar suatu pesan rahasia tidak mudah dibaca.
Gambar 1. Proses Enskripsi Teks
Gambar 1. memperlihatkan contoh dua buah plainteks serta cipherteks berkoresponden.
Yang mana suatu proses pesan yang dikembalikan, cipherteks dapat ditransformasikan
kembali ke plainteks semula, (Munir, 2006). Kriptografi itu sendiri terdiri dari dua proses
utama yakni proses enkripsi dan proses dekripsi. Seperti yang telah dijelaskan di atas, proses
enkripsi mengubah plaintext menjadi ciphertext (dengan menggunakan kunci tertentu) sehingga isi
informasi pada pesan tersebut sukar dimengerti. Adapun gambar diagram proses plainteks ke
enkripsi dan cipterteks ke deskipsi dapat dilihat pada gambar 2.
Gambar 2. Diagram prosesenkripsi dan dekripsi
Peranan kunci sangatlah penting dalam proses enkripsi dan dekripsi (disamping pula
algoritma yang digunakan) sehingga kerahasiaannya sangatlah penting, apabila
kerahasiaannya terbongkar, maka isi dari pesan dapat diketahui. Secara matematis, proses
enkripsi merupakan pengoperasian fungsi E (enkripsi) menggunakan e (kunci enkripsi) pada
M (plaintext) sehingga dihasilkan C (ciphertext), notasinya :
Ee(M) – C (1)
Sedangkan untuk proses dekripsi, merupakan pengoperasian fungsi D (desciption)
menggunakan d (kunci dekripsi) pada C (ciphertext) sehingga dihasilkan M (plaintext),
notasinya :
Dd(C) = M(2)
Sehingga dari dua hubungan diatas berlaku :
Dd(Ee(M)) = M(3)
Affine Cipher
Affine cipher pada metode affine adalah perluasan dari metode Caesar Cipher, yang
mengalihkan plainteks dengan sebuah nilai dan menambahkannya dengan sebuah
pergeseran P menghasilkan cipherteks C dinyatakan dengan fungsi kongruen:
C ≡ m P + b (mod n)(4)
Yang mana n adalah ukuran alphabet, m adalah bilangan bulat yang harus relatif prima
dengan n (jika tidak relatif prima, maka dekripsi tidak bisa dilakukan) dan b adalah jumlah
pergeseran (Caesar cipher adalah khusus dari affine cipher dengan m=1). Untuk melakukan
deskripsi, persamaan (4) herus dipecahkan untuk memperoleh P. Solusi kekongruenan
tersebut hanya ada jika inver m (mod n), dinyatakan dengan m -1
. Jikam -1
ada maka
dekripsi dilakukan dengan persamaan sebagai berikut:
P ≡ m -1
(C – b ) (mod n)(5)
Gambaran Umum Sistem
Hasil penelitian yang didapatkan adalah dapat diterapkan ilmu kriptografi dengan
metode Affineuntuk menghasilkan pesan teks rahasia. Teks asli dapat di ubah menjadi teks
yang disamarkan dengan suatu metode Affine, dan teks yang telah di enksripsi dapat
dikembalikan kembali menjadi teks asli (plainteks).
Tabel 1. Penginisialan Alfabet Huruf A-Z menjadi Angka 0 – 26
Huruf A B C … … X Y Z
Angka 0 1 2 … … 23 24 25
Pengujian Plainteks
Pengujian data plainteks digunakan agar teks asli dapat di enskripsi menjadi cipherteks.
Contoh data plainteks untuk pengujian pertama dibutuhkan adalah sebagai berikut:
Tabel 2. Teks Inputan Plainteks
D A N I D I T A
3 0 13 8 3 8 19 0
Plainteks:
D A N I D I T A
Ekivalen:
3 0 13 8 3 8 19 0
N = 26
K = Relatif Prima (1,3,5,7,9,11,15,17,19,21,23,25)
Kunci pertama = 5
Kunci kedua= 7
Gambar 3. Proses Enskripsi
affine cipher dengan mengambil m = 5 (karena 5 relatif prima dengan 26) dan b= 7.
Karena alphabet yang digunakan 26 huruf, maka n = 26. Enkripsi plainteks dihitung dengan
kekongruenan:
C≡5P + 7 (mod 26)(6)
Perhitungannya adalah sebagai berikut:
P1= 3 –> c1 ≡ 5.3 + 7≡ 22 (mod 26) ≡ 22 = W
P2= 0–> c2 ≡ 5.0 + 7≡ 7(mod 26) ≡ 7= H
P3= 13 –> c3 ≡ 5.13 + 7 ≡ 72 (mod 26) ≡ 20 = U
P4= 8–> c4 ≡ 5.8 + 7≡ 47 (mod 26) ≡ 21 = V
P5= 3–> c5 ≡ 5.3 + 7≡ 22 (mod 26) ≡ 22 = W
P6= 8–> c6 ≡ 5.8 + 7≡ 47 (mod 26) ≡ 21 = V
P7= 19 –> c7 ≡ 5.19 + 7 ≡ 102 (mod 26) ≡ 24 = Y
P8= 0–> c8 ≡ 5.0 + 7≡ 7(mod 26) ≡ 7= H
Maka menghasilkan Cipherteks sebagai berikut : W H U V W V Y H
Pengujian Cipherteks
Pengujian data cipherteks digunakan teks yang telah di enskripsi dapat
dideskripsikan kembali menjadi plainteks. Contoh datacipherteks yang telah di enskripsi
untuk pengujiansebelumnya adalah, sebagai berikut:
Tabel 2. Teks Inputan Plainteks
W H U V W V Y H
22 7 20 21 22 21 24 7
Cipherteks:
W H U V W V Y H
Ekivalen:
22 7 20 21 22 21 24 7
N = 26
K = RelatifPrima (1,3,5,7,9,11,15,17,19,21,23,25)
Kunci pertama = 5
Kunci kedua= 7
Gambar 4. Proses Deskripsi
Untuk mengembalikan teks yang telah dienskripsi menjadi pesan rahasia dapat
dilakukan pendekripsian, pertama-tama dapat dihitung 5-1
(mod 26), yang dapat dihitung
dengan memecahkan kekongruenan lanjar.
5x ≡ 1 (mod 26)(7)
Untuk deskripsi dengan hasil 1 maka solusinya adalah x =21(mod 26) dikarenakan 5.21
= 105 mod 26 menghasilkan = 1.
P ≡ 21 (C – 7) (mod 26)(8)
P1=22–> c1 ≡ 21.(22 – 7) ≡ 315(mod 26) ≡ 3 = D
P2= 7 –> c2 ≡ 21.(7 – 7)≡ 0 (mod 26) ≡ 0 = A
P3=20 –> c3 ≡ 21.(20 – 7) ≡ 273(mod 26)≡ 13 = N
P4=21–> c4 ≡ 21.(21 – 7)≡ 294(mod 26) ≡ 8 = I
P5=22–> c5 ≡ 21.(22 – 7) ≡ 315(mod 26)≡ 3 = D
P6=21–> c6 ≡ 21.(21 – 7) ≡ 294 (mod 26) ≡ 8 = I
P7=24–> c7 ≡ 21.(24 – 7) ≡357(mod 26) ≡ 19 = T
P8=7–> c8 ≡ 21.(7 – 7)≡ 0 (mod 26) ≡ 0 = A
Maka menghasilkan Plainteks sebagai berikut : D A N I D I T A
http://hamdani.blog.ugm.ac.id/2011/07/07/kriptografi-untuk-text-message-menggunakan-
metode-affine/s
6. Sandi Hill
Hill cipher pertama kali dijelaskan oleh Lester Hill dalam sebuah makalah yang diterbitkan
pada tahun 1931. Sementara cipher ini dapat bekerja pada blok surat dari setiap panjang,
kami akan menjelaskan sebagai bekerja pada pasangan huruf, atau digraf.
Pertama, kunci kami terdiri dari empat nomor-nomor yang kita sebut a, b, c, dan d. Angka-
angka ini harus dipilih sehingga iklan kuantitas - bc relatif prima dengan panjang alfabet
(26 dalam kasus kami, sehingga iklan - bc tidak bisa genap atau kelipatan 13).
Untuk mengenkripsi sepasang surat, kita melihat setara numerik mereka seperti biasa.
Misalkan angka-angka ini x dan y
Dalam upaya untuk memecahkan sebuah sandi Hill, kegunaan dari analisis frekuensi
menjadi makin kecil dengan ukuran blok meningkat huruf. Sebuah cipher Hill tidak sulit
untuk diterapkan pada kelompok 6 atau lebih huruf. Sebuah kerugian yang besar,
bagaimanapun, adalah bahwa hal itu sangat rentan terhadap apa yang disebut serangan
plaintext yang dikenal. Jika bagian dari plaintext diketahui penyerang, maka menguraikan
transformasi dapat disimpulkan hanya dengan menyelesaikan beberapa persamaan linier.
Beberapa bantuan dapat diperoleh dengan menerapkan cipher Vigenere setelah enkripsi
dengan cipher Hill, walaupun ada banyak cara yang lebih baik untuk meningkatkan
keamanan.
Hill Cipher merupakan penerapan aritmatika modulo pada kriptografi. Teknik kriptografi
ini menggunakan sebuah matriks persegi sebagai kunci yang digunakan untuk melakukan
enkripsi dan dekripsi.
Hill Cipher diciptakan oleh Lester S. Hill pada tahun 1929 [2]. Teknik kriptografi ini
diciptakan dengan maksud untuk dapat menciptakan cipher (kode) yang tidak dapat
dipecahkan menggunakan teknik analisis frekuensi. Hill Cipher tidak mengganti setiap
abjad yang sama pada plaintext dengan abjad lainnya yang sama pada ciphertext karena
menggunakan perkalian matriks pada dasar enkripsi dan dekripsinya.
Hill Cipher yang merupakan polyalphabetic cipher dapat dikategorikan sebagai block
cipher [2] karena teks yang akan diproses akan dibagi menjadi blokblok dengan ukuran
tertentu. Setiap karakter dalam satu blok akan saling mempengaruhi karakter lainnya dalam
proses enkripsi dan dekripsinya, sehingga karakter yang sama tidak dipetakan menjadi
karakter yang sama pula.
Hill Cipher termasuk kepada algoritma kriptografi klasik yang sangat sulit dipecahkan oleh
kriptanalis apabila dilakukan hanya dengan mengetahui berkas ciphertext saja. Namun,
teknik ini dapat dipecahkan dengan cukup mudah apabila kriptanalis memiliki berkas
ciphertext dan potongan berkas plaintext. Teknik kriptanalisis ini disebut known-plaintext
attack [1].
Dasar Teknik Hill Cipher
Dasar dari teknik Hill Cipher adalah aritmatika modulo terhadap matriks. Dalam
penerapannya, Hill Cipher menggunakan teknik perkalian matriks dan teknik invers
terhadap matriks. Kunci pada Hill Cipher adalah matriks n x n dengan n merupakan ukuran
blok. Matriks K yang menjadi kunci ini harus merupakan matriks yang invertible, yaitu
memiliki inverse K-1 sehingga :
Kunci harus memiliki invers karena matriks K-1 tersebut adalah kunci yang digunakan
untuk melakukan dekripsi.
Teknik Enkripsi pada Hill Cipher
Proses enkripsi pada Hill Cipher dilakukan per blok plaintext. Ukuran blok tersebut sama
dengan ukuran matriks kunci. Sebelum membagi teks menjadi deretan blok-blok, plaintext
terlebih dahulu dikonversi menjadi angka, masing-masing sehingga A=1, B=2, hingga
Y=25. Z diberi nilai 0.
Tabel 1: Konversi Alfabet ke Angka dalam Hill Cipher
Secara matematis, proses enkripsi pada Hill Cipher adalah:
C = K . P (2)
C = Ciphertext
K = Kunci
P = Plaintext
Jika terdapat plaintext P:
P = STRIKE NOW
Maka plaintext tersebut dikonversi menjadi:
P = 19 20 18 9 11 5 14 15 23
Plaintext tersebut akan dienkripsi dengan teknik Hill
Cipher, dengan kunci K yang merupakan matriks 2×2.
Karena matriks kunci K berukuran 2, maka plaintext dibagi menjadi
blok yang masing-masing bloknya berukuran 2 karakter. Karena karakter terakhir tidak ada
memiliki pasangan, maka diberi pasangan karakter yang sama yaitu W. P menjadi
STRIKENOWW. Blok pertama dari plaintext P adalah :
Blok plaintext ini kemudian dienkripsi dengan kunci K melalui persamaan (2).
Hasil perhitungan menghasilkan angka yang tidak berkorespondensi dengan huruf-huruf,
maka lakukan modulo 26 pada hasil tersebut. Sehingga, C1,2 menjadi:
Karakter yang berkorespondensi dengan 7 dan 20 adalah G dan T. maka S menjadi G dan T
menjadi T. Setelah melakukan enkripsi semua blok pada plaintext P maka dihasilkan
ciphertext C sebagai berikut:
P = STRIKENOW
C = 7 20 14 11 7 11 4 21 19 11
C = GTNKGKDUSK
Dari ciphertext yang dihasilkan terlihat bahwa Hill Cipher menghasilkan ciphertext yang
tidak memiliki pola yang mirip dengan plaintextnya.
Teknik Dekripsi pada Hill Cipher
Proses dekripsi pada Hill Cipher pada dasarnya sama dengan proses enkripsinya. Namun
matriks kunci harus dibalik (invers) terlebih dahulu. Secara matematis, proses dekripsi pada
Hill Cipher dapat diturunkan dari persamaan (2).
Menjadi persamaan proses dekripsi:
Dengan menggunakan kunci
, maka proses dekripsi diawali dengan mencari invers dari matriks K.
Mencari invers dapat dilakukan dengan menggunakan metode operasi baris (row operation)
atau metode determinan [3]. Setelah melakukan perhitungan, didapat matriks K-1 yang
merupakan invers dari matriks K, yaitu :
Kunci K-1 yang digunakan untuk melakukan dekripsi ini telah memenuhi persamaan (1)
karena:
Ciphertext C = GTNKGKDUSK, akan didekripsi dengan menggunakan kunci dekripsi K-1
dengan persamaan (3). Proses dekripsi ini dilakukan blok per blok seperti pada proses
enkripsi. Pertama-tama ubah huruf-huruf pada ciphertext menjadi urutan numerik.
C = 7 20 14 11 7 11 4 21 19 11
Proses dekripsi dilakukan sebagai berikut:
dan blok kedua:
Setelah semua blok selesai didekripsi, maka didapatkan hasil plaintext:
P = 19 20 18 9 11 5 14 15 23
P = STRIKENOW
Teknik kriptanalisis terhadap hill cipher
Kriptanalisis terhadap Hill Cipher sangat sulit jika dilakukan dengan ciphertext-only attack,
terlebih apabila matriks kunci yang digunakan berukuran besar. Kesulitan ini disebabkan
oleh ciphertext Hill Cipher yang tidak memiliki pola dan setiap karakter dalam satu blok
saling mempengaruhi karakter lainnya.
Teknik yang dapat digunakan untuk melakukan kriptanalisis terhadap Hill Cipher adalah
knownplaintext attack. Jika kriptanalisis memiliki pecahan plaintext dan ciphertext yang
saling berkorespondensi, maka Hill Cipher dapat dipecahkan. Namun proses yang cukup
sulit adalah untuk menentukan panjang kunci yang digunakan.
Hal ini menjadi salah satu kekuatan yang dimiliki oleh Hill Cipher. Cara yang dapat
dilakukan hanya dengan mencari tahu panjang kunci atau dengan melakukan perkiraan dan
percobaan.
Kemungkinan terburuk yang dimiliki oleh Hill Cipher adalah ketika seorang kriptanalis
memiliki potongan plaintext dan ciphertext yang berkorespondensi serta mengetahui
panjang kunci yang digunakan. Dengan informasi ini, kriptanalis dapat memecahkan Hill
Cipher dengan sangat mudah. Misalkan kriptanalis mengetahui panjang kunci K adalah 2
dan memiliki potongan berkas plaintext P dan C sebagai berikut:
P = STRI
C = GTNKGKDUSK
Dari informasi yang dimiliki, maka diketahui bahwa karakter ST pada plaintext
berkorespondensi dengan karakter GT, dan karakter RI dengan NK. Pemecahan dapat
dilakukan dengan persamaan linier Misalkan kunci direpresentasikan dengan:
Plaintext P dengan:
Ciphertext C dengan:
Dengan menerapkan persamaan (2) maka persamaan linier yang dapat dibentuk dari contoh
adalah:
Dengan menyelesaikan persamaan (i) dan persamaan (ii) lalu persamaan (iii) dan
persamaan (iv) memakai aritmatika modulo 26, maka nilai a, b, c, dan d didapat:
a = 5
b = 6
c = 2
d = 3
Dengan nilai a, b, c, dan d maka kunci K didapatkan, yaitu:
Dengan kunci K tersebut, kriptanalis hanya perlu melakukan dekripsi
terhadap ciphertext keseluruhan untuk mendapatkan plaintext seutuhnya.
Berdasarkan pembahasan yang telah dilakukan diatas, maka kesimpulan yang dapat diambil
adalah:
1. Hill Cipher adalah algoritma kriptografi klasik yang sangat kuat dilihat dari segi
keamanannya.
2. Matriks kunci Hill Cipher harus merupakan matriks yang invertible. Semakin besar
suatu matriks kunci maka semakin kuat juga segi keamanannya.
3. Hill Cipher kuat dalam menghadapi ciphertext-only attack namun lemah jika
diserang dengan knownplaintext attack.
http://ciiekaajn.wordpress.com/2011/03/25/98/
7. Sandi One Time Pad
Dalam dunia kriptografi dikenal sebuah metode penyandian yang sangat kuat sehingga
tidak mudah dipecahkan, yaitu metode penyandian One Time Pad (OTP). Metode
penyandian OTP pertama kali diperkenalkan oleh Gilbert Vernam dalam perang dunia
pertama.
Metode penyandian OTP merupakan salah satu variasi dari metode penyandian substitusi
dengan cara memberikan syarat-syarat khusus terhadap kunci yang digunakan yaitu terbuat
dari karakter / huruf yang acak (kunci acak atau pad), dan pengacakannya tidak
menggunakan rumus tertentu.
Jika kunci tersebut benar-benar acak, digunakan hanya sekali, serta terjaga kerahasiannya
dengan baik, maka metode penyandian OTP ini sangat kuat dan tidak dapat dipecahkan.
Dalam kriptografi klasik, yaitu kriptografi jaman dulu yang dikenal dengan sebutan
kriptografi kertas dan pensil, teks sandi dari metode penyandian OTP ini diperoleh dengan
menjumlahkan / mengurangkan teks aslinya terhadap kunci. Penggunaan kunci ini hanya
dan harus hanya sekali pakai. Sedangkan untuk mendapatkan kembali teks aslinya
dilakukan pengurangan / penjumlahan teks sandi terhadap kunci tersebut, sebagai kebalikan
dari proses menyandi.
Untuk memudahkan dalam operasionalnya huruf-huruf diterjemahkan dahulu kedalam
angka 1 sampai 26 dengan A = 1; B = 2; dst sampai Z = 26. Dan dalam perhitungan
aljabarnya berupa bilangan modulus 26.
Untuk memudahkan pemahaman, bisa diperhatikan contoh berikut :
Kunci acak :
FGHJV KVLIH POKNH BESAG VMHBK BLQML OPUTT EXDFJ MIKNY GQDXS
EQOIK HYGFB MIUYW UIOVC FDWUM KJLOK BTYVG KJABH SVQCG NBCVG
FSJFJ HOSHZ VBQNZ BXCMS GDUFO GWZMF IPMSA BNAPD QWMOC PAJSB
MSGYQ KWNAY ZHALU
Pesan yang akan disandi :
DUNIA TELAH SEMAKIN DATAR MAKA BELILAH TV LAYAR DATAR
Algoritma : Teks sandi = Teks asli + Kunci
Proses :
Penjumlahan ini dengan bilangan modulus 26
K : F= 6 G= 7 H= 8 J=10 V=22 K=11 V=22 L=12 I= 9 H= 8 P=16
O=15 K=11
TA : D= 4 U=21 N=14 I= 9 A= 1 T=21 E= 5 L=12 A= 1 H= 8 S=19
E= 5 M=13
TS : J=10 B= 2 V=22 S=19 W=23 F= 6 B= 2 X=24 J=10 P=16 I= 9
T=20 X=24 DST
K : N H B E S A G V M H B K B L Q M L O P U T T E X D F J M I
K N Y
TA : A K I N D A T A R M A K A B E L I L A H T V L A Y A R D
A T A R
TS : O S K S W B A W E U C V C N V Y U A Q C N P Q Y C G B Q
J E O Q
Teks sandi hasil penyandian :
JBVSW FBXJP ITXOS KSWBA WEUCV CNVYU AQCNP QYCGB QJEOQ
Metode penyandian OTP ini kekuatannya bertumpu pada keacakan kuncinya, sehingga
kunci yang digunakan untuk proses penyandian tersebut harus dilindungi dengan baik.
8. Sandirotor
kriptografi klasik adalah kriptografi yang sangat sederhana dan hanya menggunakan
kombinasi 26 alphabet.Di dalam kriptografi klasik, ini terdapat beberapa jenis kriptografi
yang kemudian dijadikan sumber inspirasi untuk oleh para perancang algoritma kripto.
Diantaranya:
Kripto Substitusi : pada penyandian ini, setiap huruf dalam teks terang akan tepat
berkorespondensi satu satu dengan teks sandinya.
Kripto Transposisi: teknik penyandian diaman huruf-huruf dalam teks terang hanya
dimanipulasi letak posisinya (transpose) untuk menjadi teks sandi.
Sistem RSA dan DES : Kedua sistem inilah yang kemudian menginspirasi
munculnya algoritma algoritma moderen yang saat ini banyak digunakan dalam
sistem komputer dan sistem jaringan komputer, sebagai sistem keamanannya.
Sistem One Time Pad (OTP) : sistem yang juga dikenal sebagai One Time Key
(OTK) dan diakui sebagai sistem kripto yang ideal, yaitu sistem yang paling kuat
diantara sistem sistem sandi yang ada, dari awal mula kripto dikenal dan dipakai,
sampai saat ini. Sistem ini dijadikan panutan bagi sistem enkripsi yang ada.
Rotor Machine : sebuah mesin sandi kuno yang pada mulanya dipakai oleh para
praktisi kriptografi
Di dalam kriptografi, juga dikenal istilah Kriptoanalisis dan juga kriptosystem.
Kriptoanalisis adalah suatu kegiatan yang ditujukan untuk untuk mengetahui isi pesan yang
ditransmisikan oleh pengirim dan juga penerima sebagai pemilik yang sah atas berita
tersebut.
Recommended