Anda di halaman 1dari 27

BAB III

ALGORITMA KRIPTOGRAFI KLASIK

Algoritma kriptografi (cipher) klasik merupakan algoritma berbasis karakter yaitu


proses enkripsi dan dekripsinya dilakukan pada setiap karakter pesan. Pada dasarnya
algoritma kriptografi klasik dikelompokkan menjadi dua macam chiper yaitu:

1. Cipher Substitusi ( Substitution Ciphers)


2. Cipher Transposisi (Transposition Chipers)

3.1 Cipher Substitusi

Cipher Substitusi merupakan algoritma kriptografi yang mengganti setiap


unit plainteks menjadi satu unit cipherteks dengan satu huruf, pasangan huruf atau
kelompok lebih dari dua huruf. Caesar Cipher merupakan algoritma substitusi tertua.
Contoh Caesar Cipher

Pada Algoritma, tiap huruf disubstitusi dengan huruf ketiga berikutnya dari susunan
alphabet yang sama. Kunci dari algoritma ini adalah jumlah pergeseran huruf (yaitu
3). Susunan alphabet setelah digeser sejauh 3 huruf membentuk sebuah tabel
substitusi (tabel 3.1) berikut ini:

Tabel 3.1 Tabel Substitusi Caesar Cipher dengan kunci =3

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 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 3.1 :
Plainteks (P): VERONICA LUSIANA
Dengan melihat tabel 3.1 maka hasil enkripsi dari plainteks di atas adalah:
1
Cipherteks (C): YHURQLFD OXVLDQD

Dengan mengkodekan setiap huruf alphabet dengan integer : A=0, B=1,… Z =25
maka secara matematis untuk proses enkripsi menggunakan persamaan berikut ini :

C = E(P) = (P+3) mod 26 …………………………………………………..(3.1)

Sedangkan untuk proses dekripsi menggunakan persamaan berikut ini :


P = D(C) = (C-3) mod 26 …………………………………………………..(3.2)

-1
Fungsi D merupakan balikan (inverse) dari fungsi E, yaitu D(C) = E (P)

Sehingga cipherteks pada contoh 3.1 dapat dihitung dengan menggunakan persamaan
(3.1) sebagai berikut:
P1 = ‘V’ = 21 C1 = E (21)=(21+3) mod 26 = 24 =’Y’
P2 = ‘E’ = 4 C2 = E (4) =( 4+3) mod 26 = 7 =’H’
P3 = ‘R’ = 17 C3 = E (17)=(17+3) mod 26 = 20 =’U’
P4 = ‘0’ = 14 C4 = E (14)=(14+3) mod 26 = 17 =’R’
P5 = ‘N’ = 13 C5 = E (13)=(13+3) mod 26 = 16 =’Q’
P6 = ‘I’ = 8 C6 = E (8) =(8+3) mod 26 = 11 =’L’
P7 = ‘C’ = 2 C7 = E (2) =(2+3) mod 26 = 5 =’F’
P8 = ‘A’ = 0 C8 = E (0) =(0+3) mod 26 = 3 =’D’
Dst……

Jika keseluruhan perhitungan diselesaikan, maka cipherteksnya menjadi:


YHURWLFD OXVLDQD
Untuk mengembalikan cipherteks tersebut menjadi plainteks maka dapat dihitung

dengan menggunakan persamaan (3.2) sebagai berikut:

C1 = ‘Y’ = 24 P1 = D(24) = (24-3) mod 26 = 21 mod 26 = 21=’V’


C2 = ‘H’ = 7 P2 = D(7) = (7-3) mod 26 = 4 mod 26 = 4 =’E’

2
C3 = ‘U’ = 20 P3 = D(20) = (20-3) mod 26 = 17 mod 26 = 17=’R’
C4 = ‘R’ = 17 P4 = D(17) = (17-3) mod 26 = 14 mod 26 = 14=’O’
C5 = ‘W’ = 16 P5 = D(16) = (16-3) mod 26 = 13 mod 26 = 13=’N’
C6 = ‘L’ = 11 P6 = D(11) = (11-3) mod 26 = 8 mod 26 = 8 =’I’
C7 = ‘F’ = 5 P7 = D(5) = (5-3) mod 26 = 2 mod 26 = 2 =’C’
C8 = ‘D’ = 3 P8 = D(3) = (3 -3) mod 26 = 0 mod 26 = 0 =’A’
dst….

