Pereiti prie turinio
Pagrindinis » IT ir technologijos » Šifravimo technologijos veikimas

Šifravimo technologijos veikimas

Kodėl mes apskritai šifruojame informaciją?

Prisiminkite, kaip vaikystėje rašydavote slaptas žinutes draugams, kur kiekviena raidė buvo pakeista kita arba naudojote kokį nors slaptą kodą. Na, šifravimas iš esmės yra tas pats dalykas, tik nepalyginamai sudėtingesnis ir skirtas apsaugoti tikrai svarbią informaciją. Kai siunčiate banko kortelės duomenis internetu arba rašote asmeninę žinutę, nenorite, kad kas nors pašalinis galėtų ją perskaityti, tiesa?

Šifravimo technologijos atsirado ne vakar. Dar senovės romėnai naudojo tai, kas dabar vadinama Cezario šifru – paprasčiausią raidžių poslinkio sistemą. Jei Cezaris norėjo parašyti „ATAKA”, jis galėjo pasislinkti tris raides į priekį ir gauti „DWDND”. Paprasta? Taip. Efektyvu prieš du tūkstančius metų? Irgi taip. Šiandien tokį šifrą nulaužtų net mokyklinio amžiaus vaikas per kelias minutes.

Šiuolaikinis pasaulis yra visiškai kitoks. Mes siunčiame milijonus žinučių per sekundę, pervedame pinigus, dalijamės nuotraukomis, laikome slapčiausius dokumentus debesyse. Visa tai reikalauja tokio šifravimo lygio, kuris būtų praktiškai neįmanomas nulaužti net su galingiausiomis šiandien žinomomis technologijomis.

Kaip veikia šiuolaikinis šifravimas: matematikos stebuklai

Šiuolaikinis šifravimas remiasi sudėtingomis matematinėmis operacijomis, kurias atlikti viena kryptimi yra paprasta, o atgal – beveik neįmanoma. Įsivaizduokite, kad turite du didelius pirminius skaičius, tarkime 89 ir 97. Juos padauginti lengva – gausite 8633. Bet dabar pabandykite atvirkščią procesą: turite skaičių 8633 ir turite rasti tuos du pirminius skaičius, iš kurių jis susidaro. Jei skaičiai maži, tai paprasta. Bet kai kalbame apie skaičius, turinčius šimtus skaitmenų, net superkompiuteriams prireiktų tūkstančių metų tokią užduotį išspręsti.

Būtent šis principas – lengva viena kryptimi, beveik neįmanoma kita – yra šiuolaikinio šifravimo pagrindas. Tai vadinama asimetriniu šifravimu arba viešojo rakto kriptografija. Turite du raktus: viešąjį ir privatųjį. Viešuoju raktu bet kas gali užšifruoti žinutę jums, bet tik jūs su savo privačiu raktu galite ją iššifruoti.

Praktiškai tai atrodo taip: kai prisijungiate prie banko svetainės, jūsų naršyklė gauna banko viešąjį raktą. Jūsų kompiuteris sugeneruoja atsitiktinį simetrinį raktą (apie tai vėliau), užšifruoja jį banko viešuoju raktu ir nusiunčia bankui. Tik bankas su savo privačiu raktu gali jį iššifruoti. Dabar jūs abu turite bendrą slaptą raktą, kuriuo galite šifruoti visą tolesnę komunikaciją.

Simetrinis ir asimetrinis šifravimas: du skirtingi pasauliai

Simetrinis šifravimas yra kaip paprastas spynos raktas. Tas pats raktas užrakina ir atrakina duris. Jei norite kam nors perduoti užšifruotą žinutę, jūs abu turite turėti tą patį raktą. Problema akivaizdi – kaip saugiai perduoti tą raktą? Jei kas nors jį perimtų, viskas žlugtų.

Populiariausi simetriniai algoritmai šiandien yra AES (Advanced Encryption Standard) ir ChaCha20. AES yra tikras šifravimo darbo arklys – juo šifruojama beveik viskas, nuo jūsų kietojo disko iki WiFi ryšio. Jis dirba su duomenų blokais, kiekvieną bloką perleisdamas per keliolika sudėtingų transformacijų, kurios maišo ir keičia baitus tokiu būdu, kad rezultatas atrodo kaip visiškai atsitiktinė informacija.

AES gali naudoti skirtingo ilgio raktus: 128, 192 arba 256 bitus. AES-256 šiandien laikomas praktiškai neįveikiamu. Kad suprastumėte mastą: jei bandytumėte išbandyti visus galimus 256 bitų raktus, net jei turėtumėte kompiuterį, galintį išbandyti trilijoną raktų per sekundę, jums prireiktų daugiau laiko nei visatos amžius.

