Prodi Informatika
Sekolah Teknik Elektro dan Informatika
2019
Data Non-
Confidentiality Authentication
Integrity Repudiation
4 7 2 6
1 0 0 1 1
1 1 0 0 1
1 1 0 1 0 0 1 0 1 1
0 1 0 1 0
Keystream Keystream
Generator Generator
Keystream ki Keystream ki
ci
pi Cipherteks
pi
Plainteks Enkripsi Dekripsi Plainteks
sebab:
ci = pi 0 = pi
Keystream Keystream
U U
Generator Generator
Keystream ki Keystream ki
ci
pi Cipherteks
pi
Plainteks Enkripsi Dekripsi Plainteks
Next-State
U Function
Output Function
Keystream ki
111101011001000
bn bn - 1 ... b4 b3 b2 b1
Fungsi umpan-balik
Register Geser
bn bn - 1 ... b4 b3 b2 b1
Bit Keluaran
...
b4 b3 b2 b1
Bit Keluaran
0 1 1 1 1
1 0 1 1 1 1
2 1 0 1 1 1
3 0 1 0 1 1
4 1 0 1 0 1
5 1 1 0 1 0
6 0 1 1 0 1
7 0 0 1 1 0
8 1 0 0 1 1
9 0 1 0 0 1
10 0 0 1 0 0
11 0 0 0 1 0
12 1 0 0 0 1
13 1 1 0 0 0
14 1 1 1 0 0
1. Known-plaintext attack
Kriptanalis mengetahui potongan P dan
C yang berkoresponden.
Hasil: K untuk potongan P tersebut,
karena
P C = P (P K)
= (P P) K
=0K
=K
Rinaldi M/IF4020 Kriptografi 35
Contoh 9.3:
P 01100101 (karakter ‘e’)
K 00110101 (karakter ‘5’)
P1 C1 = P1 (P1 K) = K
C: uhtr07hjLmkyR3j7Tkdhj38lkkldkYtr#)oknTkRgh
P : QT-TRNSFR US $10010,00 FRM ACCNT 123-67 TO
p1 p2 ... pn c1 c2 ... cn
c1 c2 ... cn p1 p2 ... pn
Enkripsi: Ci = EK(Pi)
Dekripsi: Pi = DK(Ci)
K E K E ... K E
K D K D ... K D
(b) Dekripsi
51
Contoh:
Plainteks: 10100010001110101001
Bagi plainteks menjadi blok-blok 4-bit:
1010 0010 0011 1010 1001
( dalam notasi HEX :A23A9)
EK(P) = (P K) << 1
Rinaldi M/IF4020 Kriptografi 52
Enkripsi:
1010 0010 0011 1010 1001
1011 1011 1011 1011 1011
adalah
0000 0100
0001 1001
0010 1010
… …
1111 1010
Blok-blok cipherteks:
C1, C2, C3, C4, C5, C6, C7, C8, C9, C10, C11,
C12, C13, C14, C15, C16
67
(b) Skema dekripsi mode CBC
Enkripsi blok pertama memerlukan blok semu
(C0) yang disebut IV (initialization vector).
10100010001110101001
1011
atau dalam notasi HEX adalah B. Sedangkan IV yang digunakan seluruhnya bit 0 (Jadi, C0 =
0000)
1011
atau dalam notasi HEX adalah B. Sedangkan IV yang digunakan seluruhnya bit 0 (Jadi, C0 =
0000)
Misalkan fungsi enkripsi E yang sederhana (tetapi lemah) adalah dengan meng-XOR-kan blok
plainteks Pi dengan K, kemudian geser secara wrapping bit-bit dari Pi K satu posisi ke kiri.
K E K D
ki ki
pi ci ci pi
(a) Enkripsi
79
(b) Dekripsi
Dari Gambar di atas dapat dilihat bahwa:
Ci = Pi Ek (Ci – 1 )
Pi = Ci Dk (Ci – 1 )
yang dalam hal ini, C0 = IV.
K E K D
ki ki
pi ci ci pi
Pi – 1 Pi Pi+1
Ek Ek
Ci – 1 Ci Ci+1
Enkripsi OFB
(b) Dekripsi 86
Prinsip-prinsip
Perancangan Cipher Blok
1. Prinsip Confusion dan Diffusion dari
Shannon.
2. Cipher berulang (iterated cipher)
3. Jaringan Feistel (Feistel Network)
4. Kotak-S (S-box)
i = 1, 2, …, n
E/D
Ci = f(Ci – 1, Ki)
Ri – 1 = Li
Li – 1 = Ri f(Ri – 1, Ki) = Ri f(Li, Ki)
12 1 10 15 9 2 6 8 0 13 3 4 14 7 5 11
10 15 4 2 7 12 9 5 6 1 13 14 0 11 3 8
9 14 15 5 2 8 12 3 7 0 4 10 1 13 11 6
4 3 2 12 9 5 15 10 11 14 1 7 6 0 8 13
b1b2b3b4b5b6