Anda di halaman 1dari 36

ALGORITMA KRIPTOGRAFI

KLASIK
(PART 1)

Salamah Permadyanti Putri, M.Kom

DASAR PERHITUNGAN
MATEMATIKA
Dasar rumus

Contoh

Pendahuluan
5

Sebelum komputer ada, kriptografi dilakukan dengan


algoritma berbasis karakter.
Algoritma yang digunakan termasuk ke dalam sistem
kriptografi simetri dan digunakan jauh sebelum sistem
kriptografi kunci publik ditemukan.
Terdapat sejumlah algoritma yang tercatat dalam sejarah
kriptografi (sehingga dinamakan algoritma kriptografi klasik),
namun sekarang algoritma tersebut sudah usang karena ia
sangat mudah dipecahkan.

Alasan Mempelajari algoritma


Kriptografi Klasik
1.

2.
3.

Untuk memberikan pemahaman konsep dasar


kriptografi.
Dasar dari algoritma kriptografi modern.
Dapat memahami potensi-potensi kelemahan
sistem cipher.

Algoritma 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 algoritma kriptografi


klasik:
1. Cipher Substitusi (Substitution Ciphers)
2. Cipher Transposisi (Transposition Ciphers)

Cipher Subsitusi
8

1.

2.

3.

Ini adalah algoritma kriptografi yang mula-mula digunakan oleh


kaisar Romawi, Julius Caesar (sehingga dinamakan juga caesar
cipher), untuk menyandikan pesan yang ia kirim kepada para
gubernurnya.
Caranya adalah dengan mengganti (menyulih atau mensubstitusi)
setiap karakter dengan karakter lain dalam susunan abjad
(alfabet).
Misalnya, tiap huruf disubstitusi dengan huruf ketiga berikutnya
dari susunan akjad. Dalam hal ini kuncinya adalah jumlah
pergeseran huruf
(yaitu k = 3).

Cipher Substitusi
9

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

10

Caesar

wheel

11

Dalam praktek, 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

12

Misalkan, A = 0,
B = 1,
C = 2,
...
Z = 25
maka, Caesar Cipher dirumuskan secara matematis:

Enkripsi: ci = E(pi) = (pi + 3) mod 26


Dekripsi: pi = D(ci) = (ci 3) mod 26
Ket: pi = karakter plainteks ke-i
ci = karakter cipherteks ke-i

13

Jika pergeseran huruf sejauh k, maka:


Enkripsi: ci = E(pi) = (pi + k) mod 26
Dekripsi: pi = D(ci) = (ci k) mod 26
k = kunci rahasia

Untuk 256 karakter ASCII, maka:


Enkripsi: ci = E(pi) = (pi + k) mod 256
Dekripsi: pi = D(ci) = (ci k) mod 256
k = kunci rahasia

14

Kripnatalis Terhadap Caesar Cipher


15

Caesar cipher mudah dipecahkan dengan metode exhaustive key


search karena jumlah kuncinya sangat sedikit (hanya ada 26 kunci).

16

17

18

Jenis-jenis Cipher Substitusi


19

1.
2.

2.

3.

Cipher abjad-tunggal (monoalphabetic cipher)


Cipher substitusi homofonik (Homophonic
substitution cipher)
Cipher abjad-majemuk (Polyalpabetic substitution
cipher )
Cipher substitusi poligram (Polygram substitution
cipher )

Cipher abjad-tunggal

(monoalphabetic cipher)

20

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

21

Tabel substitusi dapat dibentuk secara acak:


P la in te k s : 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
C ip h e r te k s : 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

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

Cipher Abjad Majemuk


22

23

24

Contoh cipher substitusi periodik adalah cipher


Vigenere yang ditemukan oleh kriptologi Perancis,
Blaise de Vigenere pada abad 16.

25

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
K: KEY KEYKE YKE YKEYKE
C: CLC CIJVW QOE QRIJVW

BY THE SEASHORE
YK EYK EYKEYKEY
ZI XFO WCKWFYVC

Cipher Transposisi
26

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.

27

a. Simple Columnar Transposition (SCTR)


Contoh: Misalkan plainteks adalah
DEPARTEMEN TEKNIK INFORMATIKA ITB
Key : 6
Enkripsi:
DEPART
EMENTE
KNIKIN
FORMAT
IKAITB
Cipherteks: (baca secara vertikal)
DEKFIEMNOKPEIRAANKMIRTIATTENTB
DEKF IEMN OKPE IRAA NKMI RTIA TTEN TB

28

Dekripsi: Bagi panjang cipherteks dengan kunci.


(Pada contoh ini, 30 / 6 = 5)
DEKFI
EMNOK
PEIRA
ANKMI
RTIAT
TENTB
Plainteks: (baca secara vertikal)
DEPARTEMEN TEKNIK INFORMATIKA ITB

b. Transposisi Rail Fence


Contoh lain. Misalkan plainteks adalah
CRYPTOGRAPHY AND DATA SECURITY
Plainteks disusun menjadi 3 baris (k = 3) seperti di bawah ini:
C
R

T
P
Y

A
O R
G

A
P

Y
H

A
N

E
T

maka cipherteksnya adalah


CTAAAEIRPORPYNDTSCRTYGHDAUY

S
A

I
C

R
U

T
Y

1. C. Segitiga
2. memasukan plaintext dengan pola segitiga menjadi 6 baris
(K=6) dan dibaca dari baris atas ke baris bawah:
S
A Y A
S E D A N
G B E L A J A
R K E AMA N A N
K OM P U T E R X X X

Chipertext:
KROGKMSBEPAEEAUSYDLMTAAAAENJNRAAXNXX

Untuk melakukan dekripsi terhadap chipertext diatas,


Susunlah setinggi 6 baris dimulai dari bawah, dimana
setiap perpindahan kolom huruf betambah tinggi satu
baris dan setelah mencapai baris ke-6, huruf kembali
menurun satu baris.
Kemudian baca mulai dari pucuk untuk memperoleh
kembali plaintext
S
A Y A
S E D A N
G B E L A J A
R K E AMA N A N
K OM P U T E R X X X

Diperoleh kembali teks asli:


SAYA SEDANG BELAJAR
KEAMANAN KOMPUTERXXX

2. d. Spiral
3. memasukan plaintext menjadi baris dan kolom 6 dengan
pola spiral dan dibaca dari baris atas ke baris bawah:
S

Chipertext:
SAEKRAAMETUJYARXPAANXXMLSANKOEEDA
NGB

Untuk melakukan dekripsi terhadap chipertext diatas, maka


susunlah menjadi 6 baris/kolom (K=6), dari atas ke bawah
dimulai pada kolom pertama seperti di bawah ini:
S

Lalu baca
secara spiral
untuk
mendpatkan
plaintext
kembali

Chipertext:
SAEKRAAMETUJYARXPAANXXMLSANKOEEDA
NGB

3. d. Diagonal: memasukan plaintext menjadi 6 baris/kolom


secara diagonal seperti berikut:
S

Chipertext:
SDLENTAAAAKEYNJMORAGAAMXSBRNPXEEK
AUX

Untuk melakukan dekripsi terhadap chipertext diatas,


maka susun kembali chipertext secara vertikal atau
horizontal menjadi 6 baris/kolom seperti di bawah ini:
S

Dibaca secara spiral untuk mendapatkan kembali


teks asli (plaintext).

Sumber :
Rinaldi Munir (IF5054 Kriptografi)
Dwi Nurani

Anda mungkin juga menyukai