Jika keseluruhan perhitungan diselesaikan, maka plainteksnya menjadi:


VERONICA LUSIANA
Secara umum, untuk pergeseran huruf sejauh k (k adalah kunci enkripsi dan dekripsi),
persamaan enkripsi adalah :

C=E(P)= (P+k) mod 26 …………………………………………….(3.3)


Sedangkan persamaan dekripsi adalah:
P=D(C)=(C- k ) mod 26 ……………………………………………(3.4)

Untuk mengenkripsi atau mendekripsi pesan yang disusun oleh 256 karakter ASCII
maka persamaan (3.3) dan (3.4) dapat diperluas menjadi :

C=E(P) = (P+k) mod 256 …………………………………………….(3.5)


Sedangkan persamaan dekripsi adalah:
P=D(C)=(C- k ) mod 256 ……………………………………………(3.6)

Program sederhana dalam Bahasa Matlab di bawah ini untuk mengenkripsi dan
dekripsi pesan dengan Caesar Cipher

%program sederhana enkripsi dan dekripsi dengan caesar cipher


p=input('Isikan Pesan : ','s');
lp=length(p);
k=input('Isikan k : ');
mod_=input('Isikan Modulo: ');
p
3
%encryption
e_cc='';
for a=1:lp
if double(p(a))==32
e=' ';
else
r_mod=mod((double(p(a))-65 + k),mod_);
e=char(r_mod+65);
end
e_cc=[e_cc, e];
end
e_cc; encryption=e_cc

%decryption
d_cc='';
for a=1:lp
if e_cc(a)==' '
d=' ';
else
r_mod=mod((double(e_cc(a))-65 - k),mod_);
d=char(r_mod+65);
end
d_cc=[d_cc, d];
end
d_cc; decryption=d_cc

Kriptanalisis Terhadap Caesar Cipher


Algoritma Caesar cipher sangat mudah dipecahkan yaitu cukup dengan ciphertext-
only attack menggunakan metode exhaustive key search karena jumlah kuncinya
yang sangat sedikit ( hanya ada 26 kunci jika menggunakan alphabet 26 huruf).
Sehingga kriptanalisis terhadap cipherteks dilakukan dengan mencoba sebanayk 26
buah nilai k, kemudian cek apakah hasil dekripsi menyatakan suatu kata yang
bermakna. Apabila ya , maka nilai k cocok mernyatakan kunci.

4
Contoh 3.2
Kripnalisis menemukan potongan cipherteks (cryptogram) YHURQLFD dan
asumsikan kriptanalis mengetahui bahwa algoritma kriptografi yang digunakan
adalah Caesar Cipher. Untuk memperoleh plainteks, lakukan dekripsi mulai dari
kunci yang terbesar 25 sampai terkecil 1, kemudian cek apakah dekripsi
menghasilkan pesan yang mempunyai makna ( lihat tabel 3.2).

Tabel 3.2 Contoh exhaustive ke search terhadap cipherteks YHURQLFD

Kunci (k) Pesan hasil Kunci (k) Pesan hasil Kunci (k) Pesan hasil
dekripsi dekripsi dekripsi
ciphering Ciphering ciphering

0 YHURQLFD 17 HQDAZUOM 8 QZMJIDXV

25 ZITSRMGE 16 IREBAVPN 7 RANKJEYW

24 AJWTSNHF 15 JSFCBWQO 6 SBOLKFZX

23 BKXUTOIG 14 KTGDCXRP 5 TCPMLGAY

22 CLYVUPJH 13 LUHEDYSQ 4 UDQNMHBZ

21 DMZWVQKI 12 MVIFEZTR 3 VERONICA

20 ENAXWRLJ 11 NWJGFAUS 2 WFSPOJDB

19 FOBYXSMK 10 OXKHGBVT 1 XGTQPKEC

18 GPCZYTNL 9 PYLIHCWU

Dari tabel 3.2 kata yang potensial menjadi plainteks adalah VERONICA dengan
menggunakan kunci k =3. Kunci ini digunakan untuk mendekripsi cipherteks lainnya.

5
Jenis Jenis Cipher Substitusi
Cipher Substitusi dapat dikelompokkan dalam 4 jenis yaitu :

1. Cipher Alfabet-Tunggal (monoalphabetic cipher)


