Anda di halaman 1dari 28

Algoritma Kriptografi

Klasik
(lanjutan)

Bahan Kuliah Kriptografi ke-3

Vignere Cipher
Termasuk ke dalam cipher abjad-majemuk
(polyalpabetic substitution cipher ).
Ditemukan oleh diplomat (sekaligus
seorang kriptologis) Perancis, Blaise de
Vignere pada abad 16.
Sudah berhasil dipecahkan pada Abad 19.

Vignere Cipher menggunakan


Bujur sangkar Vignere untuk
melakukan enkripsi.
Setiap baris di dalam bujur
sangkar menyatakan huruf-huruf
cipherteks yang diperoleh dengan
Caesar Cipher.

Plainteks

Ku
nci

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

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

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
A

C
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

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

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
D

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

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

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

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

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

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

L
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

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

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
M

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

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

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

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

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

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

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

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

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

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

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

Z
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

Gambar 4.2 Bujursangkar Vignere


4

Jika panjang kunci lebih pendek


daripada panjang plainteks, maka
kunci diulang secara periodik. Bila
panjang kunci adalah m, maka
periodenya dikatakan m.
Contoh: kunci = sony
Plainteks: THIS PLAINTEXT
Kunci:
sony sonysonys

Contoh enkripsi:
Plainteks

K
U
N
C
I

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

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

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
A

C
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

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

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
D

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

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

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

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

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

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

L
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

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

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
M

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

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

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

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

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

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

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

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

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

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

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

Z
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

Gambar 4.3 Enkripsi huruf T dengan kunci f


6

Hasil enkripsi seluruhnya adalah


sebagai berikut:

Plainteks
Kunci
Cipherteks

: THIS PLAINTEXT
: sony sonysonys
: LVVQ HZNGFHRVL

Huruf yang sama tidaks selalu dienkripsi


menjadi huruf cipherteks yang sama pula.
Contoh: huruf plainteks T dapat dienkripsi
menjadi L atau H, dan huruf cipherteks V
dapat merepresentasikan huruf plainteks H, I,
dan X
Hal di atas merupakan karakteristik dari
cipher abjad-majemuk: setiap huruf
cipherteks dapat memiliki kemungkinan
banyak huruf plainteks.
Pada cipher substitusi sederhana, setiap
huruf cipherteks selalu menggantikan huruf
plainteks tertentu.
8

Vignere Cipher dapat mencegah


frekuensi huruf-huruf di dalam
cipherteks yang mempunyai pola
tertentu yang sama seperti pada
cipher abjad-tunggal.
Jika periode kunci diketahui dan
tidak terlalu panjang, maka kunci
dapat ditentukan dengan menulis
program
komputer
untuk
melakukan exhaustive key search.
IF5054 Kriptografi

Contoh:
Diberikan cipherteks sbb:

TGCSZ GEUAA EFWGQ AHQMC

dan diperoleh informasi bahwa panjang kunci


adalah p huruf dan plainteks ditulis dalam
Bahasa Inggris, maka running program
dengan mencoba semua kemungkinan kunci
yang panjangnya tiga huruf, lalu periksa
apakah hasil dekripsi dengan kunci tersebut
menyatakan kata yang berarti.
Cara ini membutuhkan
sebanyak 26p kali.

usaha

percobaan

10

Playfair Cipher
Termasuk ke dalam polygram cipher.
Ditemukan oleh Sir Charles
Wheatstone dan Baron Lyon Playfair
pada tahun 1854.
Kunci kriptografinya 25 buah huruf
yang disusun di dalam bujur sangkar
5x5 dengan menghilangkan huruf J
dari abjad.
11

Contoh kunci:
S
E
K
M
V

T
R
F
O
W

A
C
G
P
X

N
H
I
Q
Y

D
B
L
U
Z

Jumlah kemungkinan kunci: 25!


=15.511.210.043.330.985.984.000.000

12

Susunan kunci di dalam


bujursangkar diperluas dengan
menambahkan kolom keenam dan
baris keenam.
S
E
K
M
V
S

T
R
F
O
W
T

A
C
G
P
X
A

N
H
I
Q
Y
N

D
B
L
U
Z
D

S
E
K
M
V

Baris ke-6 = baris ke-1


Kolom ke-6 = kolom ke-1
13

Pesan yang akan dienkripsi diatur


terlebih dahulu sebagai berikut:
1.Ganti huruf J (bila ada) dengan I
2.Tulis pesan dalam pasangan huruf
(bigram).
3.Jangan sampai ada pasangan huruf
yang sama. Jika ada, sisipkan Z di
tengahnya
4.Jika jumlah huruf ganjil,tambahkan
huruf Z di akhir
IF5054 Kriptografi

14

Contoh:
Plainteks: GOOD BROOMS SWEEP
CLEAN
Tidak ada huruf J, maka
langsung tulis pesan dalam
pasangan huruf:
GO OD BR OZ OM SZ SW EZ EP CL
EA NZ
15

