Kriptografi Asimetris adalah suatu algoritma dimana kunci enkripsi yang digunakan tidak sama dengan kunci dekripsi. Pada algoritma ini menggunakan dua kunci yakni kunci publik
(public key) dan kunci privat
(private key). Kunci publik disebarkan secara umum sedangkan kunci privat disimpan secara rahasia oleh si pengguna. Walau kunci publik telah diketahui namun akan sangat sukar mengetahui kunci privat yang digunakan.
Pada umumnya kunci publik
(public key) digunakan sebagai kunci enkripsi sementara kunci privat
(private key) digunakan sebagai kunci dekripsi.
Konsep Kriptografi Kunci-Publik (Kriptografi asymmetric)
Konsep kriptografi kunci-publik sederhana dan elegan, tetapi
mempunyai konsekuensi penggunaan yang hebat.
- Misalkan E adalah fungsi enkripsi dan D adalah fungsi dekripsi. Misalkan (e, d) adalah pasangan kunci untuk enkripsi dan dekripsi sedemikian sehingga:
Ed(
m) =
c dan
Dd(
c) =
m
untuk suatu plainteks
m dan cipherteks
c.
- Kedua persamaan ini menyiratkan bahwa dengan mengetahui e dan c, maka secara komputasi hampir tidak mungkin menemukan m. Asumsi lainnya, dengan mengetahui e, secara komputasi hampir tidak mungkin menurunkan d.
- Ee digambarkan sebagai fungsi pintu-kolong (trapdoor) satuarah dengan d adalah informasi trapdoor yang diperlukan untuk menghitung fungsi inversinya, D, yang dalam hal ini membuat proses dekripsi dapat dilakukan.
Konsep di atas menjadi penting bila kriptografi kunci-publik digunakan untuk mengamankan pertukaran pesan dari dua entitas yang berkomunikasi. Contoh:
Misalkan Alice berkomunikasi dengan Bob. Bob memilih
pasangan kunci (
e,
d). Bob mengirimkan kunci enkripsi
e (kunci publik) kepada Alice melalui sembarang saluran tetapi
tetap menjaga kerahasiaan kunci dekripsinya,
d (kunci
privat).
Kemudian, Alice ingin mengirim pesan
m kepada Bob. Alice
mengenkripsikan pesan
m dengan menggunakan kunci public
Bob, untuk mendapatkan
c =
Ee(
m), lalu mengirimkan
c melalui saluran komunikasi (yang tidak perlu aman). Bob
mendekripsi cipherteks
c dengan menggunakan kunci
privatnya untuk memperoleh
m =
Dd(
c).
Sistem kriptografi kunci-publik juga cocok untuk kelompok
pengguna di lingkungan jaringan komputer (LAN/WAN).
Setiap pengguna jaringan mempunyai pasangan kunci public
dan kunci privat yang bersuaian. Kunci publik, karena tidak
rahasia, biasanya disimpan di dalam basisdata kunci yang
dapat diakses oleh pengguna lain. Jika ada pengguna yang
hendak berkirim pesan ke pengguna lainnya, maka ia ia perlu
mengetahui kunci publik penerima pesan melalui basisdata
kunci ini lalu menggunakannya untuk mengenkripsi pesan.
Hanya penerima pesan yang berhak yang dapat mendekripsi
pesan karena ia mempunyai kunci privat.
Dengan sistem kriptografi kunci-publik, tidak diperlukan
pengiriman kunci privat melalui saluran komunikasi khusus
sebagaimana pada sistem kriptografi simetri.
Meskipun kunci publik diumumkan ke setiap orang di dalam
kelompok, namun kunci publik perlu dilindungi agar
otentikasinya terjamin (misalnya tidak diubah oleh orang
lain).
Kelebihan dan kekurangan Kriptografi asimetris
Kelebihan :
- Masalah keamanan pada distribusi kunci dapat lebih baik
- Masalah manajemen kunci yang lebih baik karena jumlah kunci yang lebih sedikit.
- Hanya kunci privat yang perlu dijaga kerahasiaannya oleh setiap entitas yang berkomuniaksi (tetapi, otentikasi kunci publik tetap harus terjamin). Tidak ada kebutuhan mengirim kunci kunci privat sebagaimana pada system simetri.
- Pasangan kunci publik/kunci privat tidak perlu diubah, bahkan dalam periode waktu yang panjang.
- Dapat digunakan untuk mengamankan pengiriman kunci simetri.
- Beberapa algoritma kunci-publik dapat digunakan untuk memberi tanda tangan digital pada pesan (akan dijelaskan pada materi kuliah selanjutnya)
Kelemahan :
- Enkripsi dan dekripsi data umumnya lebih lambat daripada sistem simetri, karena enkripsi dan dekripsi menggunakan bilangan yang besar dan melibatkan operasi perpangkatan yang besar.
- Ukuran cipherteks lebih besar daripada plainteks (bisa dua sampai empat kali ukuran plainteks).
- Ukuran kunci relatif lebih besar daripada ukuran kunci simetri.
- Karena kunci publik diketahui secara luas dan dapat digunakan setiap orang, maka cipherteks tidak memberikan informasi mengenai otentikasi pengirim.
- Tidak ada algoritma kunci-publik yang terbukti aman (sama seperti block cipher). Kebanyakan aalgoriam mendasakan keamanannya pada sulitnya memecahkan persoalan-persoalan aritmetik (pemfaktoran, logaritmik, dsb) yang menjadi dasar pembangkitan kunci.