Cipher Alfabet-Tunggal biasa disebut dengan cipher substitusi
sederhana(simple substitution cipher) dimana satu huruf plainteks diganti
dengan tepat satu huruf cipherteks sehingga merupakan fungsi satu ke satu.
Contoh cipher Alfabet –Tunggal adalah Caesar Cipher yang telah dibahas
diatas,

2. Cipher Alfabet-Majemuk (polyalphabetic cipher)


Cipher Alfabet-Majemuk ditemukan pertama kali oleh Leon Battista Alberti
pada tahun 1568. Metode ini dipergunakan oleh tentara AS selama perang
sipil Amerika. Cipher ini merupakan cipher substitusi ganda yang melibatkan
penggunaan kunci berbeda.

Sebagian besar cipher alphabet-majemuk adalah cipher substitusi periodic


yang didasarkan pada periode m. Misalkan plainteks P adalah:

P = p1p2…pmpm+1…p2m…
Maka cipherteks hasil enkripsi adalah
Ek (P) = f1(p1) f2(p2) … fm(pm) fm+1(pm+1)… f2m(p2m) ……………(3.7)
Pi adalah huruf-huruf dalam ciperteks dan fi adalah fungsi enkripsi. Untuk

m=1 ciphernya ekivalen dengan cipher alphabet-tunggal.

Contoh cipher substitusi periodik adalah Vigenere cipher ( Sub bab 3.4)

6
3. Cipher Substitusi Homofonik (homophonic substitution cipher)
Adalah cipher yang setiap huruf plainteks dapat memiliki lebih dari satu
kemungkinanunit cipherteks.Misal huruf E (paling sering muncul dalam
bahasa Inggris) dapat berkoresponden dengan AB, TQ, YT atau UX.
Sehingga fungsi cipheringnya memetakan satu ke banyak. Semua unit
cipherteks yang berkorespondensi dengan satu huruf plainteks itulah yang
dinamakan homofonik. Tujuan substitusi homofonik adalah untuk
menyembunyikan hubungan statistic antara plainteks dengan cipherteks
sehingga menyulitkan teknik analisis frekuensi.

Sebagai contoh sebuah teks tertentu dihitung frekuensi kemunculan huruf-


huruf di dalamnya. Kemudian dibuat diagram batang yang menggambarkan
kemunculan huruf-huruf di dalam teks tersebut, seperti yang ditunjukkan pada
Gambar 3.1.Huruf E yang paling sering muncul dalam teks tersebut (13%)
dapat dikodekan dengan 13 buah homofon (lihat tabel 3.3)

Contoh unit Plainteks KRIPTO dapat dienkripsi menjadi :


DI CE AX AZ CC DX
Hasil ukuran cipherteks dua kali ukuran plainteks.
14
12
10
8
6
4
2
0
Letter
Gambar 3.1 Frekuensi kemunculan huruf(relative pada sebuah teks Bahasa Inggris)

Sumber B1S03

7
Tabel 3.3

Huruf Pilihan Untuk Unit Cipherteks


Plainteks

A BU CP AV AH BT BS CQ

B AT

C DL BK AU

D BV DY DM AI

E DK CO AW BL AA CR BM CS AF AG BO BN BE

F BW CM CN

G DN BJ

H AS CL CK

I DJ BI AX CJ AB BP CU CT

J BX

K DI

L AR BH CI AJ

M DH BG AY

N BY DG DF CH AC BR DU DT

O DZ BF DX AK CG BQ DR

P BZ DE AZ

Q DD

R AQ DC DQ AL CE CF CV DS

8
S AP AN AO CD DW DV

T CB DB DP CC AD CY CW CX AE

U CA AM BA

V BB

W CZ

X BD

Y DO DA

Z BC

4. Cipher Substitusi Poligram (Polygram substitution cipher)

 Setiap kelompok huruf disubstitusi dengan kelompok huruf cipherteks. Jika


unit huruf plainteks atau cipherteks panjangnya 2 huruf maka disebut
digram, jika 3 huruf disebut trigram dan seterusnya. Keuntungan dari
cipher substitusi poligram ini adalah distribusi kemunculan poligraf
menjadi datar dengan demikian akan menyulitkan analisis frekuensi.
Contoh dari algoritma ini adalah Playfair cipher.
 Playfair cipher atau sering disebut Playfair Square merupakan teknik enkripsi
