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 (angl. key servers). Š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.