(CTI 312)
MODUL 7
BLOCK AND CHIPER
DISUSUN OLEH
IR. NIZIRWAN ANWAR, M.T
Kriptografi simetrik
CIPHER SYMETRIC
Block chiper terdapat dua algoritma yang berpasangan, agar satu sama lain
mengenkripsikan,E, dan yang lainya untuk dekripsi,D.Kedua algoritma
menerima dua input: blok input ukuran n bit dan kunci ukuran k bit; dan
keduanya menghasilkan blok keluaran n-bit. Algoritma dekripsi D
didefinisikan sebagai fungsi terbalik dari enkripsi, yaitu, D = E, cipher blok
ditentukan oleh fungsi enkripsi yang mengambil sebagai input kunci K
Namun, Block Cipher sangat mudah dianalisis karena blok – blok yang
dienkripsi saling independen dan kuncinya sama, maka hal ini
memudahkan kriptanalis untuk mengetahui kunci yang digunakan. Contoh
block chiper dengan pendekatan substitusi
Plainteks a b c d e f g face
>> 1 g a b c d e f → egbd
>> 2 f g a b c d e → dfae
>> 3 e f g a b c d → cegd
Cipherteks
>> 4 d e f g a b c → bdfc
>> 5 c d e f g a b → aceb
>> 6 b c d e f g a → gbda
Pada Block Cipher dikenal lima mode operasi, yaitu Electronic Code Book
(ECB), Cipher Block Chaining (CBC), Cipher Feedback (CFB), Output
Feedback (OFB), dan Counter.
Output Feed Back OFB Yi = F(Y i −1 , Key); Y 0 = F(IV, Key) Plaintext XOR Y i
Metode standar dari Block Cipher, yaitu masing – masing blok plainteks
dienkripsi dengan kunci yang sama secara independen. Kelemahan utama
dari metode ini adalah mudahnya pendeteksian, terutama jika ada blok –
blok data yang sama dan dienkripsi dengan kunci yang sama maka akan
menghasilkan cipherteks yang sama pula. Hal inilah yang menyebabkan
mengapa disebut Electronic Code Book,karena seolah kita dapat
mengetahui dan membuat sebuah kamus atau ensiklopedi dari plainteks
dan cipherteks dengan kunci yang sama.
Seperti OFB, mode penghitung mengubah sandi blok menjadi sandi aliran.
Ini menghasilkan blok keystream berikutnya dengan mengenkripsi nilai
berturut-turut dari "penghitung". Penghitung dapat berupa fungsi apa pun
yang menghasilkan urutan yang dijamin tidak akan berulang untuk waktu
yang lama, meskipun penghitung kenaikan per satu sebenarnya adalah
yang paling sederhana dan paling populer. Penggunaan fungsi masukan
deterministik sederhana dulu kontroversial; kritikus berpendapat bahwa
"dengan sengaja mengekspos sebuah cryptosystem ke input sistematis
yang diketahui merupakan risiko yang tidak perlu." Namun, saat ini mode
CTR diterima secara luas dan masalah apa pun dianggap sebagai
kelemahan dari block cipher yang mendasarinya, yang diharapkan aman
terlepas dari bias sistemik dalam masukannya. Bersama dengan CBC,
mode CTR adalah salah satu dari dua mode block cipher yang
direkomendasikan oleh Niels Ferguson dan Bruce Schneier. Mode CTR
diperkenalkan oleh Whitfield Diffie dan Martin Hellman pada 1979. Pada
mode CTR memiliki karakteristik yang mirip dengan OFB, tetapi juga
memungkinkan properti akses acak selama dekripsi. Mode CTR sangat
cocok untuk beroperasi pada mesin multi-prosesor di mana blok dapat
dienkripsi secara paralel. Selain itu, ia tidak mengalami masalah siklus
pendek yang dapat mempengaruhi OFB.
Sebagai contoh pada mode ECB dapat meninggalkan pola data plaintext di
ciphertext dapat dilihat ketika mode ECB digunakan untuk mengenkripsi
gambar bitmap yang menggunakan area warna seragam yang luas.
Meskipun warna setiap piksel dienkripsi, keseluruhan gambar mungkin
masih terlihat, karena pola piksel berwarna identik dalam aslinya tetap
dalam versi terenkripsi.
Block #1 Block #1
Plaintext Ciphertext
6bc1bee22e409f96e93d7e117393172a 3ad77bb40d7a3660a89ecaf32466ef97
Ciphertext Plaintext
3ad77bb40d7a3660a89ecaf32466ef97 6bc1bee22e409f96e93d7e117393172a
Block #2 Block #2
Plaintext Ciphertext
ae2d8a571e03ac9c9eb76fac45af8e51 f5d3d58503b9699de785895a96fdbaaf
Ciphertext Plaintext
f5d3d58503b9699de785895a96fdbaaf ae2d8a571e03ac9c9eb76fac45af8e51
Block #3 Block #3
Plaintext Ciphertext
30c81c46a35ce411e5fbc1191a0a52ef 43b1cd7f598ece23881b00e3ed030688
Ciphertext Plaintext
43b1cd7f598ece23881b00e3ed030688 30c81c46a35ce411e5fbc1191a0a52ef
Block #4 Block #4
Plaintext Ciphertext
f69f2445df4f9b17ad2b417be66c3710 7b0c785e27e8ad3f8223207104725dd4
Ciphertext Plaintext
7b0c785e27e8ad3f8223207104725dd4 f69f2445df4f9b17ad2b417be66c3710
IV 000102030405060708090a0b0c0d0e0f IV 000102030405060708090a0b0c0d0e0f
Block #1 Block #1
Plaintext Ciphertext
6bc1bee22e409f96e93d7e117393172a 7649abac8119b246cee98e9b12e9197d
Ciphertext Plaintext
7649abac8119b246cee98e9b12e9197d 6bc1bee22e409f96e93d7e117393172a
Block #2 Block #2
Plaintext Ciphertext
ae2d8a571e03ac9c9eb76fac45af8e51 5086cb9b507219ee95db113a917678b2
Ciphertext Plaintext
5086cb9b507219ee95db113a917678b2 ae2d8a571e03ac9c9eb76fac45af8e51
Block #3 Block #3
Plaintext Ciphertext
30c81c46a35ce411e5fbc1191a0a52ef 73bed6b8e3c1743b7116e69e22229516
Ciphertext Plaintext
73bed6b8e3c1743b7116e69e22229516 30c81c46a35ce411e5fbc1191a0a52ef
Block #4 Block #4
Plaintext Ciphertext
f69f2445df4f9b17ad2b417be66c3710 3ff1caa1681fac09120eca307586e1a7
Ciphertext Plaintext
3ff1caa1681fac09120eca307586e1a7 f69f2445df4f9b17ad2b417be66c3710
IV 000102030405060708090a0b0c0d0e0f IV 000102030405060708090a0b0c0d0e0f
Plaintext Ciphertext
6bc1bee22e409f96e93d7e117393172a 3b3fd92eb72dad20333449f8e83cfb4a
Ciphertext Plaintext
3b3fd92eb72dad20333449f8e83cfb4a 6bc1bee22e409f96e93d7e117393172a
Segment #2 Segment #2
Plaintext Ciphertext
ae2d8a571e03ac9c9eb76fac45af8e51 c8a64537a0b3a93fcde3cdad9f1ce58b
Ciphertext Plaintext
c8a64537a0b3a93fcde3cdad9f1ce58b ae2d8a571e03ac9c9eb76fac45af8e51
Segment #3 Segment #3
Plaintext Ciphertext
30c81c46a35ce411e5fbc1191a0a52ef 26751f67a3cbb140b1808cf187a4f4df
Ciphertext Plaintext
26751f67a3cbb140b1808cf187a4f4df 30c81c46a35ce411e5fbc1191a0a52ef
Segment #4 Segment #4
Plaintext Ciphertext
f69f2445df4f9b17ad2b417be66c3710 c04b05357c5d1c0eeac4c66f9ff7f2e6
Ciphertext Plaintext
c04b05357c5d1c0eeac4c66f9ff7f2e6 f69f2445df4f9b17ad2b417be66c3710
IV 000102030405060708090a0b0c0d0e0f IV 000102030405060708090a0b0c0d0e0f
Block #1 Block #1
Plaintext Ciphertext
6bc1bee22e409f96e93d7e117393172a 3b3fd92eb72dad20333449f8e83cfb4a
Ciphertext Plaintext
3b3fd92eb72dad20333449f8e83cfb4a 6bc1bee22e409f96e93d7e117393172a
Block #2 Block #2
Plaintext Ciphertext
ae2d8a571e03ac9c9eb76fac45af8e51 7789508d16918f03f53c52dac54ed825
Ciphertext Plaintext
7789508d16918f03f53c52dac54ed825 ae2d8a571e03ac9c9eb76fac45af8e51
Block #3 Block #3
Plaintext Ciphertext
30c81c46a35ce411e5fbc1191a0a52ef 9740051e9c5fecf64344f7a82260edcc
Ciphertext Plaintext
9740051e9c5fecf64344f7a82260edcc 30c81c46a35ce411e5fbc1191a0a52ef
Block #4 Block #4
Plaintext Ciphertext
f69f2445df4f9b17ad2b417be66c3710 304c6528f659c77866a510d9c1d6ae5e
Ciphertext Plaintext
304c6528f659c77866a510d9c1d6ae5e f69f2445df4f9b17ad2b417be66c3710
Block #1 Block #1
Ciphertext Plaintext
874d6191b620e3261bef6864990db6ce 6bc1bee22e409f96e93d7e117393172a
Block #2 Block #2
Plaintext Ciphertext
ae2d8a571e03ac9c9eb76fac45af8e51 9806f66b7970fdff8617187bb9fffdff
Ciphertext Plaintext
9806f66b7970fdff8617187bb9fffdff ae2d8a571e03ac9c9eb76fac45af8e51
Block #3 Block #3
Plaintext Ciphertext
30c81c46a35ce411e5fbc1191a0a52ef 5ae4df3edbd5d35e5b4f09020db03eab
Ciphertext Plaintext
5ae4df3edbd5d35e5b4f09020db03eab 30c81c46a35ce411e5fbc1191a0a52ef
Block #4 Block #4
Plaintext Ciphertext
f69f2445df4f9b17ad2b417be66c3710 1e031dda2fbe03d1792170a0f3009cee
Ciphertext Plaintext
1e031dda2fbe03d1792170a0f3009cee f69f2445df4f9b17ad2b417be66c3710