simetrik yang termasuk dalam sistem substitusi digraph. Playfair Cipher
Termasuk ke dalam polygram cipher. Playfair Cipher mengenkripsi pasangan
huruf (digram atau digraf), bukan huruf tunggal seperti pada cipher klasik /
tradisional lainnya. Tujuannya untuk membuat analisis frekuensi menjadi sulit
sebab frekuensi kemunculan huruf di dalam cipherteks akan menjadi datar.
 Kunci kriptografinya adalah 25 buah huruf yang disusun di dalam
bujursangkat 5x5 dengan menghilangkan huruf J dari abjad. Setiap elemen
bujursangkar berisi huruf yang berbeda satu sama lain.

9
Contoh kunci:

S T A N D

E R C H B

K F G I L

M O P Q U

V W X Y Z

Jumlah kemungkinan kunci : 25!=15.511.210.043.330.985.984.000.000

Susunan kunci di dalam bujursangkar diperluas dengan menambahkan kolom


keenam dan baris keenam

S T A N D S

E R C H B E

K F G I L K

M O P Q U M

V W X Y Z V
→ S T A N D

Baris ke-6 = baris ke-1 , sedangkan Kolom ke-6 = kolom ke-1

Pesan yang akan dienkripsi diatur terlebih dahulu sebagai berikut:


1. Ganti huruf J (bila ada) dengan huruf. 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
Contoh plainteks:

10
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

Algoritma enkripsi sebagai berikut:

5. Jika ada dua huruf terdapat pada baris kunci yang sama maka tiap
huruf diganti dengan huruf di kanannya (pada kunci yang sudah
diperluas).

6. Jika dua huruf terdapat pada kolom kunci yang sama maka tiap huruf
diganti dengan huruf di bawahnya (pada kunci yang sudah diperluas)

7. 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.

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

S T A N D S

E R C H B E

K F G I L K

M O P Q U M

V W X Y Z V

S T A N D

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

11
Enkripsi OD menjadi UT ditunjukkan pada bujursangkar di bawah ini:

titik sudut ke-4

S T A N D S S T A N D S

E R C H B E E R C H B E

K F G I L K K F G I L K

M O P Q U M M O P Q U M

V W X Y Z V V W X Y Z V

S T A N D S T A N D

 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 L N G E

S H P U B

C D F I K

M O Q R T

V W X Y Z

12
 Algoritma dekripsi kebalikan dari algoritma enkripsi. Caranya, untuk setiap
pasangan huruf cipherteks, tentukan titik sudut empat persegi panjang yang
terbentuk dari pasangan huruf tersebut. Dua huruf titik sudut menyatakan
pasangan huruf cipherteks, sedangkan dua huruf pada titik sudut yang lain
menyatakan pasangan huruf plainteksnya. Urutan huruf pada pasangan
plainteks tersebut mengikuti arah empat persegipanjang yang dibentuk oleh
pasangan huruf cipherteks.

3.2 Chiper Transposisi


Huruf-huruf dalam plainteks tetap sama hanya saja urutannya diubah. Atau
dengan kata lain melakukan transpose terhadap rangkaian karakter di dalam teks.
Sering disebut dengan permutasi atau pengacakan (scrambling) karena transpose
setiap karakter di dalam teks sama dengan mempermutasikan karakter-karakter
tersebut.

Contoh 3.3

Plainteks : INDONESIA TANAH AIR KITA

Untuk mengenkripsi pesan, plainteks ditulis secara horizontal dengan lebar kolom
tetap, misal selebar 3 karakter (kunci=3) :

IND

ONE

SIA

TAN

AHA

IRK

ITA

13
Maka cipherteksnya dibaca secara vertikal menjadi :
IOSTAIINNIAHRTDEANAKA.

Sedangkan untuk mendekripsinya kita membagi panjang alphabet dengan kunci


sehingga 21 dibagi dengan 3 sama dengan 7,

Kemudian menulis cipherteknya dalam baris-baris selebar 7 karaker menjadi :

IOSTAII

NNIAHRT

DEANAKA

Dengan membaca setiap kolom maka diperoleh pesan semula yaitu:

INDONESIA TANAH AIR KITA

Contoh 3.4

Plainteks: VERONICA LUSIANA DAN BUDI HARTONO

Plainteks diblok atas delapan karakter ( jika kurang dari delapan karakter maka
ditambahkanhuruf furuf semu, missal ABC). Kemudian pada tiap blok karakter
pertama dan karakter terakhir dipertukarkan, demikian juga karakter pertengahan
sedangkan karakter pada posisi lainnya tetap.

