Filip Parag
30. oktobar 2021.
Uvod
Jedno od osnovnih ljudskih prava koje se u poslednje vreme sve više zanemaruje i zaboravlja je pravo na privatnost. Sredinom prošlog veka, kada su ga Ujedinjene nacije uvele kao osnovno ljudsko pravo, malo ko je mogao da zamisli da će za samo pola veka masovno prisluškivanje i praćenje biti stvar svakodnevice. Dok su ranije pojedinci bili podvrgnuti prismotri tek nakon osnovane sumnje, danas je praksa da se podaci cele populacije nediskriminatorno prikupljaju pod izgovorom da se time smanjuje rizik od potencijalnih zločina i održava veći stepen sigurnosti.
Pravo na privatnost nije radikalna ideja koja treba samo kriminalcima ne bi li imali zaštitu od zakona; to je pravo na čuvanje tajni između prijatelja, pravo da nas davno iskazane misli ne proganjaju kasnije u životu i pravo na život bez autocenzure. Kada su ljudi svesni da ih neko posmatra i analizira sve njihove radnje, često dolazi do promene u ponašanju i straha od osuđivanja.
Kako se danas veliki deo života odvija digitalno, potrebno je znati kako da se odupremo od prismotre i uživamo u ličnoj privatnosti kao što su to ljudi mogli pre informacionog doba. Zato će u daljem tekstu biti ukratko opisano kako funkcionišu neki od alata za šifrovanje podataka i razgovora.
Primer šifrovanja podataka
Za početak, pokazaćemo kako radi Cezarova šifra, kako bi stekli osećaj šta je to enkripcija.
Primer Cezarove šifre za reč „enkripcija” je „ipmćltšlljg”, jer su slova azbuke pomerena za tri mesta udesno, pa azbuka umesto sa ABVGD počinje sa GDĐEŽ. Pre nego što pošaljemo poruku, sa primaocem moramo da se dogovorimo o ključu, odnosno tajnom broju, koji je u datom primeru broj 3. Za posmatrača koji ne zna taj ključ poruka ostaje nečitljiva. Očigledan problem sa algoritmima za šifrovanje kao što je ovaj, je što je ključ veoma jednostavan i može se pogoditi u najviše 30 pokušaja, koliko ima slova u azbuci.