Algoritma enkripsi:
1. Jika dua huruf terdapat pada baris kunci
yang sama maka tiap huruf diganti
dengan huruf di kanannya.
2. Jika dua huruf terdapat pada kolom kunci
yang sama maka tiap huruf diganti
dengan huruf di bawahnya.
3. Jika dua huruf tidak pada baris yang
sama atau kolom yang sama, maka huruf
pertama diganti dengan huruf pada
perpotongan baris huruf pertama dengan
kolom huruf kedua. Huruf kedua diganti
dengan huruf pada titik sudut keempat
dari persegi panjang yang dibentuk dari 3
huruf yang digunakan sampai sejauh ini.
16

Contoh: Kunci (yang sudah diperluas) ditulis kembali sebagai berikut:


S
E
K
M
V
S

T
R
F
O
W
T

A
C
G
P
X
A

N
H
I
Q
Y
N

D
B
L
U
Z
D

S
E
K
M
V

Plainteks (dalam pasangan huruf):


GO OD BR OZ OM SZ SW EZ EP CL EA NZ
Cipherteks:
FP UT EC UW PO DV TV BV CM BG CS DY

17

Enkripsi OD menjadi UT ditunjukkan pada bujursangkar di bawah ini:

S
E
K
M
V
S

T
R
F
O
W
T

A
C
G
P
X
A

N
H
I
Q
Y
N

D
B
L
U
Z
D

S
E
K
M
V

titik sudut ke-4

S T A
E R C
K F G
M O P
V W X
S T A

N
H
I
Q
Y
N

D
B
L
U
Z
D

S
E
K
M
V

18

Kunci dapat dipilih dari sebuah kalimat yang mudah diingat, misalnya:
JALAN GANESHA SEPULUH
Buang huruf yang berulang dan huruf J jika ada:
ALNGESHPU
Lalu tambahkan huruf-huruf yang belum ada (kecuali J):
ALNGESHPUBCDFIKMOQRTVWXYZ
Masukkan ke dalam bujursangkar:
A
S
C
M
V

L
H
D
O
W

N
P
F
Q
X

G
U
I
R
Y

E
B
K
T
Z

19

Karena ada 26 huruf abjad, maka


terdapat 26 x 26 = 677 bigram,
sehingga identifikasi bigram
individual lebih sukar.
Analisis frekuensi kemunculan
lebih sukar dilakukan karena
frekuensi kemunculan karakter
individual mempunyai rentang
lebih besar daripada frekuensi
kemunculan bigram.
20

Enigma Cipher
Enigma adalah mesin yang
digunakan Jerman selama Perang
Dunia II untuk
mengenkripsi/dekripsi pesan-pesan
militer.

21

22

Enigma menggunakan sistem


rotor (mesin berbentuk roda yang
berputar) untuk membentuk huruf
cipherteks yang berubah-ubah.
Setelah setiap huruf dienkripsi,
rotor kembali berputar untuk
membentuk huruf cipherteks baru
untuk huruf plainteks berikutnya.

23

24

Enigma menggunakan 4
melakukan substitusi.

buah rotor untuk

Ini berarti terdapat 26 26 26 26 =


456.976 kemungkinan huruf cipherteks
sebagai pengganti huruf plainteks sebelum
terjadi perulangan urutan cipherteks.
Setiap kali sebuah huruf selesai disubstitusi,
rotor pertama bergeser satu huruf ke atas.
Setiap kali rotor pertama selesai bergeser 26
kali, rotor kedua juga melakukan hal yang
sama, demikian untuk rotor ke-3 dan ke-4.

25

Posisi awal keempat rotor dapat di-set; dan


posisi awal ini menyatakan kunci dari
Enigma.
Jerman meyakini bahwa cipherteks yang
dihasilkan
Enigma
tidak
mungkin
dipecahkan. Namun, sejarah membuktikan
bahwa pihak Sekutu
berhasil juga
memecahkan kode Enigma.
Keberhasilan memecahkan Enigma
dianggap sebagai faktor yang
memperpendek Perang Dunia II menjadi
hanya 2 tahun.
26

Super Enkripsi
Mengkombinasikan metode cipher
substitusi dengan cipher transposisi.
Tujuan: memperoleh cipher yang lebih
kuat daripada hanya satu cipher saja.
Mula-mula enkripsi dengan cipher
substitusi sederhana (cipher abjadtunggal), lalu hasilnya dienkripsi lagi
dengan cipher transposisi.
27

Contoh:
Plainteks: HELLO WORLD
Enkripsi dengan caesar cipher menjadi:
KHOOR ZRUOG

Kemudian enkripsi lagi dengan cipher


transposisi (k = 4):
KHOO
RZRU
OGZZ

Cipherteks akhir adalah: KROHZGORZOUZ


IF5054 Kriptografi

28