Asimetrinis šifravimas, kaip jau minėjau, naudoja du skirtingus raktus. RSA yra seniausias ir plačiausiai žinomas toks algoritmas, nors šiandien vis dažniau naudojami modernesnės elipsinių kreivių algoritmai, tokie kaip ECDSA ar Ed25519. Jie pasiekia tokį patį saugumo lygį su daug trumpesniais raktais, o tai reiškia greitesnį veikimą ir mažesnį duomenų kiekį.

Kaip jūsų naršyklė žino, kad svetainė tikrai ta, kuria apsimeta

Matote tą spynelės ikoną naršyklės adreso juostoje? Ji reiškia, kad naudojamas HTTPS protokolas – HTTP su šifravimu. Bet kaip žinote, kad tikrai bendraujate su savo banku, o ne su kažkokiu sukčiumi, kuris tik apsimeta banku?

Čia ateina į žaidimą skaitmeniniai sertifikatai ir sertifikavimo institucijos. Kai svetainė nori gauti HTTPS sertifikatą, ji kreipiasi į patikimą sertifikavimo instituciją (CA – Certificate Authority). Ši institucija patikrina, ar svetainė tikrai priklauso tam, kas teigia esąs jos savininkas, ir tada išduoda skaitmeninį sertifikatą, kurį pasirašo savo privačiu raktu.

Jūsų naršyklėje yra įdiegtas sąrašas patikimų sertifikavimo institucijų viešųjų raktų. Kai prisijungiate prie svetainės, ji atsiunčia savo sertifikatą. Jūsų naršyklė patikrina, ar tas sertifikatas pasirašytas vienos iš patikimų institucijų, ar nepraslinko galiojimo laikas, ar nesulaukė atšaukimo. Jei viskas gerai – matote žalią spynelę ir galite ramiai bendrauti.

Visa ši sistema vadinama PKI (Public Key Infrastructure) ir ji yra interneto saugumo stuburas. Be jos nebūtų įmanomas saugus elektroninis bankininkavimas, internetinė prekyba ar bet kokia konfidenciali komunikacija internetu.

Kodėl net NSA negali perskaityti jūsų WhatsApp žinučių

Pastaraisiais metais populiarėjo tai, kas vadinama „end-to-end” šifravimu. Tai reiškia, kad žinutė šifruojama jūsų įrenginyje ir iššifruojama tik gavėjo įrenginyje. Net serveris, per kurį keliauja žinutė, mato tik neskaitomą šifruotą tekstą.

WhatsApp, Signal, Telegram (slaptieji pokalbiai) ir kitos programėlės naudoja Signal protokolą arba panašius sprendimus. Kiekviena žinutė šifruojama unikaliu raktu, kuris niekada nesikartoja. Net jei kažkas sugebėtų perimti ir iššifruoti vieną žinutę, tai nepadėtų iššifruoti kitų.

Čia naudojamas išmanus triukas, vadinamas Diffie-Hellman rakto keitimu. Du žmonės gali susitarti dėl bendro slapto rakto viešu kanalu, net jei kas nors klausosi viso pokalbio. Skamba neįmanoma? Bet matematika leidžia tai padaryti. Principas panašus į tai, lyg du žmonės viešai maišytų dažus: kiekvienas turi savo slaptą spalvą, jie pasidalina viešomis spalvomis, sumaišo su savo slaptomis ir gauna tą pačią galutinę spalvą, nors niekas kitas negali jos atkurti.

Kvantiniai kompiuteriai: ar mūsų šifravimas greitai taps nenaudingas

Dabar truputį bauginančios ateities. Kvantiniai kompiuteriai dirba visiškai kitokiais principais nei įprasti. Jie gali atlikti tam tikrus skaičiavimus eksponentiškai greičiau. Ir vienas iš tų dalykų, kuriuos jie gali daryti gerai, yra didžiųjų skaičių faktorizavimas – būtent tas dalykas, ant kurio pastatytas RSA šifravimas.

Peter Shor 1994 metais sukūrė algoritmą, kuris leistų pakankamai galingam kvantiniam kompiuteriui nulaužti RSA per protingą laiką. Gera žinia – tokių kompiuterių dar neturime. Bloga žinia – kai juos turėsime, daug šiandien šifruotos informacijos taps perskaitoma.

Dar blogesnė žinia: kai kurios vyriausybės jau dabar renka didžiulius kiekius šifruotų duomenų, tikėdamosi juos iššifruoti ateityje, kai turės kvantinių kompiuterių. Tai vadinama „harvest now, decrypt later” strategija.

Bet kriptografai nesnaudžia. Jau kuriami post-kvantiniai šifravimo algoritmai, kurie turėtų būti atsparūs net kvantiniams kompiuteriams. NIST (Nacionalinis standartų ir technologijų institutas JAV) jau pradėjo standartizuoti tokius algoritmus. Artimiausiais metais pradėsime matyti jų diegimą realiose sistemose.

