Viestisi, HTTPS-protokollasivustosi, Internet-palvelujen valtuutus, suojattu tiedostojen tallennus ja joskus jopa herätyskellot – kaikki nämä asiat käyttävät PGP:tä. Mutta mikä se sitten on? Wikipedia antaa seuraavan määritelmän:
Pretty Good Privacy ( PGP ) on salausohjelma , joka tarjoaa kryptografista yksityisyyttä ja todennusta tiedonsiirtoon . PGP:tä käytetään tekstien, sähköpostien , tiedostojen, hakemistojen ja kokonaisten levyosien allekirjoittamiseen , salaamiseen ja salauksen purkamiseen sekä sähköpostiviestinnän turvallisuuden parantamiseen. Phil Zimmermann kehitti PGP:n vuonna 1991.
PGP ja vastaavat ohjelmistot noudattavat OpenPGP-standardia (RFC 4880), avointa standardia tietojen salaamiseen ja salauksen purkamiseen. Nykyaikaiset PGP-versiot ovat yhteensopivia GnuPG:n ja muiden OpenPGP-yhteensopivien järjestelmien kanssa.
Se on selvä sanoin, mutta katsotaan kuinka se toimii.
Kuvitellaan, että meillä on käyttäjä A ja käyttäjä B. Heidän on aloitettava kommunikointi, mutta niin, ettei kukaan saa selville kirjeenvaihtonsa sisällöstä. Tässä tulee salaus käyttöön.
Nykyaikaiset järjestelmät käyttävät Rjindael (tällä hetkellä AES), DES, RC4 ja joitain muita algoritmeja.
En mene heidän työn yksityiskohtiin. Sinun tarvitsee vain tietää niistä, että jos annat heille syötetiedot ja avaimen, saat salatun tavutaulukon, joka voidaan kääntää samalla avaimella. Riippulukon tavoin ne avautuvat ja sulkeutuvat, mutta ilman avainta se on melkein mahdotonta tehdä (ei ole tehokkaita tapoja rikkoa näitä algoritmeja). Tällaisia salausalgoritmeja kutsutaan symmetrisiksi salausalgoritmeiksi.
Ja se on vastaus, eikö olekin? Anna käyttäjän A antaa avaimensa käyttäjälle B. Sitten voit salata kirjeenvaihtosi molemmilta puolilta, eikä kukaan tiedä, mitä he kirjoittavat toisilleen.
Tietenkin, jos molemmat käyttäjät tuntevat toisensa tosielämässä, toinen voi antaa toiselle flash-aseman, jossa on avain.
Mutta Internetissä tämä on mahdotonta, käyttäjiä ei ole kaukana kahdesta, ja yksi palvelu voi palvella miljoonia erilaisia käyttäjiä päivässä. Henkilökohtaista salausavainta ei myöskään ole aina mahdollista antaa kaikille, joiden kanssa olet henkilökohtaisesti kokouksen aikana.
Koska yksityisen avaimesi välittäminen samasta AES:stä on kuin tietoturvasi vaarantaminen, herää kysymys - kuinka käyttäjä A voi välittää avaimensa turvallisesti käyttäjälle B?
Ratkaisu on allekirjoittaa avaimet ja sähköpostit toisella avaimella! Mutta vain tämä toinen avain on peräisin epäsymmetrisestä salausalgoritmista. Olemus on sama kuin symmetrisessä, mutta nyt lukosta ei ole yhtä avainta - niitä on kaksi. Toinen on "julkinen", tiedot voidaan vain salata sillä ja toinen on "yksityinen", joka pystyy purkamaan parinsa julkisella avaimella käsittelemien tietojen salauksen.
Tällaisen prosessin avulla voit vapaasti julkaista julkisen avaimesi turvallisuuttasi vaarantamatta.
Tämä on "sähköisten allekirjoitusten" toimintaperiaatteen perusta.
Niitä tarvitaan, jotta tiedon käyttäjä B voi olla varma, että tiedot on salattu käyttäjälle A kuuluvalla avaimella ja päinvastoin.
Allekirjoitus luodaan alkuperäisen tiedon hashista ja liitetään lähetettyyn pakettiin.
Vastaanottaja purkaa allekirjoituksen salauksen julkisella avaimella, vertaa sitä vastaanotetun tiedon hajautusarvoon, ja jos ne täsmäävät, lähettäjä on aito käyttäjä eikä huijari.
OK, olemme selvittäneet kuinka suorittaa kättely (kättely on suojatun viestintäkanavan muodostamisprosessi).
Kuvittele nyt, että käyttäjien A ja B välillä on toinen käyttäjä, C.
"C" on hyökkääjä, jonka on tiedettävä A:n ja B:n viestinnän yksityiskohdat.
Hän luo kaksi avainparia allekirjoittamista varten ja kaksi muuta avainta tietojen salaamiseksi.
Käyttäjälle A hän esittelee itsensä käyttäjänä B ja käyttäjälle B käyttäjänä A. Tosiasia on, että Internetin todellisuudessa ei voi olla 100 % varma siitä, että tuloksena oleva sähköinen allekirjoitus ja avain ovat aito.
Joten jos tällainen skenaario on todella mahdollinen, eivätkö A ja B ole turvallisia?
On pelastus! Nyt olemme saavuttaneet pääaiheen - "Luottamuksen Webin".
Tämä verkko koostuu siitä, että kaikki käyttäjät tietävät toistensa sähköisten allekirjoitusten julkiset avaimet ja jokaiselta verkon jäseneltä voidaan kysyä: ”Kuluuko tämä avain, jonka käyttäjä B lähetti minulle, hänelle eikä jollekin tunkeilija?"
Tässä tapauksessa luottamusverkosto voi olla erittäin tehokas pienelläkin osallistujamäärällä, koska jos toinen tuntee toisen, kolmas ensimmäiseltä kysymällä tietää toisen julkisen avaimen. Kuten tammen juuret, Web of Trust on kietoutunut yhteen, jolloin käyttäjät voivat jakaa tietoja.
Nyt käyttäjämme C ei voi enää esiintyä muina käyttäjinä. Vain jos hän yrittää, käyttäjä A kysyy joltain verkon jäseniltä, että joku seisoo hänen ja käyttäjän B välissä ja sieppaa viestejä.
Yhdistetään nyt kaikki nämä käsitteet yhdeksi yksinkertaiseksi kaavioksi.
Käyttäjä A ja käyttäjä B ovat molemmat samassa luottamusverkossa ja haluavat aloittaa suojatun viestinnän.
"A" pyytää useilta verkon jäseniltä "B:n" julkista avainta. Tällä avaimella hän lähettää kättelypyynnön käyttäjälle B. "B" puolestaan oppii käyttäjän A julkisen avaimen, luo symmetrisen avaimen jatkoviestintää varten ja lähettää symmetrisen avaimen käyttäjän A julkista avainta käyttäen. takaisin.
Kaikki tämän järjestelmän viestit on myös allekirjoitettu sähköisillä allekirjoituksilla.
Tämän viestinnän ansiosta ulkopuoliset häiriöt eivät ole mahdollisia, ja käyttäjämme voivat vihdoin aloittaa kirjeenvaihdon.
Ei ole mitään järkeä käyttää tätä mallia manuaalisesti - se on jo sisällytetty kaikkiin mahdollisiin Internet-yhteyskäytäntöihin selaimissasi ja sovelluksissasi.
Mikään järjestelmä ei ole täydellinen. MITM (mies keskellä, meidän tapauksessamme - tapa väärentää varmenteita tarkastamalla väärennetyt avaimet allekirjoituksilla, joihin uhrin käyttäjän selain luottaa) hyökkäyksiä tehdään edelleen tänään.
Mutta jos näet "vihreän lukon" selaimesi osoitepalkin lähellä, tietosi ovat PGP-algoritmin turvallisissa käsissä.