Kriptografi adalah ilmu dan seni untuk menjaga
keamanan pesan. Kriptografi menyediakan aspek kerahasiaan (menjaga isi pesan
dari siapapun yang tidak berhak mengakses), integritas data (menjamin pesan belum
pernah dimanipulasi selama pengiriman), otentikasi (identifikasi kebenaran pihak
yang berkomunikasi dan sumber pesan), dan nirpenyangkalan (mencegah pihak yang berkomunikasi
melakukan penyangkalan). Semua aspek tersebut sangat diperlukan dalam hal
keamanan data pada teknologi informasi. Mengingat aspek keamanan data merupakan
hal yang penting dalam pertukaran informasi, maka perkembangan teknologi
informasi juga berimbas pada meningkatnya kebutuhan atas algoritma dan teknik
kriptografi yang handal.
DES (Data Encryption Standard)
yang diumumkan oleh NIST (National Institute of Standards and
Technology) pada tahun 1972 sebagai standard algoritma kriptografi sudah dianggap
tidak aman lagi. Dengan menggunakan perangkat keras tertentu, kunci dari DES
dapat dipecahkan hanya dalam waktu yang relatif singkat. Oleh karena itu, pada tahun
1997 NIST mengumumkan adanya pemilihan standar baru sebagai pengganti DES yang
diberi nama AES (Advanced Encryption Standard).
Persyaratan yang ditentukan oleh NIST
dalam pemilihan algoritma standar enkripsi, sebagai pengganti standar DES adalah
sebagai berikut:
1.
Merupakan algoritma kriptografi simetri chipher blok.
2.
Seluruh rancangan algoritma harus publik (tidak dirahasiakan).
3.
Panjang kunci fleksibel, yaitu sebesar 128 bit, 192 bit dan 256 bit.
4.
Ukuran blok sebesar 128 bit.
5.
Algoritma memungkinkan untuk diimplementasikan baik sebagai perangkat lunak
maupun sebagai perangkat keras.
Ada lima algoritma yang ditetapkan
sebagai standar enkripsi yang dipilih oleh NIST, kelima algoritma tersebut
adalah:
1.
MARS, dari tim IBM.
2.
RC6, dari tim Laboratorium RSA.
3.
Rijndael, dari tim Vincent Rijmen dan Joan Daemen.
4.
Serpent, dari tim Ross Anderson, Eli Biham, dan Lars Knudsen.
5.
Twofish, dari tim Bruce Schneie.
2. Algoritma Kriptografi Simetri Cipher Blok
Algoritma kriptografi akan disebut
simetri apabila pasangan kunci untuk proses enkripsi dan dekripsinya sama.
Algoritma enkripsi simetri inipun dibagi lagi menjadi dua kelas, yaitu block-cipher
dan stream-cipher. Karena AES harus merupakan cipher blok, maka
cipher stream tidak akan dibahas pada makalah ini.
Pada algoritma kriptografi simetri cipher
blok, rangkaian bit-bit plainteks dibagi menjadi blok-blok bit dengan
panjang sama. Enkripsi dilakukan terhadap blok bit plainteks menggunakan
bit-bit kunci (yang ukurannya sama dengan blok plainteks). Algoritma enkripsi
menghasilkan blok cipherteks yang berukuran sama dengan blok plainteks.
Dekripsi dilakukan dengan cara yang serupa seperti enkripsi.
Skema enkripsi dan dekripsi dengan cipher
blok dapat dilihat pada Gambar 1. Fungsi E dan D dideskripsikan
sendiri oleh kriptografer.
Gambar 1 Skema
Enkripsi dan Dekripsi dengan Cipher Blok
1. Teknik Kriptografi yang Digunakan pada Chiper Blok
Algoritma
blok cipher menggabungkan beberapa teknik klasik dalam proses enkripsi. Teknik
kriptografi yang digunakan adalah:
a. Substitusi
Teknik
ini mengganti satu atau sekumpulan bit pada blok plainteks menjadi cipherteks
tanpa mengubah urutannya.
b. Transposisi atau Permutasi
Teknik
ini memindahkan posisi bit pada blok plainteks untuk ditempatkan pada
blok cipherteks berdasarkan aturan tertentu.
c. Ekspansi
Teknik
ini memperbanyak jumlah bit pada blok plainteks berdasarkan aturan tertentu,
biasanya dinyatakan dengan tabel.
d. Kompresi
Teknik
ini kebalikan dari ekspansi, di mana jumlah bit pada blok plainteks dikompresi
(diperkecil) berdasarkan aturan tertentu.
2. Mode Operasi Cipher Blok
Plainteks dibagi menjadi beberapa blok
dengan panjang tetap. Beberapa mode operasi dapat diterapkan untuk melakukan
enkripsi terhadap keseluruhan blok plainteks. Empat mode operasi yang lazim
diterapkan pada sistem
blok
cipher adalah:
a. Electronic
Code Book (ECB)
Pada mode ini, setiap blok plainteks Pi
dienkripsi secara individual dan independen menjadi blok cipherteks Ci.
Secara matematis, enkripsi dengan mode ECB dinyatakan sebagai Ci =
Ek(Pi) dan dekripsi sebagai Pi = Dk(Ci),
yang dalam hal ini, Pi dan Ci
masingmasing blok plainteks dan cipherteks ke-I Skema enkripsi
dengan mode ECB dapat dilihat dilihat pada Gambar 2.
Gambar 2 Skema Enkripsi dengan Mode ECB
b.
Cipher Block Chaining (CBC)
Mode ini menerapkan mekanisme umpan
balik (feedback) pada sebuah blok, yang dalam hal ini hasil enkripsi
blok sebelumnya diumpanbalikkan ke dalam enkripsi blok yang current.
Secara matematis, enkripsi dengan mode CBC dinyatakan sebagai Ci =
Ek(P1 ⊕ Ci−1) dan
dekripsi sebagai Pi = Dk(Ci) ⊕ Ci-1
Yang dalam hal ini, C0 = IV (initialization vector). IV
dapat diberikan oleh pengguna atau dibangkitkan secara acak oleh program.
Skema enkripsi dengan mode CBC dapat dilihat pada Gambar 3.
Gambar 3 Skema Enkripsi dengan Mode CBC



Tidak ada komentar:
Posting Komentar