Kriptografi Klasik oleh Gladis

 Kriptografi Klasik 

Bagian 1 

• Algoritma enkripsi klasik berbasis huruf alfabet 

• Menggunakan pena dan kertas saja, belum ada komputer 

• Termasuk ke dalam kriptografi kunci-simetri 

• Old cryptography 

• Tiga alasan mempelajari kriptografi klasik: 

1. Memahami konsep dasar kriptografi. 

2. Dasar algoritma kriptografi modern. 

3. Memahami kelemahan sistem cipher. 

• Cipher di dalam kriptografi klasik disusun oleh dua teknik dasar: 

1. Teknik substitusi: mengganti huruf plainteks dengan huruf cipherteks. 

2. Teknik transposisi: mengubah susunan/posisi huruf plainteks ke posisi lainnya. 

• Oleh karena itu, dikenal dua macam cipher di dalam kriptografi klasik: 

1. Cipher Substitusi (Substitution Ciphers) 

2. Cipher Transposisi (Transposition Ciphers)

Cipher Substitusi 

• Contoh: Caesar Cipher 

• Tiap huruf alfabet digeser 3 huruf ke kanan 

pi : A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 

ci : D E F G H I J K L M N O P Q R S T U V W X Y Z A B C 

• Contoh: 

Plainteks: awasi asterix dan temannya obelix 

Cipherteks: DZDVL DVWHULA GDQ WHPDQQBA REHOLA

• Supaya lebih aman, cipherteks dikelompokkan ke dalam kelompok n-huruf, misalnya kelompok 4-huruf: 

Semula: DZDVL DVWHULA GDQ WHPDQQBA REHOLA 

Menjadi: DZDV LDVW HULA GDQW HPDQ QBAR EHOL A 

• Atau membuang semua spasi: DZDVLDVWHULAGDQWHPDQQBAREHOLA 

• Tujuannya agar kriptanalisis menjadi lebih sulit 

• Misalkan, A = 0, 

                   B = 1, 

                   C = 2,

                   ... 

                   Z = 25 

maka, Caesar Cipher dirumuskan secara matematis: 

Enkripsi: c = E(p) = (p + 3) mod 26 

Dekripsi: p = D(c) = (c – 3) mod 26 

Ket: p = karakter plainteks; c = karakter cipherteks 

Plainteks: awasi asterix dan temannya obelix 

• p1 = ‘a’ = 0 → c1 = E(0) = (0 + 3) mod 26 = 3 = ‘D’ 

• p2 = ‘w’ = 22 → c2 = E(22) = (22 + 3) mod 26 = 25 = ‘Z’ 

• p3 = ‘a’ = 0 → c3 = E(0) = (0 + 3) mod 26 = 3 = ‘D’ 

• p4 = ‘s’ = 18 → c4 = E(18) = (18 + 3) mod 26 = 21 = ‘V’ 

• p5 = ‘i’ = 8 → c4 = E(8) = (8 + 3) mod 26 = 11 = ‘L’ 

• dst…

Cipherteks: DZDVL DVWHULA GDQ WHPDQQBA REHOLA 

Cipherteks: DZDVL DVWHULA GDQ WHPDQQBA REHOLA 

◼ c1 = ‘D’ = 3 → p1 = D(3) = (3 – 3) mod 26 = 0 = ‘a’ 

◼ c2 = ‘Z’ = 25 → p2 = D(25) = (25 – 3) mod 26 = 22 = ‘w’ 

◼ c3 = ‘D’ = 3 → p3 = D(3) = (3 – 3) mod 26 = 0 = ‘a’ 

◼ … 

◼ c12 = ‘A’ = 0 → p12 = D(0) = (0 – 3) mod 26 = – 3 mod 26 = 23 = ‘x’ 

Keterangan: – 3 mod 26 dihitung dengan cara 

|– 3| mod 26 = 3, sehingga –3 mod 26 = 26 – 3 = 23 

◼ Plainteks: awasi asterix dan temannya obelix 

• Jika pergeseran huruf sejauh k, maka: 

Enkripsi: c = E(p) = (p + k) mod 26 

Dekripsi: p = D(c) = (c – k) mod 26 k = kunci rahasia 

• Untuk 256 karakter ASCII, maka: 

Enkripsi: c = E(p) = (p + k) mod 256 

Dekripsi: p = D(ci ) = (c – k) mod 256 k = kunci rahasia 10 

Kelemahan: Caesar cipher mudah dipecahkan dengan exhaustive key search karena jumlah kuncinya sangat sedikit (hanya ada 26 kunci). 

Contoh: Kriptogram XMZVH

Plainteks yang potensial adalah CREAM dengan k = 21. Kunci ini digunakan untuk mendekripsikan cipherteks lainnya.

Chiperteks: VIVBQ SQBI SMBMUC LQ ICTI
Contoh: Misalkan kriptogram HSPPW menghasilkan dua kemungkinan kunci yang potensial, yaitu: k = 4 menghasilkan pesan dolls k = 11 menghasilkan wheel. Nilai k mana yang benar? Jika kasusnya demikian, maka lakukan dekripsi terhadap potongan cipherteks lain tetapi cukup menggunakan k = 4 dan k = 11 agar dapat disimpulkan kunci yang benar.

