Vjeruje se da je riječ algoritam varijanta algorizma, koja se odnosi na arapsku numeraciju i potječe od prezimena arapskog matematičara po imenu Muhammad ibn-Musa al-Khwarizmi. U kriptografiji, algoritam je proces ili postupak koji, kada se slijedi, proizvodi određenu vrstu enkripcije i može se nazvati algoritamom šifriranja. Šifriranje poruka ključ je sigurnog prijenosa ili poruka na Internetu. Postoji niz različitih algoritama za šifriranje, uključujući Rijndael, MARS, RC6, Serpent i Twofish, koji su svi prijavljeni kao kandidati za AES (Advanced Encryption Standard), koji se koristi za sigurnu komunikaciju putem Interneta. RSA algoritam je još jedan algoritam za šifriranje, koji se koristi u drugom sustavu šifriranja koji se koristi na Internetu, posebice za e-poštu.
Ronald L. Rivest, Adi Shamir i Leonard M. Adleman, profesori na MIT-u, izumili su Rivest-Shamir-Adleman – popularno poznat kao RSA algoritam koristeći prvo slovo svakog od njihovih prezimena – 1977. godine. RSA algoritam se počeo koristiti u sustavu šifriranja javnog ključa, također poznatom kao ciptografija javnog ključa ili PKC. Sustavi za šifriranje mogu imati jedan ili dva ključa. PKC je asimetrični sustav šifriranja, što znači da ima dva ključa.
Iako je ranije poznata Američka agencija za nacionalnu sigurnost, kriptografiju s javnim ključem zasebno su izumili i objavili 1976. Whitfield Diffie iz Sun Microsystems® i Martin Hellman sa Sveučilišta Stanford. Shvatili su način da izbjegnu da pošiljatelj mora uključiti ključ za šifriranje uz poruku, kao što je potrebno u šifriranju simetričnog ključa. To je bio veliki napredak, jer slanje ključa s porukom povećava rizik od mogućeg presretanja i dešifriranja. U ožujku 2010. pojavila se tvrdnja da su računalni znanstvenici na Sveučilištu Michigan razbili RSA algoritam, ali je također istaknuto da metoda ovisi o neovlaštenom pristupu računalu, ne otkrivanju kako dešifrirati bilo koju poruku u bilo kojem trenutku. vrijeme s bilo kojeg mjesta na svijetu.
PKC sustav radi u nekoliko koraka. Prvo, računalo pošiljatelja traži od računala primatelja da dostavi svoj javni ključ. Ako odgovori, javni ključ primatelja — kreiran RSA algoritmom — koristi se za šifriranje poruke. Tada se poruka šalje, a kada računalo primatelja primi poruku, privatni ključ primatelja koristi se za dešifriranje poruke. Budući da postoje dva ključa, presretnuta poruka ili poruka koja je oteta je sigurna jer se ne može dešifrirati bez ključa.