e-gradiva          SERŠ Maribor O projektu Besednjak
  logotip  
Osnove |  Skladi |  Topologije |  Mediji |  Pristopne |  LAN |  Omrežni |  Transportni |  Povezovanje |  Varnost |  Storitve |  Varnost |  Sistemi |  Strežniki

Varovanje E–pošte

Ključi

Kriptografija

E–podpis

Varnost e–pošte

V tej učni vsebini boste spoznali:

Izmenjava pošte je ena od prvih storitev v internetu. Vsebine sporočil pa so bolj ali manj zaupne narave. Nihče si ne želi, da drugi berejo njegovo zasebno pošto. Tisti, ki poskušajo prestrezati pošto in jo prebirati, pa zanesljivo nimajo dobrih namenov. Ko je e–pošta poslana med dvema oddaljenima točkama, se v splošnem na poti prenaša preko vozlišč od ene naprave do druge. Kdorkoli na tej poti lahko prebere sporočilo e–pošte. Zasebnosti ni, čeprav mnogi ljudje mislijo drugače. Želimo pa tudi, da je e–pošto poslal tisti, ki je pod njo podpisan. Za dosego želenega cilja so mnogi ljudje in skupine uporabili kriptografske postopke. Eden izmed programov za izdelavo zanesljive pošte je program PGP (Preety Good Privacy).

PGP je šifrirni program, ki omogoča enostavno šifriranje podatkov in pri tem uporablja simetrične in asimetrične algoritme, zgoščevalne funkcije in vse, kar je potrebno, da lahko pošiljamo šifrirana sporočila po elektronski pošti. Poleg avtorja Phil Zimmermann in njegovih sodelavcev so ga dopolnjevali uporabniki po vsem svetu.

Nekaj zgodovinskih podatkov o PGP

Leta 1990 so se razširile govorice, da ameriška vlada na predlog FBI in NSA pripravlja zakon, ki bo močno omejil uporabo kriptografskih algoritmov. Phil Zimmermann, računalniški strokovnjak in idealist, je kot odgovor na to napisal programski paket PGP (Pretty Good Privacy). Skupaj s somišljeniki je porabil pol leta neplačanega dopusta in si nakopal kup težav, od dolgov do preganjanja ameriških vladnih ustanov, saj so ga hoteli obsoditi, da je kršil zakon o izvozu orožja. Prepovedano mu je bilo razširjati program po internetu. Vendar je bila nato obsodba zavrnjena, saj Zimmermann ni nikoli osebno razširjal programa po internetu. Nekdo je objavil program v izvorni kodi kot knjigo (z velikimi črkami in kontrolnimi informacijami za lažje skeniranje). Ker knjiga po zakonu ZDA ni orožje, so jo lahko izvozili in nekdo v tujini je objavil program in ga s pomočjo interneta nato razširjal. Program se je bliskovito razširil in ameriška vlada je v začetku leta 2000 (takrat je tudi potekel patent RSA) omilila omejitve za izvoz kriptografske opreme in prenehala preganjati Zimmermanna.

Zimmermannu je poleg preganjanja zaradi izvoza kriptografske opreme grozila še tožba zaradi kršitve patentnih pravic. V ZDA se namreč da patentirati algoritme in podjetje Public Key Partners (PKP) je imelo patent za uporabo algoritma RSA (patent je potekel leta 2000). Tako je bil prisiljen pripraviti dve različici – eno za ZDA in eno za preostali svet. Dogovoril se je z MIT, da od verzije 2.5 naprej vzdržujejo verzijo za ZDA, ki za implementacijo algoritma RSA uporablja podprograme RSAREF podjetja PKP. Za uporabnike izven ZDA so na strežniku http://www.pgpi.org/ na voljo verzije s končnico i kot international, ki jih vzdržuje Norvežan Staale Schumacher. Te inačice PGP uporabljajo Zimmermannovo knjižnico programov za RSA MPILIB. Poleg tega ameriška verzija ne zna prebrati tekstov, zašifriranih s starejšimi verzijami. Tako so zagotovili, da bodo vsi uporabniki v ZDA uporabljali "uradno" verzijo.

PGP je uspešno preživel težave zaradi kršenja izvoznih omejitev in patentnih pravic, manj uspešen pa je pri trženju. Zimmermann je leta 1996 ustanovil podjetje PGP Inc., da bi si s prodajo PGP povrnil stroške razvoja. Ker je podjetje še naprej nudilo brezplačno različico zaslužka ni bilo dovolj in po enem letu je podjetje propadlo. Kupila ga je firma Network Associates. Tudi ta je po šetih letih ugotovila, da PGP ni dovolj donosen in so to področje ukinili. Zimmermann s sodelavci ustanovi podjetje PGP Corp. Prodajo plačljivih verzij spodbuja tako, da v neplačljivi različici ni več dodatkov PGP za programe za elektronsko pošto, tako da je treba kriptiranje prenesenih vsebin delati izven poštnih odjemalcev posebej.

PGP in zagotavljanje integritete sporočila

Na voljo je izvorna koda programa za različne platforme UNIX, Linux, Windows in Mac OS. PGP je odprtokodni program. Mnogi ljudje in skupine so ga spremenili. Nekateri zato, da bi obšli zakone o izvozu orožja, nekateri, da bi obšli zakone o patentiranju, nekateri so ga spremenili v komercialne različice.

Pri aplikaciji PGP je digitalni podpis narejen z uporabo RSA in MD5, samo sporočilo pa šifrirajo s simetričnim algoritmom ali asimetričnim. PGP enkriptira podatke z uporabo bloka števk imenovanih IDEA (International Data Encryption Algorithm), ki uporablja 128-bitni ključ. PGP vsebuje postopke za iskanje velikih praštevil, izračunavanje javnih, zasebnih in tajnih ključev.