Praktiniai patarimai: kaip paprastam žmogui pasinaudoti šifravimu

Nebūtinai reikia būti kriptografu, kad apsaugotumėte savo duomenis. Štai keletas paprastų dalykų, kuriuos galite padaryti jau šiandien:

Šifruokite savo kietąjį diską. Windows turi BitLocker, Mac – FileVault, Linux – LUKS. Jei kas nors pavogs jūsų kompiuterį, be slaptažodžio jis negalės pasiekti jūsų failų. Tai užtrunka vieną kartą 20 minučių įjungti ir paskui apie tai net negalvojate.

Naudokite VPN viešuose WiFi tinkluose. Viešas WiFi kavinėje ar oro uoste yra kaip atvirta atvirutė – bet kas gali matyti, ką darote. VPN sukuria šifruotą tunelį tarp jūsų įrenginio ir VPN serverio, todėl niekas vietiniame tinkle negali sekti jūsų veiklos.

Patikrinkite, ar svetainės naudoja HTTPS. Niekada neįveskite slaptažodžių ar mokėjimo duomenų svetainėse, kurios neturi tos spynelės ikoniukos. Šiuolaikinės naršyklės net įspėja, kai bandote tai padaryti, bet vis tiek būkite budrūs.

Naudokite žinučių programėles su end-to-end šifravimu. Signal yra aukso standartas, bet WhatsApp irgi neblogas. Venkite paprastų SMS žinučių svarbiems dalykams – jos nešifruojamos.

Atsarginės kopijos irgi turėtų būti šifruotos. Jei laikote atsargines kopijas debesyje ar išoriniame diske, įsitikinkite, kad jos šifruotos. Daugelis atsarginių kopijų programų tai daro automatiškai, bet patikrinkite nustatymus.

Kai šifravimas susiduria su realiu pasauliu

Šifravimas nėra tik technologija – tai ir politinis klausimas. Vyriausybės visame pasaulyje nuolat bando įtikinti, kad turėtų būti „galinės durys” šifravime, leidžiančios teisėsaugai pasiekti duomenis. Skamba protingai, kol nesuprantate, kad tokių galinių durų negalima padaryti tik „geriesiems”. Jei egzistuoja silpnoji vieta, ją gali išnaudoti bet kas.

Australija priėmė įstatymus, reikalaujančius, kad technologijų kompanijos padėtų teisėsaugai. Kinija reikalauja, kad visos šifravimo sistemos būtų prieinamos vyriausybei. JAV FBI nuolat skundžiasi, kad šifravimas trukdo tyrimams. Bet kriptografai vieningai sutaria: nėra būdo sukurti saugaus šifravimo su galinėmis durimis.

Kita vertus, šifravimas leidžia veikti ir nusikaltėliams, teroristams, vaikų išnaudotojams. Tai sudėtinga etinė dilema, kuriai nėra paprastų atsakymų. Bet istorija rodo, kad silpninant šifravimą nukenčia visi – paprasti žmonės, verslai, net pati vyriausybė, kurios komunikacijos irgi tampa pažeidžiamos.

Dar vienas įdomus aspektas – šifravimas tampa vis svarbesnis autoritariniuose režimuose. Žurnalistai, aktyvistai, disidentai gali bendrauti saugiai tik dėka stipraus šifravimo. Tai įrankis, kuris gina žmogaus teises ir laisvę visame pasaulyje.

Šifravimas kaip kasdienybės dalis

Gražiausia šifravimo dalis yra ta, kad dauguma žmonių jį naudoja net nesuvokdami. Kai prisijungiate prie banko, kai perkate internetu, kai siunčiate nuotrauką draugui – visur fone dirba sudėtingi šifravimo algoritmai, apsaugantys jūsų informaciją. Tai tapo tokia natūralia interneto dalimi, kad mes apie tai net negalvojame.

Šifravimo technologijos nuolat tobulėja. Tai, kas prieš dešimtmetį atrodė neįveikiama, šiandien gali būti nulaužta per kelias dienas. Todėl kriptografai nuolat kuria naujus algoritmus, ilgesnius raktus, geresnius protokolus. Tai niekada nesibaigianti lenktynės tarp tų, kurie kuria apsaugą, ir tų, kurie bando ją įveikti.

Gal ir nereikia žinoti visų matematinių detalių, kaip veikia AES ar RSA. Bet suprasti pagrindinius principus – kad jūsų duomenys gali būti apsaugoti taip, kad niekas kitas jų nematytų – yra svarbu šiuolaikiniame pasaulyje. Šifravimas nėra kažkas, ko reikėtų bijoti ar vengti. Tai įrankis, kuris daro internetą saugesniu, privatesniu ir laisvesniu visiems mums.