Osnovni pojmi
Kriptologija je veda o tajnosti, šifriranju, zakrivanju sporočil (kriptografija) in o razkrivanju šifriranih podatkov (kriptoanaliza). Beseda prihaja iz grščine: kryptos logos pomeni skrita beseda. Uporabljata se še pojma enkripcija (šifriranje) in dekripcija. Osnovno sporočilo ponavadi imenujemo čistopis (cleartext, plaintext), zašifrirano pa šifropis ali tajnopis(kriptogram, ciphertext)
Sporočilo po nekem postopku (algoritmu, metodi) spremenimo v kriptirano sporočilo, pri tem uporabimo določene vrednosti za parametre v algoritmu, ki jim rečemo ključ. Sogovornika se morata torej dogovoriti o algoritmu in ključu, da si lahko pošiljata šifrirana sporočila.
Začetki uporabe kriptografije segajo v čase pred našim štetjem. Razvitih je bilo nešteto načinov za zakrivanje sporočil. Prestrezanje sporočil ni bilo v navadi samo v vojnih časih, predvsem prestrezanje diplomatske pošte je bila običajna praksa. Na dvorih so obstajale "črne sobe", kjer so poskušali razvozlati prestrežena in prepisana sporočila.
Nekaj primerov klasične kriptografije
Špartanci so uporabljali naslednji način: na valj so navili ozek trak in sporočilo napisali pravokotno na smer traku. Poslali so odvit trak, naslovnik pa je moral imeti valj enakega premera.
Julij Cezar je svojim vojskovodjem pošiljal sporočila, kjer je vsako črko zamenjal s črko, ki je bila v abecedi nekaj mest za njo. Postopek lahko opišemo kot zamenjavo črk a -> a+k po modulu n (n pomeni število črk v abecedi). "k" predstavlja ključ. Cezar je menda običajno uporabil ključ 3. Kako bi dešifrirali HAL, če vemo, da smo uporabili isti algoritem s ključem -1?
V začetnih letih svetovnega spleta je bil v uporabi postopek ROT-13 (zamenjava črk a -> a+13 po modulu 26 - angleška abeceda) v Usenetu za šifriranje neprimernih šal in podobnega. Seveda ni predstavljal nobene resne zaščite. Netscape-ov brskalnik je imel v prvih verzijah vgrajeno možnost pod View -> Unscramble ROT-13.
To sta primera za monoalfabetsko substitucijo, kjer se črka vedno preslika v isto črko, zato frekvenčna porazdelitev črk kaže podoben vzorec kot v jeziku čistopisa. Pri dešifriranju poiščemo najbolj pogoste črke in jih nadomestimo z najbolj pogostimi črkami v jeziku, potem pa iščemo še najbolj pogoste dvojčke, trojčke oziroma besede v tekstu. Prvi opis dešifriranja monoalfabetske substitucije je znan iz devetega stoletja, uporabljala pa se je še v srednjem veku. Nadomestile so jo varnejše polialfabetske substitucije, na primer Vigenèrjeva.
V prvi polovici 20. stoletja so za polialfabetsko substitucijo uporabljali šifrirne stroje. Najbolj znana je Enigma, ki so jo uporabljali Nemci med 2.svetovno vojno.
Digitalno potrdilo
Digitalno potrdilo (angl.: Digital Certificate) je sodobna alternativa klasičnim osebnim identifikatorjem (osebna ali zdravstvena izkaznica, potni list, bančna kartica, ...), s specifičnim namenom - zagotavljanju varnega in legitimnega e-poslovanja. Predstavljen kot računalniški zapis vsebuje podatke o imetniku (ime, e-naslov, enolična številka,...), njegov javni ključ, podatke o overitelju oz. izdajatelju digitalnega potrdila ter obdobje veljavnosti digitalnega potrdila, ki je digitalno podpisan z zasebnim ključem izdajatelja potrdila (SIGOV-CA oz. SIGEN-CA).
Digitalna potrdila so sestavni del tehnoloških rešitev, ki nudijo dve osnovni možnosti za zasebnost v elektronskem poslovanju in komuniciranju:
- šifriranje podatkov, ki zagotavlja zaupnost, in
- digitalni podpis, ki predstavlja sodobno alternativo klasičnemu podpisu, zagotavlja pa: identiteto imetnika digitalnega potrdila in nezatajljivost lastništva poslanih e-podatkov, in
- celovitost (integriteto) sporočila, kar pomeni, da samo dela podatkov ni mogoče spremeniti ali drugače popraviti brez (vednosti) podpisnika.
Princip zaupanja med lastniki digitalnih potrdil preko tretje osebe
Overitelj tako predstavlja ustanovo, kateremu zaupajo njegovi komitenti - imetniki digitalnih potrdil. S tem ga tudi pooblaščajo, da upravlja z njihovimi digitalnimi potrdili. Slika prikazuje princip zaupanja med lastniki digitalnih potrdil preko tretje osebe - izdajatelja (več o namenu izdajatelja Državnega centra za storitve zaupanja).
Podobno je overitelj ustanova, ki ji lahko zaupajo tudi ostali overitelji ali posamezniki in posredno s tem tudi lastnikom vseh digitalnih potrdil, ki jih je overitelj izdal in potrdil. Tako se lahko različni overitelji povezujejo na različne načine, bodisi horizontalno, kjer se medsebojno overijo in s tem omogočijo varno in zanesljivo komunikacijo med lastniki digitalnih potrdil obeh ustanov (npr. podobno kot pri medsebojnem priznanju potnih listov med državama) ali vertikalno, ko nek overitelj pooblasti neko drugo ustanovo za izdajanje digitalnih potrdil v njegovem imenu, kar je seveda potrebno pri upravljanju z velikim številom digitalnih potrdil, poleg tega pa se z medsebojnim priznavanjem veča nabor e-storitev, ki so možne s posameznimi digitalnimi potrdili.
Osnovne lastnosti digitalnih potrdil SIGOV-CA in SIGEN-CA
Digitalna potrdila so namenjena tako za interno e-poslovanje oz. komuniciranje v javni upravi (SIGOV-CA) kot za storitve, ki jih nudi javna uprava državljanom in pravnim osebam na elektronski način (SIGEN-CA). Zato obstajajo med obema vrstama digitalnih potrdil - posebnimi in spletnimi - nekatere specifične razlike, pogojene z namenom uporabe. Le-to omogoča posebna tehnologija in specifične lastnosti programske opreme ter infrastrukture.
Medtem ko pripada spletnim digitalnim potrdilom en par ključev (javni in zasebni), pripadajo posebnim digitalnim potrdilom dva ločena para ključev - za digitalno podpisovanje oz. overjanje ter za šifriranje oz. dešifriranje. Vsak par sestavljata zasebni in javni ključ. Pri tem javnost ključa pomeni, da je le-ta javno dostopen oz. objavljen v t.i. javnem imeniku, zasebnost pa, da ima dostop do tega ključa samo imetnik digitalnega potrdila.
Par ključev za šifriranje/dešifriranje sestavljata:
- zasebni ključ za dešifriranje ter
- javni ključ za šifriranje.
Par ključev za podpisovanje/overjanje sestavljata:
- zasebni ključ za podpisovanje ter
- javni ključ za overjanje podpisa.
Postopek šifriranja in dešifriranja
Oseba A želi poslati šifrirano sporočilo osebi B. Uporabi javni ključ osebe B za šifriranje, ki se nahaja v imeniku javne uprave. Oseba A nato pošlje šifrirano sporočilo osebi B. Ko le-ta prejme šifrirano sporočilo, ga s svojim zasebnim ključem dešifrira. Pod pogojem, da je oseba A izbrala osebo B kot edinega naslovnika njegovega sporočila, ga lahko edino le-ta dešifrira.
Postopek digitalnega podpisovanja in preverjanja podpisa
Oseba A digitalno podpiše svoje sporočilo. Digitalni podpis je narejen tako, da se najprej po posebnem postopku naredi t.i. "seštevek" sporočila - zgoščena vsebina (ki zagotavlja, da sporočila kasneje ni mogoče spremeniti, saj bi ta seštevek ne bil več isti), to število pa je potem zašifrirano z zasebnim ključem podpisnika (oseba A). Ker svoj zasebni ključ pozna izključno oseba A, je to jamstvo, da je podpis res njegov. Digitalno podpisano sporočilo, ki ga prejme oseba B, sestavljajo čistopis, šifrirana zgoščena vsebina in javni ključ osebe A za overjanje podpisa.
Ko želi oseba B preveriti digitalni podpis osebe A. Oseba B najprej z javnim ključem osebe A dešifrira zgoščeno vsebino. Ponovno izračuna povzetek sporočila iz čistopisa z istim zgostitvenim algoritmom, kot ga je uporabila oseba A. Če se zgoščeni vsebini ujemata, pomeni, da je poslano sporočilo res podpisala oseba A.
Podpisano elektronsko sporočilo lahko bere vsakdo, vendar pa ne more spreminjati njegove vsebine, ne da bi se spremembe zabeležile. Glede na dejstvo, da pozna svoj zasebni ključ samo in izključno podpisnik (imetnik digitalnega potrdila), pa je zagotovljeno, da je on dejansko tudi podpisal sporočilo.
Razlika med posebnimi in spletnimi potrdili
Dva para ključev pri posebnih digitalnih potrdilih omogočata dostop oz. dešifriranje šifriranih podatkov tudi v primerih, ko digitalno potrdilo, s katerim so podatki zašifrirani, ni več veljavno oz. ni mogoča normalna uporaba tega digitalnega potrdila zaradi različnih vzrokov. To omogoča dostop (berljivost) e-podatkov tudi v nepredvidenih in nezaželenih primerih, kot npr. izguba gesla za dostop do zasebnega ključa za dešifriranje podatkov, poškodovanje pametne kartice, na kateri je shranjen zasebni dešifrirni ključ, ... . Pri tem se zasebni ključ za dešifriranje podatkov po posebnem režimu varno hrani znotraj infrastrukture overitelja na MJU in se izdaja izključno na zahtevo imetnika digitalnega potrdila, predstojnika (v primeru službenih digitalnih potrdil ali digitalnih potrdil za pravne osebe) ali na zahtevo pristojnega sodišča, sam postopek izdaje zasebnega ključa za dešifriranje podatkov pa je natančno določen s Politikami delovanja SIGOV-CA in SIGEN-CA. Na osnovi omenjenih značilnosti so posebna digitalna potrdila v prvi vrsti namenjena službeni uporabi (za javno upravo in za pravne osebe), spletna digitalna potrdila pa za državljane.
Druga bistvena razlika med posebnimi in spletnimi digitalnimi potrdili je v veljavnosti in obnavljanju njihovih ključev. Medtem ko je veljavnost ključev pri posebnih digitalnih potrdilih za podpisovanje, šifriranje in dešifriranje največ tri leta ter za overjanje pet let, je veljavnost spletnih digitalnih potrdil pet let. Pri tem se ključi posebnih digitalnih potrdil avtomatično obnavljajo pred pretekom veljavnosti, pri spletnih pa obnavljanje ne poteka avtomatsko, ampak je potrebno vsakič ponoviti postopek pridobitve digitalnega potrdila.