1.
Uvod ili zašto sam odabrao baš Pgp kao temu2.
Povijesni pregled i nastanak3.
Pogled kroz kriptografiju4.
Kako radi PGP ?5.
Hash funkcije ili digitalni potpisi6.
Digitalni certifikati i njihova distribucija7.
Pitanje pravovaljanosti i povjerenja
PGP ---- Pretty Good Privacy
Postoji više dobrih razloga zbog kojih sam odabrao Pretty Good Privacy .Kao primjer može poslužiti to da je Pgp u Americi dobio dobar a u neku ruku i negativan odjek jer je on kao možda jedan od najjednostavnijih i najsigurnijih načina da nekakav dokument pošaljete do nekoga odredišta ili da ga sa toga odredišta dobijete a da ste pak sigurni da ga nitko ali baš nitko neće moći pročitati. Dakle ja sam krenuo pisati ovaj seminar kao želju da saznam dali je u stvari uopće moguće napraviti nešto što stvarno nitko neće bez vaše dozvole moći vidjeti , i dali je stvarno taj famozni Pgp toliko siguran . Moram navesti jedan citat koji sam našao na Internetu ne znam autora ali prepričan glasi otprilike ovako :
" Nikad nismo dovoljno sigurni a i kad mislimo da jesmo moramo biti oprezni i opet oprezni".
Što nameće temu da li i imamo pravo da sve sakrivamo i dali je to uopće na dobrobit čovječanstva , jer kada netko nešto od nekoga skriva on možda i nema neku zlu namjeru ali možda i ima .I da li npr. vlada ima pravo vidjeti sve što smo mi napisali i napravili . Mislim da kod toga ne valja biti neop
rezan i reći ma odakle njima pravo da svugdje zabadaju svoj dugi nos i što njih briga o čemu se ja dopisujem sa svojom djevojkom , prijateljom ili poslovnim partnerom. No možda time branimo upravo one protiv kojih bi se svi mi trebamo boriti i koji stvarno imaju zle namjere koje moraju skrivati od drugih. Ja svakako priznajem potrebu da mora postojati način da se neki podatak ,npr. poslovna tajna zaštiti od industrijske špijunaže ili od drugog oblika intelektualne krađe ali samo ponukan nedavnim napisima u tisku u kojem se alarmira kako eksplicitno Američka vlada vodi tužbe i silne rasprave na temu kriptografije i prava na bavljenje tim zanimljivim i nadasve intrigantnim poslom. Zašto pgp spada pod restrikciju ITAR agencije USA vlade koja se bavi ograničavanjem i kontrolom sofisticiranoga oružja i jaki kriptografskih alata izvan granica Amerike.Gdje je Pgp u svemu tome .
Znam da kada sam se malo počeo interesirati za temu da je u javnosti procurila informacija da se u javni ključ može spremiti odnosno dodatno taj javni ključ kriptirati to u biti znači da mi možemo imati dva tajna ključa koja oba mogu otključati onaj javni ključ koji je doduše promijenjen ali kako mi znamo da li je poruka koju smo mi u stanju otključati u stvari zaključana onim ključem javnim
koji smo mi odaslali ili onim promijenjenim javnim ključem koji može pročitati i druga strana .Ta i neka druga pitanja na koja mislim u seminaru obraditi su me ponukala da uzmem ovaj seminar i odustanem od laboratorijskih vježbi.
Dakle krenuti ću od povijesnoga nastanka kriptografije uopće .Možemo reći da je na neki način primjena prvih enkriptirani tekstova počelo u rimskome carstvu gdje je zna se Cezar koristio vrlo jednostavni algoritam kriptiranja koji se koristi tako da se slova miču za tri u desno
ABCDEFGHIJKLMNOPQRSTUVWXYZ
pomicanjem za 3 dobiva se alternativna abeceda
DEFGHIJKLMNOPQRSTUVWXYZABC
Gdje je E=B, F=C.
No dakako od Cezareva vremena pa do danas su se stvari malčice izmijenile pa ovakav način klasičnog kriptiranja nije dovoljan.
Povijesni nastanak onoga što Englezi zovu Public key cryptography službeno je nastalo kada je 1976 advokat Whitfield Diffie i inženjer elektrotehnike Martin Hellman smislili javni i tajni ključ. No ni to nije samo tako jasno i nedvojbeno , jer postoje informacije da je u Britanskoj tajnoj službi radio čovjek koji je to smislio 5 godina ranije
J H Ellis: The Possibility of Secure Non-Secret Digital Encryption, CESG Report, January 1970
što pokazuje ovaj izvještaj iz 1970 ali zbog politike tajnosti nije nikada dobio zasluge za učinje
no djelo.1977 Ron Rivest, Adi Shamir, Len Adleman su otkrili još generalniji algoritam koji je nazvan prvim slovima imena RSA ovaj algoritam se koristi i u Pgp-u. Pri nastajanju ovih algoritama autori su imali velikih problema sa objavljivanjem rezultata jer NSA američka organizacija nije htjela da algoritam bude javno dostupan no autori su preuzeli rizik i objavili rezultate koje su postigli u članku "New Directions in Cryptography"
Za Pgp je važan i IDEA (International Data Encryption Algorithm) kojeg su osmislili Xuejia Lai i James Massey u Zurichu važan u Pgp jer se njegov simetrični ključ koristi u Pgp algoritmu .
Za nastanak samog Pgp je glavni krivac ako se može tako reći Phill R. Zimmermann ono što on kaže da ga je navelo da napiše je ovaj članak
The 17 Apr 1991 New York Times reports on an unsettling US Senate proposal that is part of a counterterrorism bill. If this nonbinding resolution became real law, it would force manufacturers of secure communications equipment to insert special "trap doors" in their products, so that the Government can read anyone's encrypted messages. It reads: "It is the sense of Congress that providers of electronic communications services and manufacturers of electronic communications service equipment shall insure that communications systems permit the Government to obtain the plain text contents of voice, data, and other communications when appropriately authorised by law."
(This was 1991 Senate Bill 266 and it eventually failed to pass into law.)
U njemu ukratko se kaže da je vlada htjela uvesti zakon koji bi primoravao tvrtke koje se bave enkripcijom da u svojim algoritmima ostave mogućnost "stražnjih vrata" odnosno način na koji bi vlada mogla čitati sve kriptirane dokumente. Prvi Pgp 1.0 je nastao kada je Phill R. Zimmermann implementirao RSA algoritam (o kojem će poslije biti više riječi ) i u kombinaciji sa simetričnim algoritmom svoga dizajna nazvanog Bass-o-Matic.
Počela je borba sa vladom koja je namjeravala uvesti ubrzano zakon koji bi PGP stavio izvan zakona , korištene su sve metode pa su čak neki Phillovi prijatelji išli sa portable kompjuterima i preko " pay phones " na BBS stavljali PGP kako im se ne bi moglo ući u trag , u međuvremenu RSA se počinje buniti kako je korišten njihovog patenta bez dozvole . Phill pokušava prebaciti krivnju sa sebe na korisnike , evo ulomka iz prvog PGP manuala :
The RSA public key cryptosystem was developed at MIT with Federal funding from grants from the National Science Foundation and the Navy. It is patented by MIT (U.S. patent #4,405,829, issued 20 Sep 1983). A company called Public Key Partners (PKP) holds the exclusive commercial license to sell and sub-license the RSA public key cryptosystem. For licensing details on the RSA algorithm, you can contact Robert Fougner at PKP, at 408/735-6779. The author of this software implementation of the RSA algorithm is providing this implementation for educational use only. Licensing this algorithm from PKP is the responsibility of you, the user, not Philip Zimmermann, the author of this software implementation. The author assumes no liability for any breach of patent law resulting from the unlicensed use by the user of the underlying RSA algorithm used in this software
Dakle on se blago pravi lud i kaže ako korisnici koriste RSA bez licence to je njihov problem .No ipak pritisnut pravnim zahtjevima mora potpisati kako više neće distribuirati PGP no on je već toliko uzeo maha da ga više nije bilo moguće kontrolirati .Ljudi su ga počeli skidati da vide oko čega se diže tolika buka i zbog
čega je se američka vlada oko njega toliko zabrinula . Phill Zimmermann i njegovi suradnici su mogli mirno sjediti kod kuće i gledati kako njihov program se širi diljem svijeta i postaje možemo reći najpoznatiji kripciski program za široku uporabu.U igru se uključuje i MIT i uz odobrenje Phill Zimmermann preuzima prava na distribuciju PGP , oni su imali djelomična prava na RSA patent pa više nije postojala legalna zabrana distribucije PGP-a
Da bi mogli razumjeti princip rada PGP-a moramo znati neke osnovne činjenice o kriptografiji samoj . Dakle kriptografija je umjetnost ma kako to čudno zvučalo jer dobar kriptograf( ne tvrdim za sebe samo pričam što sam čuo) mora osim zavidnog znanja o području imati i na neki način talenta i osjećaja za ono što radi . Mnogi autori naglašavaju , naroči
to pri probijanju kodova i razbijanju šifri , utjecaj sreće . Kriptografija je dakle postupak zaštite privatne informacije od neovlaštenoga pristupa .Postupak kriptiranja se u osnovi sastoji od kripcije i enkripcije .
Postoje dvije vrste algoritama koje se mogu koristiti :
Razlika je u tome što kod simetričnih isti ključ i otključava i zaključava

simetrični algoritam
dok kod asimetričnoga algoritma ključ koji je služio za zaključavanje sada više ne može otključati to što je sam zaključao.To sa simetričnim i asimetričnim ključem nije tako jednostavno kako se čini jer iako se nama na prvi pogled čini da je bolje za sve koristiti asimetrični algoritam , ali simetrični algoritam ima tu prednost što je puno brži i za kriptirati i za enkriptirati.

asimetrični algoritam
Prednosti ovakvoga asimetričnoga načina su ipak nezamjenljive jer omogućavaju razmjenu i komunikaciju bez prethodnoga dogovora svih strana koje sudjeluju u njemu tako na primjer možemo biti sasvim sigurni da ćemo samo mi pročitati poruku kriptiranu našim javnim ključem .
PGP kombinira najbolje osobine oba kriptografskoga algoritma , konvencijalnoga simetričnog i asimetričnog načina kriptiranja , što ga čini na neki način hibridnim kripto sistemom. Kada kriptiramo tekst sa PGP prvo se tekst komprimira . Postoji više razloga za komprimiranje teksta prvi je taj što se smanjuje veličina podataka koji se moraju prenositi i komprimirati . No bolji razlog je
to što se postiže veća sigurnost kriptiranoga materijala jer se smanjuje uzorak teksta koji se može prepoznati na primjer prepoznavanjem uzoraka jer se tako izbacuju pojedina ponavljanja karakteristična za jezik . Idući korak je stvaranje sesion key (sjednički ključ ) , stvara se tako da se gledaju neki slučajni uzorci kao što je npr. micanje miša ili broj pritisnutih tipki njegova je uloga da omogući brzo kriptiranje a da se ne izgubi na snazi enkriptiranja . Nakon toga se sesion key kriptira sa javnim ključem primatelja i to se šalje do primaoca preko mreže
Sada kada smo mi poslali kriptirani tekst primaocu, logičan je korak otključavanja poslanog paketa a taj radi u istome smjeru .Prvo otključavamo onu malu bravicu odnosno čitamo sesion key koji će nam poslije služiti da enkriptiramo sami tekst . Dakle obrnuti postupak :

Sad imamo originalni tekst na strani u jasnome obliku i napravili smo ono što smo željeli .
Ključevi koji se koriste pri kriptiranju su dosta veliki , ali pri tome se mora znati procijeniti kolika je veličina ključa doista potrebna jer jako veliki ključ nosi sa sobom odgovornost velikoga vremena koje je potrebno za kriptiranje i enkriptiranja. Tajni simetrični ključ veličine 80 bita odgovara ključu asimetričnome od 1200 bita (po sigurnosti naravno ) , dakle prednost je što se toga tiče koristiti simetrične ključeve .Naravno ništa nije dovoljno sigurno jer uz dovoljno novaca i kompjutorske snage sve je moguće .PGP sprema ključeve u posebne datoteke zvane key rings (koluti za ključeve )
Kod slanja i primanja poruka nam je dosta važno da znamo da je poruka koju smo dobili točna i cjelovita te da je takva odaslana od pošiljatelja . Hash funkcija se koristi tako da se uzme poruka koja može biti velika od nekoliko stotina do nekoliko milijuna bitova i od nje se pravi mesage digest što je skraćeni oblik konstantne veličine npr. 200 bita mi smo sigurni da će ako je ma i jedan bit poruke promijenjen msage digest će biti jako promijenjen . Naravno pos
toji mogućnost da dvije različite poruke imaju iste digeste ali je to toliko mala vjerojatnost da je zanemariva.

Hash funkcije igraju u Pgp glavnu ulogu u validaciji i autentizaciji dokumenata u Pgp -u.
6. Digitalni certifikati i njihova distribucija
Digitalni certifikati su u načelu certifikati kao i u stvarnom svijetu koji imaju svrhu da nekome ili nečemu dokažu da je netko ono što tvrdi za sebe da je , ili da netko za njega tvrdi da on je ono za što se predstavlja . Digitalni certifikati u osnovi služe za autentifikaciju jer ono što je dosta bi
tno u komunikaciji je to da mi doista znamo s kime komuniciramo . Digitalni certifikat se sastoji u osnovi od tri stvariPri korištenju certifikata važan je i način prijenosa ili komunikacije među korisnicima , pri malim grupama korisnika nije problem prenijeti ključeve manualno jedan po jedan ali u velikim organizacijama i sa velikim brojem korisnika ta komunikacija postaje zamorna i složena . Čak i nemoguća .Zato su stvoreni CS (Certifikat Servers) koji služe za razbijenu velikoga broja ključeva .Strukturirani sistemi koji nude usluge osim spremanja ključeva kao CS druge funkcije , manipulacije ključevima . Takvi sustavi se zovu PKI (Public Key Infrastructures) .
CS (Certifikat Servers) imaju svrhu olakšati komunikaciju između korisnika pomoću treće povjerljive strane .Ovi serveri imaju neke funkcije osim što su u stvari baze podataka , da na primjer traže od korisnika neke ograničavajuće uvjete (koristi se u velikim tvrtkama gdje nemaju svi pravo praviti svoje ključeve i spremati ih u bazu podataka).
PKI (Public Key Infrastructures) osim funkcija čuvanja i spremanja imaju neke dodatne sposobnost ,npr. izdavanje ,ukidanje , manipulacija ,ograničavanje certifikatima .U stvarnome svijetu pandan možemo naći u uredu za izdavanje putovnica . I tu se kao i tamo gleda vrijeme do kojeg je neki certifikat valjan i kada mu ta valjanost ističe .
Kod PGP poznajemo dvije vrste formata i to su
PGP format se sastoji ali nije ograničen sa nekoliko važnih točaka.
Jedna stvar koja je karakteristična za PGP format certifikata da nema ograničenja kada se govori o broju osoba koje će potvrditi identitet neke osobe tako npr. Phill Zimmermann ima u svome certifikatu potpise mnogo drugih osoba .Kod ovoga načina postoji više labela koje predstavljaju

PGP format
korisnika krenuvši od one najjednostavnije imena i prezimena do , slike
e-Mali adrese i slično.
X.509 certifikaciski format
Svi x.509 formati su kompatibilni sa ITU-T standardom ideja je bila da neka aplikacija koja koristi x.509 certifikat da onda taj isti certifikat može koristiti i neka druga aplikacija koja podržava x.509 format podatka . To je u stvari polje koje sadrži s
kup korisnika njihovih javnih ključeva on određuje što ide u standard i koji je naći pomoću kojeg se dekodiraju podatci. Sadrži slijedeće
Jedinstveno ime osobe koja je izdala certifikat

X.509 certifikat
Razlike između ova dva formata algoritama su brojne ali najvažnija 3 su
7. Pitanje pravovaljanosti i povjerenja
Problem pravovaljanosti ključa odnosno saznanje da ključ kojim je neki dokument kriptiran ili enkriptiran validan odnosno pripada osobi za koju se tvrdi da ga je napravila je dosta velik i njemu se pridodaje dosta pažnje u Pretty Good Privacy jer gotovo da je isto činjenica da li nam je netko probio ključ ili podmetnuo nam svoj ključ . Kako bi bili sigurni
u dotičnu informaciju mi moramo imati "treću stranu " to je nekakav server u kojem možemo pročitati i naći informaciju o korisniku . Kod Pretty Good Privacy -a tu ulogu preuzima Certification Authorities (CA) . Dakle najvažnija uloga CA je pridjeljivanje pravoga ključa pravoj osobi.Toj trećoj strani , moraju svi vjerovati da bi mogli normalno komunicirati .
Uspostava povjerenja
Dakle ako nam osoba ne može potvrditi da je to ona sama napisala onda mi moramo vjerovati nekome drugome da je istina to što tamo piše. O tome nam govori uspostava povjerenja među korisnicima .Mi imamo nekakav CA i njemu možemo vjerovati do neke granice broja korisnika i stranica
a kada pređemo tako nekakav broj mi moramo imati drugačiji način validacije . Zbog toga CA ima pravo praviti nešto što se zove META-INTRODUCER.To je ustvari neka recimo to tako 4 strana kojoj vjerujemo i ona nam predstavlja novi CA.
Što je prvi put korišteno u Pretty Good Privacy -u jer ti META-INTRODUCER nemaju sva prava kao CA ali ih zamjenjuju do neke granice jer najvažnije da oni nemaju pravo stvarati nove META-INTRODUCERE u X.509 okružju oni se zovu root CA .
Modeli povjerenja
Pri uspostavi povjerenja možemo se ravnati na nekoliko načina pa tako i postoje tri načina uspostave povjerenja :
Direktni model
Najsigurniji
model jer osoba koja je dobila ključ sigurno zna
odakle potječe i prije je dogovoreno o kojemu ključu je riječ.
Hijerarhijski model
Vrlo jednostavna raspodjela povjerenja svi vjeruju serveru koji imenuje svoje pomoćnike kod ovoga načina je važno povjerenje u server.

Mreža povjerenja
Kod ovoga načina mi miješamo gornja dva načina , sa tim da mi ostavljamo korisniku na izbor kome želi vjerovati nekoj stranoj osobi ili meta-itroduceru ili trusted-introduceru kako god želimo .
1. Uvod ili zašto sam odabrao baš Pgp kao temu
2.
Povijesni pregled i nastanak3.
Pogled kroz kriptografiju4.
Kako radi PGP ?5.
Hash funkcije ili digitalni potpisi6.
Digitalni certifikati i njihova distribucija7.
Pitanje pravovaljanosti i povjerenja
Ovo su linkovi koji su meni puno pomogli pri mome traganju :