SlideShare a Scribd company logo
Algoritma Kriptografi Klasik 
(bag 1) 
IF5054 Kriptografi 
Rinaldi Munir/IF5054 Kriptografi 1
Pendahuluan 
 Algoritma kriptografi klasik berbasis karakter 
 Menggunakan pena dan kertas saja, belum ada komputer 
 Termasuk ke dalam kriptografi kunci-simetri 
 Tiga alasan mempelajari algoritma klasik: 
1. Memahami konsep dasar kriptografi. 
2. Dasar algoritma kriptografi modern. 
3. Memahami kelemahan sistem cipher. 
Rinaldi Munir/IF5054 Kriptografi 2
Algoritma kriptografi klasik: 
1. Cipher Substitusi (Substitution Ciphers) 
2.Cipher Transposisi (Transposition Ciphers) 
Rinaldi Munir/IF5054 Kriptografi 3
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 
Rinaldi Munir/IF5054 Kriptografi 4 
 Contoh: 
Plainteks: AWASI ASTERIX DAN TEMANNYA OBELIX 
Cipherteks: DZDVL DVWHULA GDQ WHPDQQBA REHOLA
 Dalam praktek, cipherteks dikelompokkan ke dalam 
kelompok n-huruf, misalnya kelompok 4-huruf: 
DZDV LDVW HULA GDQW HPDQ QBAR EHOL A 
 Atau membuang semua spasi: 
DZDVLDVWHULAGDQWHPDQQBAREHOLA 
 Tujuannya agar kriptanalisis menjadi lebih sulit 
Rinaldi Munir/IF5054 Kriptografi 5
Caesar wheel 
Rinaldi Munir/IF5054 Kriptografi 6
 Misalkan A = 0, B = 1, …, Z = 25, maka 
secara matematis caesar cipher dirumuskan 
sebagai berikut: 
Enkripsi: ci = E(pi) = (pi + 3) mod 26 
Dekripsi: pi = D(ci) = (ci – 3) mod 26 
Rinaldi Munir/IF5054 Kriptografi 7
 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 
Rinaldi Munir/IF5054 Kriptografi 8
/* Program enkripsi file dengan Caesar cipher */ 
#include <stdio.h> 
main(int argc, char *argv[]) 
{ 
FILE *Fin, *Fout; 
char p, c; 
int k; 
Fin = fopen(argv[1], "rb"); 
if (Fin == NULL) 
printf("Kesalahan dalam membuka %s sebagai berkas masukan/n", argv[1]); 
Fout = fopen(argv[2], "wb"); 
printf("nEnkripsi %s menjadi %s ...n", argv[1], argv[2]); 
printf("n"); 
printf("k : "); 
scanf("%d", &k); 
while ((p = getc(Fin)) != EOF) 
{ 
c = (p + k) % 256; 
putc(c, Fout); 
} 
Rinaldi Munir/IF5054 Kriptografi 9 
fclose(Fin); 
fclose(Fout); 
}
/* Program dekripsi file dengan Caesar cipher */ 
Rinaldi Munir/IF5054 Kriptografi 10 
#include <stdio.h> 
main(int argc, char *argv[]) 
{ 
FILE *Fin, *Fout; 
char p, c; 
int n, i, k; 
Fin = fopen(argv[1], "rb"); 
if (Fin == NULL) 
printf("Kesalahan dalam membuka %s sebagai berkas masukan/n", argv[1]); 
Fout = fopen(argv[2], "wb"); 
printf("nDekripsi %s menjadi %s ...n", argv[1], argv[2]); 
printf("n"); 
printf("k : "); 
scanf("%d", &k); 
while ((c = getc(Fin)) != EOF) 
{ 
p = (c - k) % 256; 
putc(p, Fout); 
} 
fclose(Fin); 
fclose(Fout); 
}
Kelemahan: 
Caesar cipher mudah dipecahkan dengan 
exhaustive key search karena jumlah 
kuncinya sangat sedikit (hanya ada 26 
kunci). 
Rinaldi Munir/IF5054 Kriptografi 11
Contoh: kriptogram XMZVH 
Tabel 1. Contoh exhaustive key search terhadap cipherteks XMZVH 
Rinaldi Munir/IF5054 Kriptografi 12 
Kunci (k) 
ciphering 
‘Pesan’ hasil 
dekripsi 
Kunci (k) 
ciphering 
‘Pesan’ hasil 
dekripsi 
Kunci (k) 
ciphering 
‘Pesan’ hasil 
dekripsi 
0 
25 
24 
23 
22 
21 
20 
19 
18 
XMZVH 
YNAWI 
ZOBXJ 
APCYK 
BQDZL 
CREAM 
DSFBN 
ETGCO 
FUHDP 
17 
16 
15 
14 
13 
12 
11 
10 
9 
GVIEQ 
HWJFR 
IXKGS 
JYLHT 
KZMIU 
LANJV 
MBOKW 
NCPLX 
ODQMY 
8 
7 
6 
5 
4 
3 
2 
1 
PERNZ 
QFSOA 
RGTPB 
SHUQC 
TIVRD 
UJWSE 
VKXTF 
WLYUG 
Plainteks yang potensial adalah CREAM dengan k = 21. 
Kunci ini digunakan untuk mendekripsikan cipherteks lainnya.
PHHW PH DIWHU WKH WRJD SDUWB 
KEY 
1 oggv og chvgt vjg vqic rctva 
2 nffu nf bgufs uif uphb qbsuz 
3 meet me after the toga party 
4 Ldds ld zesdq sgd snfz ozqsx 
5 kccr kc ydrcp rfc rmey nyprw 
6 … 
21 ummb um inbmz bpm bwoi xizbg 
22 tlla tl hmaly aol avnh whyaf 
23 skkz sk glzkx znk zumg vgxze 
24 rjjy rj fkyjw ymj ytlf ufwyd 
25 qiix qi ejxiv xli xske tevxc 
Rinaldi Munir/IF5054 Kriptografi 13
Contoh: Kriptogram HSPPW menghasilkan dua 
kemungkinan kunci yang potensial, yaitu k = 
4 menghasilkan pesan DOLLS dan k = 11 
menghasilkan WHEEL. 
Jika kasusnya demikian, maka lakukan 
dekripsi terhadap potongan cipherteks lain 
tetapi cukup menggunakan k = 4 dan k = 11 
agar dapat disimpulkan kunci yang benar. 
Rinaldi Munir/IF5054 Kriptografi 14
 Di dalam sistem operasi Unix, ROT13 