Proses enkripsi dari plainteks diatas dapat dilihat pada gambar 3.2 yang menghasilkan
cipherteks sebagai berikut :

SERNOICVDUSAINALANBDUIHACTOONABR

14
1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8
V E R O N I C A L U S I A N A D A N B U D 1 H A R T O N O A B C

A E R N O I C V D U S A I N A L A N B D U I H A C T O O N A B R
1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8

Gambar 3.2 Proses enkripsi

Sedangkan untuk proses dekripsi dengan cara yang sama yaitu cipherteks diblok 8
karakter, kemudian tiap-tiap blok, karakter pertama di tukar dengan karakter terakhir
demikian juga dengan karakter pertengahan. Proses dekripsi dapat dilihat pada
gambar 3.3 yang menghasilkan plainteks :

VERONICA LUSIANA DAN BUDI HARTONO

1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8
A E R N O I C V D U S A I N A L A N B D U I H A C T O O N A B R

V E R O N I C A L U S I A N A D A N B U D 1 H A R T O N O A B C
1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8

Gambar 3.3. Proses dekripsi

3.3 Analisis Frekuensi


Teknik Analisis Frekuensi sering digunakan di dalam kriptanalisis cipher
substitusi.Hal ini dikarenakan atasnsalah satu kelemahan dari cipher substitusi adalah
tidak bisa menyembunyikan hubungann statistik antara huruf-huruf plainteks dan
huruf cipherteks. Kriptanalis menggunakan table frekuensi kemunculan huruf-huruf
di dalam suatu bahasa(misal bahasa Inggris) lihat tabel 3.4.

15
Tabel 3.4

HURUF % HURUF %

A 8,2 N 6,7

B 1,5 O 7,5

C 2,8 P 1,9

D 4,2 Q 0,1

E 12,7 R 6,0

F 2,2 S 6,3

G 2,0 T 9,0

H 6,1 U 2,8

I 7,0 V 1,0

J 0,1 W 2,4

K 0,8 X 2,0

L 4,0 Y 0,1

M 2,4 Z 0,1

Teknik analisis frekuensi dilakukan dengan cara sebagai berikut:


1. Misalkan plainteks ditulis dengan bahasa Inggris
2. Asumsikan plainteks dienkripsi dengan cipher alphabet-tunggal
3. Hitung frekuensi kemunculan relative huruf-huruf di dalam cipherteks

4. Bandingkan hasil langkah 3 dengan table 3.4. Catatlah bahwa huruf yang
sering muncul dalam teks bahasa Inggris adalah huruf E. Sehingga huruf yang
sering muncul dalam cipherteks kemungkinan besar huruf E dalam
plainteksnya.

5. Langkah 4 diulangi untuk huruf dengan frekuensi terbanyak berikutnya


16
Contoh 3.5 diambila dari(Rinaldi Munir)
Terdapat cipherteks sebagai berikut(spasi tidak dihilangkan):
UZ QSO VUOHXMOPV GPOZPEVSG ZWSZ OPFPESX UDBMETSX AIZ
VUEPHZ HMDZSHZO WSFP APPD TSVP QUZW YMXUZUHSX
EPYEPOPDZSZUFPO MB ZWP FUPZ HMDJ UD TMOHMQ

Frekuensi kemunculan relative huruf-huruf di dalam cipherteks di atas adalah seperti


pada tabel (3.5) berikut ini:

HURUF % HURUF %

P 13,33 Q 2,50

Z 11,67 T 2,50

S 8,33 A 1,67

U 8,33 B 1,67

O 7,5 G 1,67

M 6,67 Y 1,67

H 5,83 I 0,83

D 5,00 J 0,83

E 5,00 C 0,00

V 4,17 K 0,00

X 4,17 L 0,00

F 3,33 N 0.00

W 3,33 R 0,00

17
Dari tabel 3.5, huruf yang sering muncul pada cipherteks adalah P dan Z, kemudian
bandingkan dengan tabel 3.4 maka kesimpulan sementara bahwa P berkoresponden
dengan E dan Z berkoresponden dengan T. Sehingga hasil pemetaan dua huruf yang
sering muncul adalah sebagai berikut(huruf plainteks dinyatakan dengan huruf kecil):

Iterasi pertama

UZ QSO VUOHXMOPV GPOZPEVSG ZWSZ OPFPESX UDBMETSX AIZ


