Viešojo rakto kriptografija yra plačiai naudojama kriptografinė sistema, naudojama duomenims užšifruoti. Skirtingai nuo simetrinės kriptografijos, kuri naudoja vieną raktą, šio tipo sistema laikoma asimetrine, nes ji remiasi raktų pora. Viešojo rakto kriptografiją iš pradžių 1970-aisiais pristatė kriptografai Whitfieldas Diffie ir Martinas Hellmanas. Tokios kriptografijos sistemos dažnai vadinamos Diffie-Hellman šifravimu kaip būdas pagerbti išradėjus.
Kaip minėta, viešojo rakto kriptografija naudoja du raktus: vieną viešąjį ir kitą privatų. Abu raktai atlieka svarbų vaidmenį šifruojant pranešimą, kad apsaugotų jame esančius duomenis, ir iššifruojant pranešimą, kad jį būtų galima perskaityti. Šioje sistemoje viešasis raktas gali būti dalijamas ir platinamas laisvai. Tačiau privatus raktas turi būti laikomas paslaptyje ir jį turėtų pasiekti tik tas, kam priklauso raktas. Siekiant užtikrinti papildomą saugumo lygį, privatus raktas yra apsaugotas šifruota slaptafraze, kuri iš esmės yra stipresnė slaptažodžio, sukurto rakto savininko, versija.
Tiek viešasis, tiek privatusis raktas yra susiję matematiniu aspektu. Nepaisant šio ryšio, matematiškai neįmanoma privataus rakto gauti iš viešojo rakto. Taip yra todėl, kad jie atlieka du labai skirtingus tikslus. Viešasis raktas skirtas užšifruoti pradinį pranešimą, o privataus rakto paskirtis yra jį iššifruoti. Bet kokį pranešimą, užšifruotą viešuoju raktu, galima peržiūrėti tik iššifravus atitinkamu privačiu raktu.
Kaip veikia viešojo rakto kriptografija, galima panagrinėti kaip pavyzdį naudojant Johno ir Jane ryšį. Jonas sukuria raktų porą ir siunčia viešąjį raktą Jane, kuri naudoja raktą pranešimui užšifruoti, kad tik Jonas galėtų jį perskaityti. Gavęs pranešimą iš Džeinės, Džonas naudoja savo slaptąjį raktą, kad jį iššifruotų ir perskaitytų. Kadangi Jonas sukūrė raktų porą, jis yra privataus rakto savininkas, todėl vienintelis asmuo gali iššifruoti ir perskaityti pranešimą.
Kiekvienas, norintis naudoti viešojo rakto kriptografiją ryšiui apsaugoti, gali lengvai tai padaryti el. Pavyzdžiui, jei Jonas nori, kad jo ir Jane ryšys būtų privatus, jis prie pranešimo galėtų tiesiog pridėti viešąjį raktą, kurio jai reikia šifruoti. Kadangi raktu galima dalytis su bet kuo, jo siuntimas el. paštu nekelia pavojaus saugumui. Vienas dažnas programų, kuriose naudojama ši sistema, pavyzdys yra populiari šifravimo programinė įranga, žinoma kaip Pretty Good Privacy® (PGP®).