Algoritma kriptografi dibagi menjadi tiga bagian berdasarkan kunci yang dipakainya :
1. Algoritma Simetri
Algoritma ini sering disebut dengan algoritma klasik karena memakai kunci yang sama untuk kegiatan enkripsi maupun dekripsi. Algoritma ini sudah ada sejak lebih dari 4000 tahun yang lalu. Bila mengirim pesan dengan menggunakan algoritma ini, si penerima pesan harus diberitahu kunci dari pesan tersebut agar bisa mendekripsikan pesan yang terkirim. Keamanan dari pesan yang menggunakan algoritma ini tergantung pada kunci. Jika kunci tersebut diketahui oleh orang lain maka orang tersebut akan dapat melakukan enkripsi dan dekripsi terhadap pesan. Algoritma yang memakai kunci simetri di antaranya adalah :
- Data Encryption Standard (DES),
- RC2, RC4, RC5, RC 6,
- International Data Encryption Algorithm (IDEA),
- Advanced Encryption Standard (AES),
- On Time Pad (OTP),
- A5, dan lain sebagainya.
2. Algoritma Asimetri
Algoritma asimetri sering juga disebut dengan algoritma kunci public, dengan arti kata kunci yang digunakan melakukan enkripsi dan dekripsi berbeda. Pada algoritma asimetri kunci terbagi menjadi dua bagian, yaitu :
- Kunci umum (public key), kunci yang boleh semua orang tahu (dipublikasikan).
- Kunci rahasia (private key), kunci yang dirahasiakan (hanya boleh diketahui oleh satu orang).
Kunci-kunci tersebut berhubungan satu sama lain. Dengan kunci public orang dapat mengenkripsi pesan tetapi tidak bisa mendekripsikannya. Hanya orang yang memiliki kunci rahasia yang dapat mendekripsikan pesan tersebut. Algoritma asimetri bisa mengirimkan pesan dengan lebih aman daripada algoritma simetri.
Algoritma yang memakai kunci public di antaranya adalah :
Algoritma yang memakai kunci public di antaranya adalah :
- Digital Signature Algorithm (DSA),
- RSA,
- Diffle-Hellman (DH),
- Elliptic Curve Cryptography (ECC),
- Kriptografi Quantum, dan lain sebagainya.
3. Fungsi Hash
Fungsi Hash sering disebut dengan funsi satu arah (one-way function), message digest,fingerprint, fungsi kompresi dan message authentication code (MAC), merupakan suatu fungsi matematika yang mengambil masukan panjang variabel dan mengubahnya ke dalam urutan biner dengan panjang yang tetap. Fungsi Hash biasanya diperlukan bila ingin membuat sidik jari dari suatu pesan. Sidik jari pada pesan merupakan suatu tanda bahwa pesan tersebut benar-benar berasal dari orang-orang yang diinginkan.
Kriptografi Klasik
Kriptografi klasik merupakan suatu algoritma yang menggunakan satu kunci untuk mengamankan data. Teknik ini sudah digunakan beberapa abad yang lalu. Dua teknik dasar yang biasa digunakan pada algoritma jenis ini adalah sebagai berikut :
- Teknik subtitusi, penggantian setiap karakter teks-asli dengan karakter lain.
- Teknik transposisi (permutasi), dilakukan dengan menggunakan permutasi karakter. (Dony Arius, 2008)
Salah satu teknik enkripsi menggunakan kunci simetri adalah teknik subtitusi, yaitu mengganti setiap karakter Plaintext dengan karakter lain. Terdapat empat cara dalam menggunakan teknik subtitusi, yaitu :
- Monoalphabet, dimana setiap karakter Ciphertext mengganti satu macam karakterPlaintext tertentu.
- Polialphabet, dimana setiap karakter Ciphertext mengganti lebih dari satu macam karakter Plaintext.
- Monograf/unilateral, dimana satu enkripsi dilakukan terhadap satu karakterPlaintext.
- Poligraf/multilateral, dimana satu enkripsi dilakukan terhadap lebih dari satu karakterPlaintext. (Alferd J. Menezes, 1996)
Kriptografi modern merupakan suatu algoritma yang digunakan pada saat sekarang ini, yang mana kriptografi modern mempunyai kerumitan yang sangat komplek, karena dalam pengoperasiannya menggunakan komputer. (Doni Ariyus, 2006)
ARIYUS, Dony. 2008. Pengantar Ilmu Kriptografi Teori, Analisis, dan Implementasi. Yogyakarta: Penerbit Andi.
ALFERD J. MENEZES, Paul C. van Oorschot, Scott A. Vanstone. 1996. Handbook of Applied Cryptography. UK: CRC Press.
ARIYUS, Dony. 2006. Kriptografi: Keamanan Data dan Komunikasi. Yogyakarta: Graha Ilmu.