t e e t e t t e e t
VUEPHZ HMDZSHZO WSFP APPD TSVP QUZW YMXUZUHSX
e t t t e ee e t t

EPYEPOPDZSZUFPO MB ZWP FUPZ HMDJ UD TMOHMQ


e e e t t e t e et

Dari hasil iterasi pertama diatas adalah :


a. kriptogram ZWSZ dipetakan menjadi t**t dan ZWP dipetakan menjadi t*e.
b. Kedua kriptogram tersebut huruf keduanya adalah W
c. Kita duga bahwa W adalah pemetaan dari H, sehingga kata yang mungkin
untuk ZWSZ dan ZWP adalah that dan the.
d. Jadi kesimpulan sementara bahwa:
P dipetakan e
Z dipetakan t
W dipetakan h
S dipetakan a
Sehingga dapat diperoleh iterasi kedua sebagai berikut :
Iterasi Kedua

UZ QSO VUOHXMOPV GPOZPEVSG ZWSZ OPFPESX UDBMETSX AIZ

18
t a e e t e a that e e a a t

VUEPHZ HMDZSHZO WSFP APPD TSVP QUZW YMXUZUHSX


e t t a t ha e ee a e th t a

EPYEPOPDZSZUFPO MB ZWP FUPZ HMDJ UD TMOHMQ


e e e t at e the et

Dari hasil iterasi kedua diatas adalah :


a. kriptogram WSFP dipetakan menjadi ha*e, kata yang mungkin: hate,hale,

haze, have

b. Kata yang paling cocok untuk menggantikan WSFP adalah have


c. Sehingga F diganti dengan v

d. Sehingga kriptogram EPYEPOPDZSZUFPO menjadi *e*e*e*tat*ve* dan


kata yang cocok adalah representatives

e. Jadi kesimpulan sementara bahwa:


E dipetakan r
Y dipetakan p
U dipetakan i
O dipetakan s
D dipetakan n
Apabila iterasi ini diteruskan maka akan diperoleh plainteks semula adalah :
it was disclosed yesterday that several informal but
direct contacts have been made with political
representatives of the viet cong in Moscow

19
3.4 Chiper Vigenere
Vigenere cipher sangat dikenal dan mudah untuk diimplementasikan, yaitu
menggunakan bujur sangkar Vigenere untuk melakukan enkripsi seperti pada gambar
3.4. Kolom paling kiri dari bujursangkar menyatakan huruf-huruf kunci sedangkan
baris paling atas menyatakan huruf-huruf plainteks. Setiap baris di dalam
bujursangkar menyatakan huruf-huruf cipherteks yang diperoleh dengan Caesar
Cipher, yang mana jumlah pergeseran huruf plainteks ditentukan nilai numerik huruf
kunci tersebut.

Bujursangkar Vigenere digunakan untuk memperoleh cipherteks dengan


menggunakan kunci yang sudah ditentukan. Jika panjang kunci lebih pendek daripada
panjang plainteks, maka kunci diulang penggunaannya.

Contoh 3.6

Plainteks : VERONICA LUSIANA

Kunci : budibudi budibud


Untuk huruf plainteks pertama V, tarik garis vertical dari huruf V dan tarik garis
mendatar dari huruf b, perpotongannya adalah kotak yang berisi huruf W ( lihat
gambar 3.5). Dengan cara yang sama, tarik garis vertical dari huruf E dan tarik garis
mendatar dari huruf u, perpotongannya adalah pada kotak yang berisi huruf Y (lihat
gambar 3.6)

Hasil enkripsi secara lengkap adalah sebagai berikut:

Plainteks : VERONICA LUSIANA

Kunci : budibudi budibud

Cipherteks : WYUWOCFI MOVQBHD

Hasil pengamatan dari proses enkripsi di atas adalah:

20
1. Huruf plainteks A dapat dienkripsi menjadi I atau B atau D

2. Huruf cipherteks W dapat merepresentasikan huruf plainteks V, O

Dari hasil pengamatan di atas merupakan karakteristik dari cipher alphabet-


majemuk. Sehingga dengan menggunakan Vigenere Cipher dapat mencegah
huruf-huruf di dalam cipherteks yang mempunyai pola tertentu yang sama
sebagaimana yang diperlihatkan pada cipher sucstitusi sederhana.

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

22
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 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 B C D E F G H I J K L M N O P O R S T U V W X Y Z A
c 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 3.5 Enkripsi huruf V dengan kunci b

