Kriptografi

Algoritme kunci publik paling sering didasari pada teori masalah kompleksitas komputasional, sering dengan [[teori bilangan]]. Sebagai contoh, kekuatan RSA berhubungan dengan masalah [[faktorisasi integer]], sedangkan Diffie-Hellman dan DSA berhubungan dengan masalah [[logaritma diskrit]]. Baru-baru saja, "kriptografi kurva eliptis" telah ditemukan, sistem di mana keamanan yang didasari pada masalah teoretis bilangan yang melibatkan kurva eliptis. Dikarenakan kesulitan masalah pokok, kebanyakan algoritme kunci-publik melibatkan operasi seperti eksponensial dan perkalian aritmetika modular, di mana teknik ini secara komputasional lebih "mahal" ketimbang teknik yang digunakan pada banyak chiper blok, khususnya dengan ukuran kunci yang dibutuhkan. Hasilnya, kriptosistem kunci-publik seringnya merupakan "kriptosistem hybrid", yang merupakan algoritme enkripsi kunci-simetris berkualitas tinggi digunakan untuk pesan itu sendiri, sedang kunci simetris yang relevan dikirimkan dengan pesan, namun dienkripsikan menggunakan algoritme kunci publik. Hampir sama, skema tanda tangan hybrid sering digunakan, di mana fungsi hash kriptogfari dihitung secara komputer, dan hanya hash hasil yang ditanda tangani secara digital.