Algoritma Kriptografi
KRIPTOGRAFI
Modern
(Bagian 1) Substitusi
Blocking
Permutasi
Ekspansi
Pemampatan
1 2
1
Blocking Blocking (lanj.)
Sistem enkripsi terkadang membagi plaintext
menjadi blok-blok yang terdiri dari beberapa Jika plaintext adalah 5 TEKNIK
karakter yang kemudian dienkripsikan secara DASAR KRIPTOGRAFI maka hasil
independen.
chipertext ) . Jika menggunakan
Dengan menggunakan enkripsi blocking dipilih
jumlah lajur dan kolom untuk penulisan pesan. teknik blocking dengan 1blok berisi
Jumlah lajur atau kolom menjadi kunci bagi 4 karakter.
kriptografi dengan teknik ini.
Plaintext dituliskan secara vertikal ke bawah
berurutan pada lajur, dan dilanjutkan pada kolom
berikutnya sampai seluruhnya tertulis. Ciphertext-
nya adalah hasil pembacaan plaintext secara
horizontal berurutan sesuai dengan blok-nya.
5 6
Pendahuluan
BLOK 1 Beroperasi dalam mode bit (algoritma
BLOK 2 kriptografi klasik beroperasi dalam mode
BLOK 3 karakter)
BLOK 4
BLOK 5 kunci, plainteks, cipherteks, diproses
BLOK 6 dalam rangkaian bit
BLOK 7
Jadi ciphertext yang dihasilkan dengan teknik ini operasi bit xor paling banyak digunakan
adalah
"5K G KRTDRAEAIFKSPINAT IRO".
Plaintext dapat pula ditulis secara horizontal dan
ciphertextnya adalah hasil pembacaan secara
7 8
vertikal.
2
Permutasi Permutasi (Lanj.)
Salah satu teknik enkripsi yang terpenting Untuk contoh diatas, plaintext akan
adalah permutasi atau sering juga disebut
transposisi. Teknik ini memindahkan atau dibagi menjadi blok-blok yang terdiri
merotasikan karakter dengan aturan tertentu. dari 6 karakter, dengan aturan
Prinsipnya adalah berlawanan dengan teknik permutasi sebagai berikut :
substitusi.
Dalam teknik substitusi, karakter berada pada
posisi yang tetap tapi identitasnya yang diacak.
Pada teknik permutasi, identitas karakternya
tetap, namun posisinya yang diacak.
Sebelum dilakukan permutasi, umumnya
plaintext terlebih dahulu dibagi menjadi blok-
blok dengan panjang yang sama. 9 10
Permutasi (Lanj.)
Dengan menggunakan aturan Ciphertext yang dihasilkan dengan
diatas, maka proses enkripsi dengan teknik permutasi ini adalah "N ETK5
permutasi dari plaintext adalah SKD AIIRK RAATGORP FI".
sebagai berikut :
11 12
3
Ekspansi Ekspansi (Lanj.)
Suatu metode sederhana untuk mengacak Proses enkripsi dengan cara
pesan adalah dengan memelarkan pesan itu
ekspansi terhadap plaintext terjadi
dengan aturan tertentu.
sebagai berikut :
Salah satu contoh penggunaan teknik ini
adalah dengan meletakkan huruf konsonan
atau bilangan ganjil yang menjadi awal dari
suatu kata di akhir kata itu dan
menambahkan akhiran "an".
Bila suatu kata dimulai dengan huruf vokal
atau bilangan genap, ditambahkan akhiran
"i".
13 14
Pemampatan
Ciphertextnya adalah Mengurangi panjang pesan atau jumlah
bloknya adalah cara lain untuk
"5AN EKNIKTAN ASARDAN
menyembunyikan isi pesan. Contoh
RIPTOGRAFIKAN". sederhana ini menggunakan cara
menghilangkan setiap karakter ke-tiga
secara berurutan.
Karakter-karakter yang dihilangkan
disatukan kembali dan disusulkan sebagai
"lampiran" dari pesan utama, dengan
diawali oleh suatu karakter khusus,
15 dalam contoh ini digunakan "&". 16
4
Pemampatan (Lanj.)
Tetap menggunakan gagasan pada algoritma
Proses yang terjadi untuk plaintext klasik: substitusi dan transposisi, tetapi lebih
kita adalah : rumit (sangat sulit dipecahkan)
17 18
BERBAGAI SOLUSI
ENKRIPSI MODERN
Data Encryption Standard (DES) Advanced Encryption Standard
standar bagi USA Government (AES)
didukung ANSI dan IETF untuk menggantikan DES (launching
popular untuk metode secret key akhir 2001)
terdiri dari : 40-bit, 56-bit dan 3x56-bit menggunakan variable length block
19 20
5
Digital Certificate Server (DCS) IP Security (IPSec)
verifikasi untuk digital signature enkripsi public/private key
autentikasi user dirancang oleh CISCO System
6
Remote Access Dial-in User Service RSA Encryption
(RADIUS) dirancang oleh Rivest, Shamir,
multiple remote access device Adleman tahun 1977
menggunakan 1 database untuk standar de facto dalam enkripsi
authentication public/private key
didukung oleh 3com, CISCO, Ascend didukung oleh Microsoft, apple, novell,
tidak menggunakan encryption sun, lotus
mendukung proses authentication
multi platform
25 26
MD5
Secure Hash Algoritm (SHA) dirancang oleh Prof. Robert Rivest (RSA,
dirancang oleh National Institute of MIT) tahun 1991
Standard and Technology (NIST) USA. menghasilkan 128-bit digest.
bagian dari standar DSS(Decision cepat tapi kurang aman
Support System) USA dan bekerja
sama dengan DES untuk digital
Secure Shell (SSH)
signature. digunakan untuk client side
authentication antara 2 sistem
SHA-1 menyediakan 160-bit message
digest mendukung UNIX, windows, OS/2
Versi : SHA-256, SHA-384, SHA-512 melindungi telnet dan ftp (file transfer
7
Secure Socket Layer (SSL)
dirancang oleh Netscape
Security Token
menyediakan enkripsi RSA pada layes
aplikasi penyimpanan password dan
session dari model OSI.
data user di smart card
independen terhadap servise yang
digunakan. Simple Key Management for
melindungi system secure web e-
Internet Protocol
commerce seperti SSL bekerja pada level session
model OSI.
metode public/private key dan dapat
melakukan authentication menghasilkan key yang static, mudah
Rangkaian bit
Pesan (dalam bentuk rangkaian bit) dipecah Bila plainteks dibagi menjadi blok 3-bit:
menjadi beberapa blok
100 111 010 110
Contoh: Plainteks 100111010110
Bila dibagi menjadi blok 4-bit
maka setiap blok menyatakan 0 sampai 7:
1001 1101 0110
4 7 2 6
maka setiap blok menyatakan 0 sampai 15:
9 13 6
31 32
8
Representasi dalam
Heksadesimal
Padding bits: bit-bit tambahan jika ukuran Pada beberapa algoritma kriptografi, pesan
blok terakhir tidak mencukupi panjang blok dinyatakan dalam kode Hex:
0000 = 0 0001 = 1 0010 = 2 0011 = 3
Contoh: Plainteks 100111010110 0100 = 4 0101 = 5 0011 = 6 0111 = 7
1000 = 8 1011 = 9 1010 = A 1011 = B
Bila dibagi menjadi blok 5-bit:
1100 = C 1101 = D 1101 = E 1111 = F
10011 10101 00010
Contoh: plainteks 100111010110 dibagi
Padding bits mengakibatkan ukuran menjadi blok 4-bit:
plainteks hasil dekripsi lebih besar daripada 1001 1101 0110
ukuran plainteks semula. dalam notasi HEX adalah 9 D 6
33 34
Operasi XOR
Notasi:
Hukum-hukum yang terkait dengan operator
Operasi: XOR:
00=0 01=1 (i) a a = 0
10=1 11=0
(ii) a b = b a
(iii) a (b c) = (a b) c
Operasi XOR = penjumlahan modulo 2:
0 0 = 0 0 + 0 (mod 2) = 0
0 1 = 1 0 + 1 (mod 2) = 1
1 0 = 1 0 + 1 (mod 2) = 1
1 1 = 0 1 + 1 (mod 2) = 0
35 36
9
Operasi XOR Bitwise Algoritma Enkripsi dengan XOR
Jika dua rangkaian dioperasikan dengan XOR, maka Enkripsi: C = P K
operasinya dilakukan dengan meng-XOR-kan setiap bit yang
berkoresponden dari kedua rangkaian bit tersebut. Dekripsi: P = C K
37 38
Algoritma enkripsi XOR sederhana pada Program komersil yang berbasis DOS atau
prinsipnya sama seperti Vigenere cipher dengan Macintosh menggunakan algoritma XOR
penggunaan kunci yang berulang secara sederhana ini.
periodik.
Sayangnya, algoritma XOR sederhana tidak
Setiap bit plainteks di-XOR-kan dengan setiap aman karena cipherteksnya mudah dipecahkan.
bit kunci.
39 40
10