Secara matematis proses enkripsi Vegenere Cipher (‘A’= 0, ‘B’ =1…’Z’=25) adalah:

Ci = (pi+kr) mod 26 …………………………………………………..(3.8)


23
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 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 B C D E F G H I J K L M N O P O R S T U V W X Y Z A
c 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 3.7 Enkripsi huruf E dengan kunci u

24
Proses dekripsi pada Vigenere Cipher dengan cara yang berkebalikan yaitu menarik
garis mendatar dari huruf kunci sampai kr huruf cipherteks yang dituju, lalu dari
huruf cipherteks tarik garis vertikal ke atas sampai ke huruf plainteks.

Secara matematis proses dekripsi dinyatakan dengan persamaan:

Pi = (ci-kr) mod 26………………………………………………………(3.9)

3.6 Chiper One Time Pad


One Time Pad merupakan algoritma kriptografi yang sempurna aman dan
tidak dapat dipecahkan. OTP ditemukan pada tahun 1917 oleh Major Joseph
Mauborgne dan AT&T’s Gilbert Vernam. (Bruce Schneir,1996)) One Time pad
(pad=kertas bloknot) adalah kertas yang berisi deretan karakter-karakter kunci yang
berisi huruf-huruf yabg tersusun acak.Satu pad hanya digunakan sekali (one time)
saja untuk mengenkripsi pesan, kemudian pad yang telah digunakan dihancurkan
supaya tidak dipakai kembali untuk mengenkripsi pesan yang lain.

Proses enkripsi One Time Pad sama persis dengan Vigenere Cipher yaitu
menggunakan persamaan (3.8) dan proses dekripsi menggunakan persamaan (3.9).
Akan tetapi kunci yang digunakan panjangnya sama dengan panjang plainteks.

Contoh 3.7

Diketahui : Plainteks : ONETIMEPAD

Kunci : TBFRGFARFM

Cipherteks diperoleh dengan menggunakan proses enkripsi persamaan (3.8) sebagai


berikut”

( O + T ) mod 26 = (14+19) mod 26 = 33 mod 26 = 7 = H

( N + B) mod 26 = (13+1) mod 26 = 14 mod 26 = 14= O

25
Jika perhitungan di atas dilanjutkan maka akan menghasilkan cipherteks :
HOJKOREGHP.

Sedangkan untuk memperoleh plainteks kembali dengan menggunakan proses


dekripsi persamaan (3.9) sebagai berikut:

(H-T) mod 26 = ( 7-19) mod 26 = -12 mod 26 = 14 = O

(O-B) mod 26 = (14-1) mod 26 = 13 mos 26 = 13 = N

Jika perhitungan di atas dilanjutkan maka akan menghasilkan plainteks :


ONETIMEPAD

Meskipun OTP merupakan cipher yang sempurna aman, akan tetapi jarang digunakan
secara universal hal ini disebabkan karena alasan dari segi kepraktisan yaitu (Rinaldi
Munir) :

1. Karena panjang kunci harus sama dengan panjang plainteks maka OTP hanya
cocok untuk plainteks berukuran kecil. Semakin besar ukuran plainteks maka
semakin besar pula ukukuran kunci yang digunakan. Pada aplikasi kriptografi
untuk mengenkripsikan data tersimapn, timbul masalah dalam penyimpanan
kunci. Selain itu pad aaplikasi kriptografi untuk komunikasi pesan, timbul
masalah dalam pendistribusian kunci.

2. Karena kunci dibangkitkan secara acak maka tidak mungkin pengirim dan
penerima membangkitkan kunci yang sama secara simultan. Jadi salah
seorang dari mereka harus membangkitkan kunci kemudian mengirimkannya
ke pihak lain.

26
LATIHAN SOAL

1. Tentukan cipherteks dari plainteks : UNIVERSITAS STIKUBANK


SEMARANG dengan menggunakan Substitusi Caesar Cipher dengan kunci =
4

2. Tentukan cipherteks dari plainteks (nama lengkap masing-masing


mahasiswa) dengan menggunakan Chiper Transposisi dengan kunci = 4.

3. Buatlah proses enkripsi dan dekripsi plainteks berikut ini dengan


menggunakan Cipher Vigenere (kunci bebas) :

Plainteks : Semarang Kota Tercintaku

27

Anda mungkin juga menyukai