V prvih verzijah, ki so bile namenjene osebnim računalnikom z operacijskim sistemom DOS, je uporabnik vnašal ukaze v ukazni vrstici. Zdaj je na voljo grafični vmesnik za različne operacijske sisteme.

Na voljo imamo module za upravljanje s ključi, za šifriranje datotek, za podpisovanje, za dešifriranje in verificiranje podpisov, za varno brisanje datotek ter druge. Poleg tega so na voljo tudi kot dodatek za večino znanih programov za elektronsko pošto. Od verzije 5 naprej PGP zna uporabljati razen algoritmov RSA, MD5 in IDEA tudi asimetrična Diffie–Hellman in DSA, med simetričnimi ša CAST, trojni DES, Twofish in AES. Ključ za asimetrični algoritem Diffie–Hellman je lahko dolg do 4096 bitov, za RSA do 2048 bitov.

Za varovanje pri izmenjavi naših sporočil potrebujemo zasebni in javni ključ. Pri izdelavi le–teh nam PGP ponuja kar nekaj opcij. Najpomembnejša ša je vsekakor zaščita zasebnega ključa z geslom in ustrezno shranjevanje varnostne kopije ključa: To moramo vsekakor narediti. Ob koncu postopka smo dobili dve datoteki: SECRING.SKR in PUBRING.PKR. PGP je samodejno shranil privatni ključ na obroč tajnih ključev SECRING.SKR in ga zaščitil z geslom, ki smo ga vnesli ob tvorjenju. Javni ključ je shranjen v obroču javnih ključev PUBRING.PKR. Dodajamo javne ključe ljudi, s katerimi si bomo došisovali.

Za zagotavljanje verodostojnosti obstajajo organizacije, ki hranijo in overijo nek javni ključ posameznika ali organizacije. Zimmermann, avtor PGP, je želel, da bi se PGP uporabljal brez dodatnih stroškov ali všletanj državnih ali komercialnih overiteljev. Zato si je zamislil "omrežje zaušanja" (angl. web of trust) – uporabniki si sami izmenjujejo javne ključe v obliki digitalnih potrdil in jih drug drugemu podpisujejo ter tako jamčijo za njihovo verodostojnost. Objavljajo jih tudi na strežnikih javnih ključev.

Digitalna potrdila PGP vsebujejo šoleg javnega ključa imetnika, imena, elektronskega naslova, identifikacijske oznake, algoritmov, dolžine ključa, časa kreiranja in veljavnosti še enega ali več digitalnih podpisov, ki jih naredijo znanci. Lahko vsebujejo tudi fotografijo.

Ko hočemo šisati nekomu, lahko njegovo potrdilo šotegnemo s strežnika javnih ključev ali ša nam došisovalec šošlje svoj javni ključ na datoteki, ki jo uvozimo v svoj obroč javnih ključev. Če nismo šrešričani, da imamo šravi ključ, lahko lastnika ključa šrosimo, da nam sšoroči njegov šrstni odtis. PGP šonudi šrstni odtis v dveh verzijah – običajnih šestnajstiških oznakah ali kot seznam besed, kar je primerno za sšoročanje šo telefonu. Tudi svoj javni ključ lahko objavimo na strežniku javnih ključev ali ša ga došisovalcu pošljemo kot prišeto datoteko (svoj javni ključ izvozimo na datoteko šrek menija Exšort Selected keys to a file. Obstajajo ša celo matematične analize verodostojnosti posameznih ključev.

Potrdila PGP pri brezšlačni verziji niso v skladu s standardom X509V3. V plačljivi verziji pa je na voljo tudi ta možnost in ga pridobimo od overitelja javnih ključev.

Ko imamo dopisovalčev javni ključ, mu pošljemo podpisano šifrirano sporočilo. PGP iz datoteke najprej izračuna povzetek z zgoščevalno funkcijo in ga zašifrira s privatnim ključem pošiljatelja z algoritmom RSA oziroma drugim izbranim asimetričnim algoritmom. Ta podpis doda datoteki in vse skupaj zgosti s postopkom ZIP. Izračuna enkratni ključ (angl. session key) in z njim zašifrira zgoščeno datoteko z uporabo izbranega simetričnega algoritma. Zdaj z naslovnikovim javnim ključem zašifrira enkratni ključ po asimetričnem algoritmu in vse skupaj doda prejšnji datoteki. Rezultat je šifrirano sporočilo (8-bitni znaki). To običajno pretvori v berljive znake s programom radix64 (iz treh 8–bitnih znakov naredi štiri 6–bitne ). Tako prirejeno sporočilo potuje do naslovnika. Tu se vsi postopki odvijejo v obratnem vrstnem redu.

Možnost izbire različnih algoritmov lahko predstavlja problem, če si izmenjujemo sporočil z ljudmi, ki uporabljajo starejše verzije PGP. Problem lahko nastane pri dešifriranju sporočil, ali pa samo pri okrnjenih opcijah, ki jih ponujajo novejše oziroma plačljive različice.

Zaključek

vprašanjanja vprašanje

Način, kako se PGP uporablja je zelo lahek za razumevanje. Imamo dva ključa, javni in skrivni ključ. Javni ključ imajo lahko vaši prijatelji ali vaši sovražniki, da vam lahko pošljejo sporočilo. Vi pa imate skrivni ključ, da lahko to sporočilo dešifrirate. Z javnim ključem šifriramo sisteme in ga pošljemo po elektronski pošti, medtem ko skriti ključ ostane pri nas.

Sofinaciranje projekta in pravice

Izvedbo projekta je omogočilo sofinanciranje Evropskega socialnega sklada Evropske unije in Ministrstva za šolstvo in šport.