Danas se koriste mnogo komplikovaniji algoritmi za šifrovanje, koji prevazilaze ljudske sposobnosti za računanje, ali se i dalje oslanjaju na to da je vreme za pogađanje ključa vremenski zahtevno, često duže od životnog veka ljudi i računara.
Cilj enkripcije
Ciljevi ovih algoritama su da očuvaju:
- tajnost podataka: treće lice ne može da ih pročita,
- verodostojnost sadržaja: treće lice ne može da izmeni njihov sadržaj,
- autentičnost sagovornika: nije moguće lažirati identitet pošiljaoca i primaoca.
Pored navedenih osnovnih garancija, osobine algoritama se razlikuju i zbog toga oni imaju različite primene.
Simetrično i asimetrično šifrovanje
Simetrično šifrovanje je slično čuvanju papira u sefu: više ljudi koristi isti, unapred dogovoren ključ za otključavanje i zaključavanje. Dovoljno je kompromitovati jednu osobu, odnosno od nje uzeti ključ, da svi podaci budu dostupni trećem licu.
Tradicionalno je ovo bio jedini način šifrovanja, a zahvaljujući nedavnim napredcima u kriptografiji, danas imamo i asimetrično šifrovanje.
Kod asimetričnog šifrovanja svaki sagovornik ima svoj javni i privatni ključ. Pošiljalac pri slanju podatke šifruje javnim ključem primaoca, da bi nakon toga primalac dešifrovao podatke svojim privatnim ključem. Javni ključevi se mogu zamisliti kao otvoreni katanci kojima bilo ko može da zaključa tašnu sa papirima, nakon čega samo osoba sa (privatnim) ključem može da im pristupi. Na ovaj način nije potreban dogovor o zajedničkom tajnom broju, tj. ključu, i sagovornici ne moraju imati međusobno poverenje. U slučaju kompromitovanja jednog od sagovornika, treće lice ima pristup samo podacima koje privatni ključ tog sagovornika dešifruje. Podaci šifrovani ključevima drugih sagovornika ostaju nečitljivi.
Potpisivanje podataka
Poređenje sa katancima i tašnama ne oslikava asimetrično šifrovanje u potpunosti, jer opisuje samo jedan smer šifrovanja. Kod asimetrične enkripcije se svaka poruka šifrovana javnim ključem dešifruje privatnim, a poruka šifrovana privatnim ključem se dešifruje javnim. Šifrovanje privatnim ključem dozvoljava da bilo ko može utvrditi autentičnost izvora, odnosno pošiljaoca te poruke.
Radi lakše i brže provere verodostojnosti uvedeno je kriptografsko potpisivanje, za koje se koriste hash funkcije. One od podataka proizvoljne dužine prave kratak otisak fiksne dužine — checksum. Jednostavan primer otiska bi bio odnos parnih i neparnih cifara u poruci: ako ima više parnih otisak je 1, a ako ih ima isto ili manje od neparnih otisak je 0. Otisak za broj „12345” je 0, a za „12346” je 1. Dobijeni otisak poruke se potpisuje privatnim ključem pošiljaoca, tako da bilo ko sa njegovim javnim ključem može da proveri njenu autentičnost.
Kao što je bio slučaj i kod algoritama za šifrovanje, računari koriste mnogo kompleksnije otiske koje je praktično nemoguće lažirati. Jedan od danas popularnih je Secure Hash Algorithm 256 (SHA-256) čiji je broj mogućih vrednosti sličan broju atoma u vidljivom svemiru.
Razmena ključeva
Problem koji je prisutan kod obe vrste šifrovanja jeste razmena ključeva: kod simetričnog šifrovanja sagovornici moraju da se pre razmene podataka sigurnim putem dogovore o deljenom ključu, a kod asimetričnog šifrovanja treće lice može da objavi svoj javni ključ pod tuđim imenom i presretne sve poruke namenjene tom pojedincu.
Najpouzdaniji sigurni kanal za razmenu ključeva je fizički kontakt, ali on nije uvek pogodan ili moguć — na primer, sagovornici se nalaze na suprotnim stranama sveta i nikada se nisu upoznali. Zbog toga postoji više dogovorenih načina za pouzdanu razmenu ključeva.
Centralizovana razmena ključeva
Jedan od najrasprostranjenijih sistema za razmenu javnih ključeva je centralizovan sistem za šifrovanje saobraćaja na internetu — Transport Layer Security (TLS). Kod ovakvog sistema je dovoljno da sagovornici imaju poverenje u samo jedno sertifikaciono telo (Certificate Authority) koje jemči identitet svih sagovornika i dozvoljava drugim telima od poverenja da vrše istu funkciju.
Kada sagovornik želi da objavi svoj javni ključ, dovoljno je da svoj identitet dokaže jednom od ovih tela, nakon čega se dobija lanac poverenja (Chain of trust) koji sadrži podatke o tome koja sertifikaciona tela garantuju njegov identitet.
Sertifikaciono telo može biti ministarstvo, kompanija koja održava infrastrukturu interneta, registar domena, proizvođač operativnog sistema ili internet pregledača… U slučaju kompromitovanja njihovog ključa, svi lanci poverenja u kojima se nalazi potpis tog tela postaju nepoverljivi.
Decentralizovana razmena ključeva
S druge strane postoji decentralizovana mreža poverenja (Web of trust), koja se najviše koristi za šifrovanje Pretty Good Privacy (PGP) protokolom. U njoj sagovornici međusobno jemče identitet, gde pojedinac ima slobodu da veruje samo određenim sagovornicima i njihovim garancijama o identitetu drugih korisnika.
Prednost ovog sistema je što je demokratizovan i u slučaju kompromitovanja pojedinca se ne gubi poverenje u ceo sistem, kao što je to kod sertifikacionih tela. Mana decentralizovanog pristupa je što od svakog pojedinca zahteva da odabere sagovornike od poverenja i može se dogoditi da ne postoji lanac poverenja između sagovornika iz različitih društvenih krugova.
Poništavanje ključa
Kod centralizovanih sistema se razotkriveni ključevi mogu poništiti tako što ih sertifikaciono telo, koje ih jemči, upiše u spisak poništenih ključeva. Drugi sagovornici pri narednom upitu vezanom za ključ saznaju o prestanku njegove valjanosti.
U decentralizovanom sistemu, vlasnik ključa prilaže zahtev za opoziv javnog ključa na sva mesta gde je ključ objavljen. Drugi sagovornici obaveštenje o opozivu ne dobijaju odmah, nego tek nakon što sledeći put preuzmu ključ sa mesta objave. Ukoliko vlasnik ključa izgubi pristup privatnom ključu, ne može izraditi zahtev i opozvati ključ.
U slučaju da neobavešteni sagovornik poruku šifruje kompromitovanim ključem, napadač može da je pročita i odgovori na nju bez izazivanja sumnje. Zbog toga je poželjno često osvežavati preuzete ključeva kod oba sistema.
Buduća tajnost
U do sada diskutovanim sistemima za šifrovanje, pri kompromitovanju sagovornika ili dešifrovanju jedne poruke, treće lice dobija pristup svim zahvaćenim privatnim podacima i ključevi kojima su se oni šifrovali postaju beskorisni, jer napadač tada može da pored otkrivanja prethodnih podataka pristupi i budućim. Noviji protokoli za šifrovanje imaju ugrađenu zaštitu prethodnih i budućih podataka, te treće lice ima uvid samo u nedavne poruke. Ključevi za šifrovanje su kratkotrajni i menjaju se pri svakoj razmeni podataka, a glavni ključevi, na osnovu kojih se kratkotrajni ključevi izrađuju, i poverenje u identitet sagovornika ostaju zaštićeni.
Poricanje izvora i sadržaja
Nekada mogućnost dokazivanja identiteta pošiljaoca nije poželjna, na primer pri dojavama novinarima, gde je potrebno da su sagovornici sigurni da pričaju sa ciljanom osobom, ali da ne mogu to dokazati. U tim slučajevima standardno asimetrično šifrovanje nije prikladno, nego se koriste međusobno potpisani kratkotrajni ključevi, tako da se nakon razmene poruka ne može utvrditi koji ih je sagovornik napisao.
Drugi vid zaštite osetljivih podataka je nedokaziva simetrična enkripcija. Pri šifrovanju podataka se prave dva ključa: tajni i žrtveni. U slučaju da treće lice primora osobu da dešifruje podatke, upisivanjem žrtvenog ključa će se prikazati lažni podaci bez vrednosti, dok tajni ključ dešifruje stvarne podatke. Na taj način se izbegava otkrivanje podataka pod prisilom i ne može se zasigurno utvrditi njihovo postojanje.
Metapodaci
Obaveštajne službe se zbog sve veće primene šifrovanja sada oslanjaju prvenstveno na metapodatke. To su informacije koje opisuju oblik i putanju šifrovanih podataka kroz mrežu, bez da znaju njihov sadržaj. Na primer, ukoliko Anđela razmenjuje šifrovane poruke sa Bobanom svaki dan, a Boban nakon toga često poruke iste veličine šalje Vladimiru, može se pretpostaviti da prosleđuje Anđeline poruke. Nad telefonskim i internet mrežama se uveliko vrši analiza metapodataka, na osnovu koje državne službe sprečavaju organizovani kriminal ili se proganjaju politički protivnici, a privatne kompanije uglavnom prilagođavaju sadržaj i reklame prikazane korisnicima.
S tim u vezi, za digitalnu privatnost je, pored šifrovanja podataka, potrebno voditi računa i o tragu metapodataka koji ostavljamo za sobom i svesti ga na minimum. Neki od načina za bolju zaštitu anonimnosti su: korišćenje privremenih imejl adresa, isključivanje mreže na telefonu kada se ne koristi, pristupanje internetu kroz servise za prikrivanje sagovornika poput Tor-a i plaćanje papirnim novcem. Kako je problem zaštite anonimnosti kompleksan i prevazilazi obim ovog teksta, on će biti detaljnije opisan drugi put.
Zaključak
Enkripcija je danas dovoljno rasprostranjena i jednostavna za upotrebu da je bilo ko može koristiti. Šifrovanje ličnih podataka i razgovora treba da bude deo svačijeg digitalnog života, a deljenje podataka sa trećim licima treba da bude stvar ličnog izbora. Ukoliko ljudi ne brinu o svojoj privatnosti, države će uvoditi zakone koji dalje nagrizaju pravo na nju, a kompanije će nastaviti da na osnovu prikupljenih podataka o nama utiču na javno mnjenje i naše navike.
Reference
- http://www.facweb.iitkgp.ac.in/~sourav/PGP.pdf
- https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.1800-16.pdf
- https://blog.mailfence.com/openpgp-vs-smime-vs-secure-message-escrow/
- https://signal.org/docs/specifications/doubleratchet/
- https://signal.org/blog/simplifying-otr-deniability/
- https://www.blackhat.com/docs/eu-16/materials/eu-16-Venable-Breaking-Big-Data-Evading-Analysis-Of-The-Metadata-Of-Your-Life.pdf
- https://www.unodc.org/pdf/terrorism/Foreign_Terrorist_Fighters_Handbook/EN_Foreign_Terrorist_Fighters_Ebook.pdf
- https://www.ohchr.org/Documents/Issues/Opinion/Communications/EFF.pdf
- https://www.hrw.org/news/2015/06/17/un-online-anonymity-encryption-protect-rights