adalah fungsi menggunakan Caesar cipher 
dengan pergeseran k = 13 
Rinaldi Munir/IF5054 Kriptografi 15
 Contoh: ROT13(ROTATE) = EBGNGR 
 Nama “ROT13” berasal dari net.jokes 
(hhtp://groups.google.com/group/net.jokes) (tahun 1980) 
 ROT13 biasanya digunakan di dalam forum online untuk 
menyandikan jawaban teka-teki, kuis, canda, dsb 
 Enkripsi arsip dua kali dengan ROT13 menghasilkan 
Rinaldi Munir/IF5054 Kriptografi 16 
pesan semula: 
P = ROT13(ROT13(P)) 
sebab ROT13(ROT13(x)) = ROT26(x) = x 
 Jadi dekripsi cukup dilakukan dengan mengenkripsi 
cipherteks kembali dengan ROT13

More Related Content

What's hot

TEKNIK ENKRIPSI DAN DEKRIPSI HILL CIPHER
TEKNIK ENKRIPSI DAN DEKRIPSI HILL CIPHERTEKNIK ENKRIPSI DAN DEKRIPSI HILL CIPHER
TEKNIK ENKRIPSI DAN DEKRIPSI HILL CIPHER
Rivalri Kristianto Hondro
 
Analisis Algoritma - Pengantar Kompleksitas Algoritma
Analisis Algoritma - Pengantar Kompleksitas AlgoritmaAnalisis Algoritma - Pengantar Kompleksitas Algoritma
Analisis Algoritma - Pengantar Kompleksitas Algoritma
Adam Mukharil Bachtiar
 
Perkuliahan 01 Teknik kompilasi
Perkuliahan 01 Teknik kompilasiPerkuliahan 01 Teknik kompilasi
Perkuliahan 01 Teknik kompilasi
Rakhmi Khalida, M.M.S.I
 
Kriptografi - Kriptanalisis
Kriptografi - KriptanalisisKriptografi - Kriptanalisis
Kriptografi - Kriptanalisis
KuliahKita
 
Caesar cipher adalah algoritma cipher
Caesar cipher adalah algoritma cipherCaesar cipher adalah algoritma cipher
Caesar cipher adalah algoritma cipher
HelmaKurniasari
 
Penerapan komputer dalam bidang industri
Penerapan komputer dalam bidang industriPenerapan komputer dalam bidang industri
Penerapan komputer dalam bidang industriBella Angriani
 
5 Macam Metode Dasar Kriptografi
5 Macam Metode Dasar Kriptografi5 Macam Metode Dasar Kriptografi
5 Macam Metode Dasar KriptografiRoziq Bahtiar
 
4.landasan matematika untuk kriptografi xx
4.landasan matematika untuk kriptografi xx4.landasan matematika untuk kriptografi xx
4.landasan matematika untuk kriptografi xx
Universitas Bina Darma Palembang
 
Kriptografi - Algoritma Kriptografi Modern
Kriptografi - Algoritma Kriptografi ModernKriptografi - Algoritma Kriptografi Modern
Kriptografi - Algoritma Kriptografi Modern
KuliahKita
 
Insertion sort
Insertion sortInsertion sort
Insertion sort
Irwan Anwar
 
Perkuliahan 1 organisasi dan arsitektur komputer
Perkuliahan 1   organisasi dan arsitektur komputerPerkuliahan 1   organisasi dan arsitektur komputer
Perkuliahan 1 organisasi dan arsitektur komputer
Rakhmi Khalida, M.M.S.I
 
Teknik kompilasi dalam bahasa pemograman c
Teknik kompilasi dalam bahasa pemograman cTeknik kompilasi dalam bahasa pemograman c
Teknik kompilasi dalam bahasa pemograman c
adhifatra agussalim
 
Pengujian Perangkat Lunak
Pengujian Perangkat LunakPengujian Perangkat Lunak
Pengujian Perangkat Lunak
Adam Mukharil Bachtiar
 
Penanganan Insiden Forensik
Penanganan Insiden ForensikPenanganan Insiden Forensik
Penanganan Insiden Forensik
Yanizar R
 
Defensive Programming
Defensive ProgrammingDefensive Programming
Defensive Programming
Freddy Munandar
 
Kriptografi - Serangan Terhadap Kriptografi
Kriptografi - Serangan Terhadap KriptografiKriptografi - Serangan Terhadap Kriptografi
Kriptografi - Serangan Terhadap Kriptografi
KuliahKita
 
makalah cryptography
makalah cryptographymakalah cryptography
makalah cryptography
Renwarin
 
ppt teknik presentasi
ppt teknik presentasippt teknik presentasi
ppt teknik presentasi
yuliyanti sobarudin
 
Database minimarket-Garnis Q
Database minimarket-Garnis QDatabase minimarket-Garnis Q
Database minimarket-Garnis Q
G Nis
 
Kriptografi
KriptografiKriptografi
Kriptografi
WhulandDhari Taslim
 

What's hot (20)

TEKNIK ENKRIPSI DAN DEKRIPSI HILL CIPHER
TEKNIK ENKRIPSI DAN DEKRIPSI HILL CIPHERTEKNIK ENKRIPSI DAN DEKRIPSI HILL CIPHER
TEKNIK ENKRIPSI DAN DEKRIPSI HILL CIPHER
 
Analisis Algoritma - Pengantar Kompleksitas Algoritma
Analisis Algoritma - Pengantar Kompleksitas AlgoritmaAnalisis Algoritma - Pengantar Kompleksitas Algoritma
Analisis Algoritma - Pengantar Kompleksitas Algoritma
 
Perkuliahan 01 Teknik kompilasi
Perkuliahan 01 Teknik kompilasiPerkuliahan 01 Teknik kompilasi
Perkuliahan 01 Teknik kompilasi
 
Kriptografi - Kriptanalisis
Kriptografi - KriptanalisisKriptografi - Kriptanalisis
Kriptografi - Kriptanalisis
 
Caesar cipher adalah algoritma cipher
Caesar cipher adalah algoritma cipherCaesar cipher adalah algoritma cipher
Caesar cipher adalah algoritma cipher
 
Penerapan komputer dalam bidang industri
Penerapan komputer dalam bidang industriPenerapan komputer dalam bidang industri
Penerapan komputer dalam bidang industri
 
5 Macam Metode Dasar Kriptografi
5 Macam Metode Dasar Kriptografi5 Macam Metode Dasar Kriptografi
5 Macam Metode Dasar Kriptografi
 
4.landasan matematika untuk kriptografi xx
4.landasan matematika untuk kriptografi xx4.landasan matematika untuk kriptografi xx
4.landasan matematika untuk kriptografi xx
 
Kriptografi - Algoritma Kriptografi Modern
Kriptografi - Algoritma Kriptografi ModernKriptografi - Algoritma Kriptografi Modern
Kriptografi - Algoritma Kriptografi Modern
 
Insertion sort
Insertion sortInsertion sort
Insertion sort
 
Perkuliahan 1 organisasi dan arsitektur komputer
Perkuliahan 1   organisasi dan arsitektur komputerPerkuliahan 1   organisasi dan arsitektur komputer
Perkuliahan 1 organisasi dan arsitektur komputer
 
Teknik kompilasi dalam bahasa pemograman c
Teknik kompilasi dalam bahasa pemograman cTeknik kompilasi dalam bahasa pemograman c
Teknik kompilasi dalam bahasa pemograman c
 
Pengujian Perangkat Lunak
Pengujian Perangkat LunakPengujian Perangkat Lunak
Pengujian Perangkat Lunak
 
Penanganan Insiden Forensik
Penanganan Insiden ForensikPenanganan Insiden Forensik
Penanganan Insiden Forensik
 
Defensive Programming
Defensive ProgrammingDefensive Programming
Defensive Programming
 
Kriptografi - Serangan Terhadap Kriptografi
Kriptografi - Serangan Terhadap KriptografiKriptografi - Serangan Terhadap Kriptografi
Kriptografi - Serangan Terhadap Kriptografi
 
makalah cryptography
makalah cryptographymakalah cryptography
makalah cryptography
 
ppt teknik presentasi
ppt teknik presentasippt teknik presentasi
ppt teknik presentasi
 
Database minimarket-Garnis Q
Database minimarket-Garnis QDatabase minimarket-Garnis Q
Database minimarket-Garnis Q
 
Kriptografi
KriptografiKriptografi
Kriptografi
 

Similar to 5. algoritma kriptografi klasik (bag 1)xx

Algoritma Klasik
Algoritma KlasikAlgoritma Klasik
Algoritma Klasik
rindaaulutamii
 
Kriptografi Klasik belajar kriptografi mudah
Kriptografi Klasik belajar kriptografi mudahKriptografi Klasik belajar kriptografi mudah
Kriptografi Klasik belajar kriptografi mudah
mrdonnie
 
03 01 algoritmakriptografiklasik
03 01 algoritmakriptografiklasik03 01 algoritmakriptografiklasik
03 01 algoritmakriptografiklasik
wiwarizkinovian
 
Materi 1_Algoritma Kriptografi Klasik_Ahmad Zacky Taufiqul Hakim.pptx
Materi 1_Algoritma Kriptografi Klasik_Ahmad Zacky Taufiqul Hakim.pptxMateri 1_Algoritma Kriptografi Klasik_Ahmad Zacky Taufiqul Hakim.pptx
Materi 1_Algoritma Kriptografi Klasik_Ahmad Zacky Taufiqul Hakim.pptx
DrabyoHeoryus
 
KR02.pptx
KR02.pptxKR02.pptx
KR02.pptx
Novianty23
 
12.algoritma kriptografi modern (bagian 1)xx
12.algoritma kriptografi modern (bagian 1)xx12.algoritma kriptografi modern (bagian 1)xx
12.algoritma kriptografi modern (bagian 1)xx
Universitas Bina Darma Palembang
 
BahanAjar Kripto gscfsdfgerffsdfdsa.pptx
BahanAjar Kripto gscfsdfgerffsdfdsa.pptxBahanAjar Kripto gscfsdfgerffsdfdsa.pptx
BahanAjar Kripto gscfsdfgerffsdfdsa.pptx
murniatimurni9
 
13.algoritma kriptografi modern (bagian 2)
13.algoritma kriptografi modern (bagian 2)13.algoritma kriptografi modern (bagian 2)
13.algoritma kriptografi modern (bagian 2)
Universitas Bina Darma Palembang
 
Kriptografi
KriptografiKriptografi
Kriptografi
Hendriyawan Achmad
 
Enkripsi
EnkripsiEnkripsi
Enkripsi
Sigit Purnomo
 
Uas k eamanan komputer
Uas   k eamanan komputerUas   k eamanan komputer
Uas k eamanan komputer
Achmad Fauzyrivai
 
10.steganografi xx
10.steganografi xx10.steganografi xx
Pengantar kriptografi
Pengantar kriptografiPengantar kriptografi
Pengantar kriptografi
Soleh Hidayat
 
Sistem Kriptografi Klasik Berbasis Substitusi
Sistem Kriptografi Klasik Berbasis SubstitusiSistem Kriptografi Klasik Berbasis Substitusi
Sistem Kriptografi Klasik Berbasis SubstitusiFanny Oktaviarti
 
Presentasi Kriptografi dan LCG (Sistem Pembangkit Bilangan Acak)
Presentasi Kriptografi dan LCG (Sistem Pembangkit Bilangan Acak)Presentasi Kriptografi dan LCG (Sistem Pembangkit Bilangan Acak)
Presentasi Kriptografi dan LCG (Sistem Pembangkit Bilangan Acak)
Made Aditya
 
15.algoritma kriptografi modern (bagian 4)
15.algoritma kriptografi modern (bagian 4)15.algoritma kriptografi modern (bagian 4)
15.algoritma kriptografi modern (bagian 4)
Universitas Bina Darma Palembang
 
Kriptografi - Prinsip Perancangan Cipher Blok
Kriptografi - Prinsip Perancangan Cipher BlokKriptografi - Prinsip Perancangan Cipher Blok
Kriptografi - Prinsip Perancangan Cipher Blok
KuliahKita
 
Jurnal RC4,RC5,RC6
Jurnal RC4,RC5,RC6Jurnal RC4,RC5,RC6
Jurnal RC4,RC5,RC6
cuzein
 
Unbreakable cipher
Unbreakable cipherUnbreakable cipher

Similar to 5. algoritma kriptografi klasik (bag 1)xx (20)

Algoritma Klasik
Algoritma KlasikAlgoritma Klasik
Algoritma Klasik
 
Kriptografi Klasik belajar kriptografi mudah
Kriptografi Klasik belajar kriptografi mudahKriptografi Klasik belajar kriptografi mudah
Kriptografi Klasik belajar kriptografi mudah
 
03 01 algoritmakriptografiklasik
03 01 algoritmakriptografiklasik03 01 algoritmakriptografiklasik
03 01 algoritmakriptografiklasik
 
Materi 1_Algoritma Kriptografi Klasik_Ahmad Zacky Taufiqul Hakim.pptx
Materi 1_Algoritma Kriptografi Klasik_Ahmad Zacky Taufiqul Hakim.pptxMateri 1_Algoritma Kriptografi Klasik_Ahmad Zacky Taufiqul Hakim.pptx
Materi 1_Algoritma Kriptografi Klasik_Ahmad Zacky Taufiqul Hakim.pptx
 
KR02.pptx
KR02.pptxKR02.pptx
KR02.pptx
 
Kripto Klasik
Kripto KlasikKripto Klasik
Kripto Klasik
 
12.algoritma kriptografi modern (bagian 1)xx
12.algoritma kriptografi modern (bagian 1)xx12.algoritma kriptografi modern (bagian 1)xx
12.algoritma kriptografi modern (bagian 1)xx
 
BahanAjar Kripto gscfsdfgerffsdfdsa.pptx
BahanAjar Kripto gscfsdfgerffsdfdsa.pptxBahanAjar Kripto gscfsdfgerffsdfdsa.pptx
BahanAjar Kripto gscfsdfgerffsdfdsa.pptx
 
13.algoritma kriptografi modern (bagian 2)
13.algoritma kriptografi modern (bagian 2)13.algoritma kriptografi modern (bagian 2)
13.algoritma kriptografi modern (bagian 2)
 
Kriptografi
KriptografiKriptografi
Kriptografi
 
Enkripsi
EnkripsiEnkripsi
Enkripsi
 
Uas k eamanan komputer
Uas   k eamanan komputerUas   k eamanan komputer
Uas k eamanan komputer
 
10.steganografi xx
10.steganografi xx10.steganografi xx
10.steganografi xx
 
Pengantar kriptografi
Pengantar kriptografiPengantar kriptografi
Pengantar kriptografi
 
Sistem Kriptografi Klasik Berbasis Substitusi
Sistem Kriptografi Klasik Berbasis SubstitusiSistem Kriptografi Klasik Berbasis Substitusi
Sistem Kriptografi Klasik Berbasis Substitusi
 
Presentasi Kriptografi dan LCG (Sistem Pembangkit Bilangan Acak)
Presentasi Kriptografi dan LCG (Sistem Pembangkit Bilangan Acak)Presentasi Kriptografi dan LCG (Sistem Pembangkit Bilangan Acak)
Presentasi Kriptografi dan LCG (Sistem Pembangkit Bilangan Acak)
 
15.algoritma kriptografi modern (bagian 4)
15.algoritma kriptografi modern (bagian 4)15.algoritma kriptografi modern (bagian 4)
15.algoritma kriptografi modern (bagian 4)
 
Kriptografi - Prinsip Perancangan Cipher Blok
Kriptografi - Prinsip Perancangan Cipher BlokKriptografi - Prinsip Perancangan Cipher Blok
Kriptografi - Prinsip Perancangan Cipher Blok
 
Jurnal RC4,RC5,RC6
Jurnal RC4,RC5,RC6Jurnal RC4,RC5,RC6
Jurnal RC4,RC5,RC6
 
Unbreakable cipher
Unbreakable cipherUnbreakable cipher
Unbreakable cipher
 

More from Universitas Bina Darma Palembang

30448 pertemuan1
30448 pertemuan130448 pertemuan1
29510 pertemuan18(form method-get-post-dan-session(1))
29510 pertemuan18(form method-get-post-dan-session(1))29510 pertemuan18(form method-get-post-dan-session(1))
29510 pertemuan18(form method-get-post-dan-session(1))
Universitas Bina Darma Palembang
 
28501 pertemuan14(php)
28501 pertemuan14(php)28501 pertemuan14(php)
28501 pertemuan14(php)
Universitas Bina Darma Palembang
 
28500 pertemuan22(header dokumen html dgn tag title)
28500 pertemuan22(header dokumen html dgn tag title)28500 pertemuan22(header dokumen html dgn tag title)
28500 pertemuan22(header dokumen html dgn tag title)
Universitas Bina Darma Palembang
 
25437 pertemuan25(hitcounter)
25437 pertemuan25(hitcounter)25437 pertemuan25(hitcounter)
25437 pertemuan25(hitcounter)
Universitas Bina Darma Palembang
 
18759 pertemuan20(web html editor)
18759 pertemuan20(web html editor)18759 pertemuan20(web html editor)
18759 pertemuan20(web html editor)
Universitas Bina Darma Palembang
 
18040 pertemuan13(css)
18040 pertemuan13(css)18040 pertemuan13(css)
18040 pertemuan13(css)
Universitas Bina Darma Palembang
 
16406 pertemuan17(konsep basis-data-di-web)
16406 pertemuan17(konsep basis-data-di-web)16406 pertemuan17(konsep basis-data-di-web)
16406 pertemuan17(konsep basis-data-di-web)
Universitas Bina Darma Palembang
 
15294 pertemuan9(eksplorasi &defenisi masalah0
15294 pertemuan9(eksplorasi &defenisi masalah015294 pertemuan9(eksplorasi &defenisi masalah0
15294 pertemuan9(eksplorasi &defenisi masalah0
Universitas Bina Darma Palembang
 
12738 pertemuan 15(php lanjutan)
12738 pertemuan 15(php lanjutan)12738 pertemuan 15(php lanjutan)
12738 pertemuan 15(php lanjutan)
Universitas Bina Darma Palembang
 
6346 pertemuan21(web statis dengan struktur html)
6346 pertemuan21(web statis dengan struktur html)6346 pertemuan21(web statis dengan struktur html)
6346 pertemuan21(web statis dengan struktur html)
Universitas Bina Darma Palembang
 
5623 pertemuan11(html1)
5623 pertemuan11(html1)5623 pertemuan11(html1)
5623 pertemuan11(html1)
Universitas Bina Darma Palembang
 
4740 pertemuan8(komponen dalam web)
4740 pertemuan8(komponen dalam web)4740 pertemuan8(komponen dalam web)
4740 pertemuan8(komponen dalam web)
Universitas Bina Darma Palembang
 
4075 pertemuan10 (analisa kebutuhan)
4075 pertemuan10 (analisa kebutuhan)4075 pertemuan10 (analisa kebutuhan)
4075 pertemuan10 (analisa kebutuhan)
Universitas Bina Darma Palembang
 
2670 pertemuan12(html lanjut)
2670 pertemuan12(html lanjut)2670 pertemuan12(html lanjut)
2670 pertemuan12(html lanjut)
Universitas Bina Darma Palembang
 
2190 pertemuan24(polling)
2190 pertemuan24(polling)2190 pertemuan24(polling)
2190 pertemuan24(polling)
Universitas Bina Darma Palembang
 

More from Universitas Bina Darma Palembang (20)

30448 pertemuan1
30448 pertemuan130448 pertemuan1
30448 pertemuan1
 
29510 pertemuan18(form method-get-post-dan-session(1))
29510 pertemuan18(form method-get-post-dan-session(1))29510 pertemuan18(form method-get-post-dan-session(1))
29510 pertemuan18(form method-get-post-dan-session(1))
 
28501 pertemuan14(php)
28501 pertemuan14(php)28501 pertemuan14(php)
28501 pertemuan14(php)
 
28500 pertemuan22(header dokumen html dgn tag title)
28500 pertemuan22(header dokumen html dgn tag title)28500 pertemuan22(header dokumen html dgn tag title)
28500 pertemuan22(header dokumen html dgn tag title)
 
25437 pertemuan25(hitcounter)
25437 pertemuan25(hitcounter)25437 pertemuan25(hitcounter)
25437 pertemuan25(hitcounter)
 
23921 pertemuan 3
23921 pertemuan 323921 pertemuan 3
23921 pertemuan 3
 
19313 pertemuan6
19313 pertemuan619313 pertemuan6
19313 pertemuan6
 
18759 pertemuan20(web html editor)
18759 pertemuan20(web html editor)18759 pertemuan20(web html editor)
18759 pertemuan20(web html editor)
 
18040 pertemuan13(css)
18040 pertemuan13(css)18040 pertemuan13(css)
18040 pertemuan13(css)
 
17945 pertemuan5
17945 pertemuan517945 pertemuan5
17945 pertemuan5
 
16406 pertemuan17(konsep basis-data-di-web)
16406 pertemuan17(konsep basis-data-di-web)16406 pertemuan17(konsep basis-data-di-web)
16406 pertemuan17(konsep basis-data-di-web)
 
15294 pertemuan9(eksplorasi &defenisi masalah0
15294 pertemuan9(eksplorasi &defenisi masalah015294 pertemuan9(eksplorasi &defenisi masalah0
15294 pertemuan9(eksplorasi &defenisi masalah0
 
13926 pertemuan4
13926 pertemuan413926 pertemuan4
13926 pertemuan4
 
12738 pertemuan 15(php lanjutan)
12738 pertemuan 15(php lanjutan)12738 pertemuan 15(php lanjutan)
12738 pertemuan 15(php lanjutan)
 
6346 pertemuan21(web statis dengan struktur html)
6346 pertemuan21(web statis dengan struktur html)6346 pertemuan21(web statis dengan struktur html)
6346 pertemuan21(web statis dengan struktur html)
 
5623 pertemuan11(html1)
5623 pertemuan11(html1)5623 pertemuan11(html1)
5623 pertemuan11(html1)
 
4740 pertemuan8(komponen dalam web)
4740 pertemuan8(komponen dalam web)4740 pertemuan8(komponen dalam web)
4740 pertemuan8(komponen dalam web)
 
4075 pertemuan10 (analisa kebutuhan)
4075 pertemuan10 (analisa kebutuhan)4075 pertemuan10 (analisa kebutuhan)
4075 pertemuan10 (analisa kebutuhan)
 
2670 pertemuan12(html lanjut)
2670 pertemuan12(html lanjut)2670 pertemuan12(html lanjut)
2670 pertemuan12(html lanjut)
 
2190 pertemuan24(polling)
2190 pertemuan24(polling)2190 pertemuan24(polling)
2190 pertemuan24(polling)
 

5. algoritma kriptografi klasik (bag 1)xx

  • 1. Algoritma Kriptografi Klasik (bag 1) IF5054 Kriptografi Rinaldi Munir/IF5054 Kriptografi 1
  • 2. Pendahuluan  Algoritma kriptografi klasik berbasis karakter  Menggunakan pena dan kertas saja, belum ada komputer  Termasuk ke dalam kriptografi kunci-simetri  Tiga alasan mempelajari algoritma klasik: 1. Memahami konsep dasar kriptografi. 2. Dasar algoritma kriptografi modern. 3. Memahami kelemahan sistem cipher. Rinaldi Munir/IF5054 Kriptografi 2
  • 3. Algoritma kriptografi klasik: 1. Cipher Substitusi (Substitution Ciphers) 2.Cipher Transposisi (Transposition Ciphers) Rinaldi Munir/IF5054 Kriptografi 3
  • 4. 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 Rinaldi Munir/IF5054 Kriptografi 4  Contoh: Plainteks: AWASI ASTERIX DAN TEMANNYA OBELIX Cipherteks: DZDVL DVWHULA GDQ WHPDQQBA REHOLA
  • 5.  Dalam praktek, cipherteks dikelompokkan ke dalam kelompok n-huruf, misalnya kelompok 4-huruf: DZDV LDVW HULA GDQW HPDQ QBAR EHOL A  Atau membuang semua spasi: DZDVLDVWHULAGDQWHPDQQBAREHOLA  Tujuannya agar kriptanalisis menjadi lebih sulit Rinaldi Munir/IF5054 Kriptografi 5
  • 6. Caesar wheel Rinaldi Munir/IF5054 Kriptografi 6
  • 7.  Misalkan A = 0, B = 1, …, Z = 25, maka secara matematis caesar cipher dirumuskan sebagai berikut: Enkripsi: ci = E(pi) = (pi + 3) mod 26 Dekripsi: pi = D(ci) = (ci – 3) mod 26 Rinaldi Munir/IF5054 Kriptografi 7
  • 8.  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 Rinaldi Munir/IF5054 Kriptografi 8
  • 9. /* Program enkripsi file dengan Caesar cipher */ #include <stdio.h> main(int argc, char *argv[]) { FILE *Fin, *Fout; char p, c; int k; Fin = fopen(argv[1], "rb"); if (Fin == NULL) printf("Kesalahan dalam membuka %s sebagai berkas masukan/n", argv[1]); Fout = fopen(argv[2], "wb"); printf("nEnkripsi %s menjadi %s ...n", argv[1], argv[2]); printf("n"); printf("k : "); scanf("%d", &k); while ((p = getc(Fin)) != EOF) { c = (p + k) % 256; putc(c, Fout); } Rinaldi Munir/IF5054 Kriptografi 9 fclose(Fin); fclose(Fout); }
  • 10. /* Program dekripsi file dengan Caesar cipher */ Rinaldi Munir/IF5054 Kriptografi 10 #include <stdio.h> main(int argc, char *argv[]) { FILE *Fin, *Fout; char p, c; int n, i, k; Fin = fopen(argv[1], "rb"); if (Fin == NULL) printf("Kesalahan dalam membuka %s sebagai berkas masukan/n", argv[1]); Fout = fopen(argv[2], "wb"); printf("nDekripsi %s menjadi %s ...n", argv[1], argv[2]); printf("n"); printf("k : "); scanf("%d", &k); while ((c = getc(Fin)) != EOF) { p = (c - k) % 256; putc(p, Fout); } fclose(Fin); fclose(Fout); }
  • 11. Kelemahan: Caesar cipher mudah dipecahkan dengan exhaustive key search karena jumlah kuncinya sangat sedikit (hanya ada 26 kunci). Rinaldi Munir/IF5054 Kriptografi 11
  • 12. Contoh: kriptogram XMZVH Tabel 1. Contoh exhaustive key search terhadap cipherteks XMZVH Rinaldi Munir/IF5054 Kriptografi 12 Kunci (k) ciphering ‘Pesan’ hasil dekripsi Kunci (k) ciphering ‘Pesan’ hasil dekripsi Kunci (k) ciphering ‘Pesan’ hasil dekripsi 0 25 24 23 22 21 20 19 18 XMZVH YNAWI ZOBXJ APCYK BQDZL CREAM DSFBN ETGCO FUHDP 17 16 15 14 13 12 11 10 9 GVIEQ HWJFR IXKGS JYLHT KZMIU LANJV MBOKW NCPLX ODQMY 8 7 6 5 4 3 2 1 PERNZ QFSOA RGTPB SHUQC TIVRD UJWSE VKXTF WLYUG Plainteks yang potensial adalah CREAM dengan k = 21. Kunci ini digunakan untuk mendekripsikan cipherteks lainnya.
  • 13. PHHW PH DIWHU WKH WRJD SDUWB KEY 1 oggv og chvgt vjg vqic rctva 2 nffu nf bgufs uif uphb qbsuz 3 meet me after the toga party 4 Ldds ld zesdq sgd snfz ozqsx 5 kccr kc ydrcp rfc rmey nyprw 6 … 21 ummb um inbmz bpm bwoi xizbg 22 tlla tl hmaly aol avnh whyaf 23 skkz sk glzkx znk zumg vgxze 24 rjjy rj fkyjw ymj ytlf ufwyd 25 qiix qi ejxiv xli xske tevxc Rinaldi Munir/IF5054 Kriptografi 13
  • 14. Contoh: Kriptogram HSPPW menghasilkan dua kemungkinan kunci yang potensial, yaitu k = 4 menghasilkan pesan DOLLS dan k = 11 menghasilkan WHEEL. Jika kasusnya demikian, maka lakukan dekripsi terhadap potongan cipherteks lain tetapi cukup menggunakan k = 4 dan k = 11 agar dapat disimpulkan kunci yang benar. Rinaldi Munir/IF5054 Kriptografi 14
  • 15.  Di dalam sistem operasi Unix, ROT13 adalah fungsi menggunakan Caesar cipher dengan pergeseran k = 13 Rinaldi Munir/IF5054 Kriptografi 15
  • 16.  Contoh: ROT13(ROTATE) = EBGNGR  Nama “ROT13” berasal dari net.jokes (hhtp://groups.google.com/group/net.jokes) (tahun 1980)  ROT13 biasanya digunakan di dalam forum online untuk menyandikan jawaban teka-teki, kuis, canda, dsb  Enkripsi arsip dua kali dengan ROT13 menghasilkan Rinaldi Munir/IF5054 Kriptografi 16 pesan semula: P = ROT13(ROT13(P)) sebab ROT13(ROT13(x)) = ROT26(x) = x  Jadi dekripsi cukup dilakukan dengan mengenkripsi cipherteks kembali dengan ROT13