Jenis-jenis Cipher Substitusi
1. Chiper abjad-tunggal (monoalphabetic chiper)
2. Cipher subtitusi homofonik (homophonic subtitution cipher)
3. Cipher abjad-majemuk (Polygram subtitution cipher)
4. Cipher subtitusi poligram (Polygram subtitution cipher)

Cipher abjad-tunggal (monoalphabetic cipher) 
• Satu huruf di plainteks diganti dengan satu huruf yang bersesuaian. Contoh: Caesar Cipher 
• Jumlah kemungkinan susunan huruf-huruf cipherteks yang dapat dibuat pada sembarang cipher abjad-tunggal adalah sebanyak 
26! = 403.291.461.126.605.635.584.000.000

• Tabel substitusi dapat dibentuk secara acak: 
• Atau dengan kalimat yang mudah diingat: 
Contoh: we hope you enjoy this book 

Buang duplikasi huruf: wehopyunjtisbk 
Sambung dengan huruf lain yang belum ada: wehopyunjtisbkacdfglmqrvxz 

Tabel substitusi: 
Plainteks : 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 
Cipherteks: D I Q M T B Z S Y K V O F E R J A U W P X H L C N G

Cipher Substitusi Homofonik (Homophonic substitution cipher) 
• Setiap huruf plainteks dipetakan ke dalam salah satu huruf atau pasangan huruf cipherteks yang mungkin. 
• Tujuan: menyembunyikan hubungan statistik antara plainteks dengan cipherteks 
• Fungsi ciphering memetakan satu-ke-banyak (one-to-many). 
Misal: huruf E → AB, TQ, YT,UX (homofon) huruf B → EK, MF, KY (homofon) 

Cipher Abjad-Majemuk (Polyalpabetic substitution cipher)
 • Cipher abjad-tunggal: satu kunci untuk semua huruf plainteks 
• Cipher abjad-majemuk: setiap huruf menggunakan kunci berbeda. 
• Cipher abjad-majemuk dibuat dari sejumlah cipher abjad-tunggal, masing-masing dengan kunci yang berbeda. 
• Contoh: Vigenere Cipher (akan dijelaskan pada kuliah selanjutnya)

Contoh: (spasi dibuang) 
P : kriptografiklasikdengancipheralfabetmajemuk 
K : LAMPIONLAMPIONLAMPIONLAMPIONLAMPIONLAMPIONL 
C : VRUEBCTCARXSZNDIWSMBTLNOXXVRCAXUIPREMMYMAHV 

Perhitungan: 
(K + L) mod 26 = (10 + 11) mod 26 = 21 = V 
(R + A) mod 26 = (17 + 0) mod 26 = 17 = R 
(I + M) mod 26 = (8 + 12) mod 26 = 20 = U 
dst 
Contoh 2: (dengan spasi) 
P: she sells sea shells by the seashore 
K: KEY KEYKE YKE YKEYKE YK EYK EYKEYKEY 
C: CLC CIJVW QOE QRIJVW ZI XFO WCKWFYVC 

Cipher substitusi poligram (Polygram substitution cipher)
 • Blok huruf plainteks disubstitusi dengan blok cipherteks. 
• Misalnya AS diganti dengan RT, BY diganti dengan SL 
• Jika unit huruf plainteks/cipherteks panjangnya 2 huruf, maka ia disebut digram (bigram), jika 3 huruf disebut ternari-gram, dst 
• Tujuannya: distribusi kemunculan poligram menjadi flat (datar), dan hal ini menyulitkan analisis frekuensi.
• Contoh: Playfair cipher (akan dijelaskan pada kuliah selanjutnya)

Cipher Transposisi 
• Cipherteks diperoleh dengan mengubah posisi huruf di dalam plaintekls. 
• Dengan kata lain, algoritma ini melakukan transpose terhadap rangkaian huruf di dalam plainteks. 
• Nama lain untuk metode ini adalah permutasi, karena transpose setiap karakter di dalam teks sama dengan mempermutasikan karakter-karakter tersebut. 

Contoh: 
Misalkan plainteks adalah departemen teknik informatika itb 
Enkripsi: depart 
               emente 
               knikin 
               format 
               ikaitb 
Cipherteks: (baca secara vertikal) 
DEKFIEMNOKPEIRAANKMIRTIATTENTB (tanpa spasi) 
DEKF IEMN OKPE IRAA NKMI RTIA TTEN TB (4 huruf) 


Super-enkripsi 
• Menggabungkan cipher substitusi dengan cipher transposisi.
Contoh. Plainteks hello world 
• dienkripsi dengan caesar cipher menjadi KHOOR ZRUOG 
• kemudian hasil ini dienkripsi lagi dengan cipher transposisi (k = 4): 
KHOO 
RZRU 
OGZZ 
Cipherteks akhir adalah: KROHZGORZOUZ




Artikel ini dibuat sebagai tugas kuliah sebagaimana yang tertuang dalam : https://onlinelearning.uhamka.ac.id

Komentar

Postingan Populer