Berdasarkan kunci yang digunakan untuk enkripsi dan dekripsi, kriptografi dapat dibedakan menjadi kriptografi kunci simetri Symmetric-key Cryptography
dan kriptografi kunci asimetri Asymmetric-key Cryptography. Proses enkripsi dan dekripsi dapat dilihat pada gambar 2.1. Rinaldi, 2006
Gambar 2.1 Proses Enkripsi dan Dekripsi
Cryptographic system atau cryptosystem adalah suatu fasilitas untuk
mengkonversikan plaintext ke ciphertext dan sebaliknya. Dalam sistem ini, parameter yang menetukan transformasi pencipheran tertentu di sebut suatu set
kunci. Proses enkripsi dan dekripsi diatur oleh satu atau beberapa kunci kriptografi. Secara umum, kunci-kuci yang digunakan untuk proses
pengenkripsian dan pendekripsian tidak perlu identik, tergantung pada sistem yang digunakan. Secara umum proses operasi enkripsi dan dekripsi dapat
diterangkan secara matematis sebagai berikut :
EK M = C Proses Enkripsi DK C = M Proses Dekripsi
Pada pesan M kita mengekripsikan menajadi pesan C dengan menggunakan kunci K, sedangkan pada proses dekripsi kita menggunakan kunci K dan melakukan
pada pesan C yang sudah di enkripsi dan menghasilkan pesan awal yaitu M.
2.3 Algoritma Kriptografi
2.3.1 Algoritma Simetrik symmetric algorithms Algoritma simetrik adalah algoritma kriptografi berdasarkan kuncinya dibedakan
menjadi dua yaitu algoritma aliran Stream Cipher dan algoritma blok Block Cipher
. Pada algoritma Stream Cipher, proses penyandiannya berorientasi pada satu bit atau satu byte data. Sedangkan pada algoritma blok, proses penyandiannya
berorientasi pada sekumpulan bit atau byte data. Contoh algoritma simetris yang
Universitas Sumatera Utara
terkenal adalah DES Data Encryption Standard Silviana, 2013. Proses algoritma simetrik dapat dilihat pada gambar 2.2.
Gambar 2.2 Proses Algoritma Simetrik
Algoritma ini menggunakan kunci yang sama untuk proses enkripsi dan dekripsi. Dalam system kriptografi kunci simetrik, kunci yang digunakan untuk
proses enkripsi dan dekripsi pada prinsipnya identik, tetapi satu buah kunci dapat diturunkan dari kunci yang lainnya. Kunci
– kunci ini harus dirahasiakan. Oleh sebab itu sistem ini sering disebut sebagai secret key cipher system.
2.3.2 Algoritma Asimetrik Asymmetric Algortihms Algortima kriptografi asimetrik adalah algoritma yang menggunakan kunci yang
berbeda untuk proses enkripsi dan dekripsi. Algoritma ini sering juga disebut algoritma kunci umum public key algorithm karena kunci untuk enkripsi dibuat
umum public key atau dapat di ketahui oleh setiap orang, tapi kunci dekripsi hanya di ketahui oleh orang yang berwenang mengetahui data yang disandikan
atau sering disebut kunci pribadi private key. Contoh algoritma terkenal menggunakan kunci asimetrik adalah ECC dan RSA. Proses algoritma asimetrik
dapat dilihat pada gambar 2.3. Syarat-syarat yang harus di penuhi oleh algoritma public-key yaitu :
1. Mudah secara komputasi bagi suatu pihak B untuk mengkrontuksi sepasang kunci asimetrik kunci publik KU, kunci pribadi KR.
2. Mudah secara komputasi bagi pengirim A, dengan memiliki kunci publik B dan data yang ingin dienkripsi, M, untuk menghasilkan ciphertext C.
3. Mudah secara komputasi bagi penerima B untuk mendekripsi ciphertext yang dihasilkan menggunakan kunci pribadinya untuk mengembalikan data asli.
4. Tidak bisa secara komputasi bagi pihak ketiga untuk memperoleh kunci pribadi KRb hanya dengan mengetahui kunci publik KUb.
Universitas Sumatera Utara
5. Tidak bisa secara komputasi bagi pihak ketiga untuk mengembalikan data asli M hanya dengan mengetahui kunci publik KUb dan ciphertext C.
6. Fungsi enkripsi dan dekripsi bisa diterapkan dengan urutan yang dibalik. Kegunaan persyaratan yang keenam adalah untuk penerapan tanda tangan
digital digital signature yang digunakan memecahkan isu otentikasi dalam masalah keamanan data.
Proses enkripsi publik key sederhana melibatkan empat tahap berikut : 1. Setiap user didalam jaringan membuat sepasang kunci untuk digunakan
sebagai kunci enkripsi dan dekripsi dari pesan yang akan diterima. 2. User kemudian mempublikasikan kunci enkripsinya dengan menempatkan
kunci publiknya ke tempat umum. Pasangan kunci yang lain tetap dijaga kerahasiaannya.
3. Jika user A ingin mengirimkan data ke user B, ia akan mengenkripsikan data dengan menggunakan kunci publik user B.
4. Pada saat user B mendekripsikan data dari user A, ia akan menggunakan kunci pribadinya sendiri. Tidak ada pihak lain yang bisa mendekripsikan data itu
karena hanya B sendiri yang mengetahui kunci pribadi B.
Gambar 2.3 Proses Algoritma Asimetrik
2.3.3 Perbandingan Algoritma Simetrik dengan Asimetrik Algoritma simetrik dan asimetrik sama-sama mempunyai kelebihan dan
kekurangan msaing-masing.
Kelebihan kriptografi kunci simetrik : 1. Algoritma kriptografi simetrik di rancang sehingga proses enkripsi dan dekripsi
membutuhkan waktu yang singkat.
Universitas Sumatera Utara
2. Ukuran kunci simetrik relatif pendek. Algoritma simetrik dapat digunakan membangkitkan bilangan acak.
3. Algoritma kunci simetrik dapat disusun untuk menghasilkan cipher yang lebih kuat.
4. Otentikasi pengiriman data langsung diketahui dari ciphertext yang diterima, karena kunci hanya diketahui pengirim dan penerima saja.
Kekurangan kriptografi kunci simetrik : 1. Kunci simetrik harus dikirim melalui saluran yang aman. Kedua entitas yang
berkomunikasi harus menjaga kerahasiaan kunci. 2. Kunci harus sering diubah, mungkin setiap komunikasi.
Kelebihan kriptografi kunci asimetrik : 1. Hanya kunci privat yang perlu dijaga kerahasiaannya oleh setiap entitas yang
berkomunikasi. Tidak ada kebutuhan untuk mengirim kunci privat sebagaimana kriptografi kunci simetrik.
2. Pasangan kunci public tidak perlu diubah, bahkan dalam periode waktu yang panjang.
3. Dapat digunakan dalam pengiriman kunci simetrik. 4. Beberapa algoritma kunci publik dapat digunakan untuk member tanda tangan
digital pada data.
Kekurangan kriptografi kunci asimetrik : 1. Enkripsi dan dekripsi data umumnya lebih lambat daripada sistem kriptografi
simetrik, karena enkripsi dan dekripsi menggunakan bilangan yang besar dan melibatkan operasi perpangkatan yang besar.
2. Ukuran ciphertext lebih besar dari plaintext. 3. Ukuran kunci relatif lebih besar daripada ukuran kunci simetrik.
4. Karena kunci publik diketahui secara luas dan dapat digunakan setiap orang maka ciphertext tidak memberikan informasi mengenai otentikasi pengirim.
Universitas Sumatera Utara
2.4 Serangan Pada Kriptografi