Viešojo rakto kriptografija

Viešojo rakto kriptografija – moderni kriptografijos forma, eliminuojanti simetrinės kriptografijos silpnybę – šifravimui skirto rakto perdavimą nesaugiais kanalais. Iki viešojo rakto kriptografijos atsiradimo, šifravimui skirtas raktas turėjo būti saugomas paslaptyje. Tokia kriptografijos forma turėjo vieną esminį trūkumą – šifruotų duomenų siuntėjas turėjo perduoti iššifravimui skirtą raktą duomenų gavėjui saugiu, tačiau ne kriptografiniu būdu, pavyzdžiui, telefonu arba susitikus akis į akį. Tokie rakto perdavimo būdai retai kada būna visiškai saugūs, tuo tarpu viešojo rakto kriptografija leidžia raktu keistis nesaugiais kanalais: šifravimui skirtas raktas nesuteikia galimybės dešifruoti duomenų.

Viešojo rakto kriptografijos algoritmai paprastai naudoja du raktus – privatų, kuris yra saugomas paslaptyje ir viešą, kuris yra viešinamas. Vienas iš viešojo rakto paviešinimo būdų yra naudoti raktų tarnybines stotis ().

Ši kriptografijos forma gali būti naudojama dviem tikslams – konfidencialios informacijos šifravimui, bei skaitmeniniams parašams:

 Informacijos šifravimas – būdas 'pakeisti' informaciją taip, kad neturint iššifravimui skirto rakto ji tampa beverte. Naudojant viešojo rakto kriptografiją, šifravimas vyksta taip: duomenų siuntėjas užšifruoja informaciją gavėjo viešuoju raktu, o gavėjas duomenis iššifruoja naudodamas savo privatųjį (slaptą) raktą.

 Skaitmeninis parašas – būdas kriptografiškai patvirtinti informacijos autentiškumą. Skaitmeninis parašas gaunamas užšifravus duomenis privačiu raktu. Taip užšifruotą informaciją galima iššifruoti tik visiems prieinamu viešuoju raktu, taigi gavėjas gali būti tikras, kad informacija gauta tikrai iš to asmens/organizacijos, kurios viešasis raktas paskelbtas, bei kad pranešimo turinys nebuvo pakeliui pakeistas.

Saugumas 
Viešojo rakto kriptografija yra reliatyviai saugi, tačiau nėra neįveikiama. Teoriškai, turint pakankamai resursų, ją galima įveikti naudojant nuoseklią paiešką (). Turint tai omenyje, kriptografiją reikia naudoti atidžiai, rinktis patikrintus algoritmus, susikurti didelius raktus (pavyzdžiui, 2048 bitų). Viešojo rakto kriptografiniai metodai saugumu atitinka kelis kartus trumpesnį raktą naudojančius simetrinio šifravimo algoritmus. Verta prisiminti, kad kriptografija yra saugi tiek, kiek yra saugi jos silpniausia grandis.

Trūkumai 
Palyginus su simetrinio rakto kriptografija, viešosios kriptografijos algoritmai paprastai būna lėtesni, o patys raktai ilgesni.

Algoritmai ir protokolai 
Paplitę viešojo rakto algoritmai:
 Diffie-Hellman
 RSA
 DSA

Protokolai, kurie naudoja viešojo rakto algoritmus:
 PGP / GPG / OpenPGP
 OpenSSH
 SSL

Nuorodos 
 Dažniausios kriptografijos klaidos

Matematika
Informatika
Kriptografija