Kas yra šifravimas ir kaip tai veikia?
Šifravimas turi ilgą istoriją, kai senovės graikai ir romėnai išsiuntė slaptus pranešimus, pakeisdami tik šifruotus raides slaptu raktu. Prisijunkite prie mūsų, kad gautumėte greitą istorijos pamoką ir sužinokite daugiau apie tai, kaip veikia šifravimas.
Šiandienos „HTG Explains“ leidime, mes suteiksime jums trumpą šifravimo istoriją, kaip ji veikia, ir kai kuriuos įvairių tipų šifravimo pavyzdžius - įsitikinkite, kad taip pat patikrinate ankstesnį leidimą, kuriame paaiškinome, kodėl tiek daug geeks nekenčia interneto „Explorer“.
Vaizdas pagal xkcd, akivaizdu.
Ankstyvosios šifravimo dienos
Senovės graikai naudojo įrankį, vadinamą „Scytale“, kad galėtų greičiau užšifruoti savo pranešimus, naudodami perkėlimo šifrą - jie tiesiog suvyniotų pergamento juostą aplink cilindrą, užrašytų pranešimą, o tada, kai išrišimas nebūtų prasmingas.
Šis šifravimo metodas, žinoma, gali būti gana nesudėtingas, tačiau tai vienas pirmųjų šifravimo pavyzdžių, realiai naudojamų realiame pasaulyje.
Julius Caesar per savo laiką naudojo šiek tiek panašų metodą, perkeldamas kiekvieną abėcėlės raidę į dešinę arba į kairę keleto pozicijų - šifravimo metodo, vadinamo Cezario šifru. Pvz., Naudodami žemiau pateiktą pavyzdžių šifrą rašykite „GEEK“ kaip „JHHN“.
Paprastas: ABCDEFGHIJKLMNOPQRSTUVWXYZ
Cipher: DEFGHIJKLMNOPQRSTUVWXYZABC
Kadangi šifrą žinojo tik numatomas pranešimo gavėjas, kitam asmeniui būtų sunku iššifruoti pranešimą, kuris pasirodytų kaip gibberis, bet asmuo, kuris turėjo šifrą, galėtų lengvai iššifruoti ir skaityti.
Kiti paprasti šifravimo šifrai, pvz., „Polybius“ aikštė, naudojo polialfabetinį šifrą, kuriame kiekviena raidė su atitinkamomis skaitmeninėmis pozicijomis viršutinėje ir šoninėje pusėje nurodė, kur raidės padėtis buvo.
Naudodami tokią lentelę, kaip ir aukščiau, rašote raidę „G“ kaip „23“, arba „GEEK“ kaip „23 31 31 43“.
Enigma Machine
Antrojo pasaulinio karo metu vokiečiai naudojo „Enigma“ mašiną, kad perduotų šifruotus perdavimus pirmyn ir atgal, kurie užtruko metus, kol lenkai sugebėjo nulaužti žinutes, ir išspręsti sąjungininkų pajėgas, kurios buvo svarbios jų pergalei.
Šiuolaikinio šifravimo istorija
Šiuolaikiniai šifravimo būdai gali būti labai nuobodus dalykas, todėl vietoj to, kad juos tiesiog paaiškintume žodžiais, sudėjome komiksą, kuriame kalbama apie šifravimo istoriją, įkvėptą Jeffo Moserio lazdų skaičiaus vadovu AES.. Pastaba: aiškiai mes negalime perteikti visko apie šifravimo istoriją komiksų juostoje.
Tomis dienomis žmonės neturi tinkamo šifravimo metodo, kad užtikrintų savo elektroninį ryšį.
Luciferis buvo pavadinimas, suteiktas kelioms ankstyviausioms civilinių blokų šifrai, kuriuos sukūrė Horst Feistel ir jo kolegos IBM..
Duomenų šifravimo standartas (DES) yra blokinis šifras (pasidalijamojo slapto šifravimo forma), kurį 1976 m. Nacionalinis standartų biuras pasirinko kaip oficialų federalinės informacijos apdorojimo standartą (FIPS) Jungtinėse Valstijose ir kuris vėliau buvo plačiai paplitęs naudoti tarptautiniu mastu.
Susirūpinimas dėl saugumo ir palyginti lėtai veikiančios DES programinės įrangos paskatino mokslininkus pasiūlyti įvairius alternatyvius blokavimo šifravimo dizainus, kurie prasidėjo devintojo dešimtmečio pabaigoje ir dešimtojo dešimtmečio pradžioje: pavyzdžiai: RC5, Blowfish, IDEA, NewDES, SAFER, CAST5 ir FEAL
Rijndael šifravimo algoritmą JAV vyriausybė priėmė kaip standartinį raktų šifravimą, arba Advanced Encryption Standard (AES). 2001 m. Lapkričio 26 d. Nacionalinis standartų ir technologijų institutas (NIST) paskelbė AES kaip JAV FIPS PUB 197 (FIPS 197) po penkerių metų standartizacijos proceso, kurio metu buvo pristatyti ir įvertinti penkiolika konkuruojančių dizainų, kol Rijndael buvo pasirinktas kaip labiausiai tinkamas šifravimo algoritmas.
Šifravimo algoritmo našumas
Yra daug šifravimo algoritmų, ir jie visi tinka skirtingiems tikslams - dvi pagrindinės savybės, kurios identifikuoja ir išskiria vieną šifravimo algoritmą, yra jos gebėjimas apsaugoti apsaugotus duomenis nuo atakų ir jos greitis bei efektyvumas..
Kaip geras skirtingų šifravimo tipų greičio skirtumo pavyzdys, galite naudoti „TrueCrypt“ apimties kūrimo vedlį, kaip matote, AES yra greičiausias sparčiojo šifravimo tipas.
Yra ir lėčiau bei greičiau šifravimo metodai, ir jie visi tinka skirtingiems tikslams. Jei tiesiog bandote iššifruoti nedidelį duomenų vienetą kas kartais, galite sau leisti naudoti didžiausią galimą šifravimą arba net du kartus šifruoti įvairiais šifravimo būdais. Jei jums reikia greičio, tikriausiai norite eiti su AES.
Norėdami gauti daugiau informacijos apie įvairių tipų šifravimo lyginamąją analizę, patikrinkite Vašingtono universiteto Šv. Liudviko ataskaitą, kurioje jie bandė atlikti skirtingus testus, ir paaiškino, kad tai buvo labai paprasta..
Šiuolaikinio šifravimo tipai
Visi išgalvoti šifravimo algoritmai, apie kuriuos kalbėjome anksčiau, dažniausiai naudojami dviem skirtingiems šifravimo tipams:
- Simetriniai raktų algoritmai šifravimui ir iššifravimui naudoti susijusius arba identiškus šifravimo raktus.
- Asimetriniai raktų algoritmai naudoti skirtingus raktus šifravimui ir iššifravimui - tai paprastai vadinama viešojo rakto kriptografija.
Simetrinis raktų šifravimas
Norėdami paaiškinti šią sąvoką, naudosime Wikipedijoje aprašytą pašto paslaugų metaforą, kad suprastume, kaip veikia simetriški raktų algoritmai.
Alice savo slaptą pranešimą įdeda į langelį ir užrakina dėžutę naudodami spyną, prie kurios ji turi raktą. Tada ji siunčia langelį į Bobą įprastu paštu. Kai Bobas gauna langelį, jis naudoja tą pačią „Alice“ rakto kopiją (kurią jis kažkaip gavo anksčiau, galbūt akis į akį), kad atidarytų langelį ir perskaitytų pranešimą. Tada Bobas gali naudoti tą patį spyną, kad nusiųstų slaptą atsakymą.
Simetrinių raktų algoritmai gali būti suskirstyti į srauto šifrus ir blokuoti šifravimo srautų šifravimą vienu metu užšifruojant pranešimo bitus, o blokuoti šifrai - tai daugybė bitų, dažnai 64 bitų blokais, ir užšifruoti juos kaip vieną vienetą. Yra daug skirtingų algoritmų, kuriuos galite rinktis iš populiaresnių ir gerbiamų simetriškų algoritmų: „Twofish“, „Serpent“, „AES“ („Rijndael“), „Blowfish“, „CAST5“, „RC4“, „TDES“ ir „IDEA“.
Asimetrinis šifravimas
Asimetrinėje raktų sistemoje Bobas ir Alisė turi atskirus užraktus, o ne vieną spyną su keliais raktais iš simetriško pavyzdžio. Pastaba: tai, žinoma, yra labai supaprastintas pavyzdys, kaip jis iš tikrųjų veikia, o tai yra daug sudėtingesnė, tačiau gausite bendrą idėją.
Pirma, Alice prašo, kad Bobas atsiųstų savo atvirą spyną įprastu paštu, išlaikydamas savo raktą. Kai Alisė ją gauna, ji naudoja jį užrakinti langelį, kuriame yra jos pranešimas, ir siunčia užrakintą langelį į Bobą. Tada Bobas gali atrakinti langelį su savo raktu ir perskaityti pranešimą iš Alice. Jei norite atsakyti, Bobas taip pat turi gauti „Alice“ atvirą spyną, kad užrakintų dėžutę prieš išsiunčiant ją atgal.
Esminis privalumas asimetrinėje raktų sistemoje yra tas, kad Bobas ir Alisė niekada nereikia siųsti savo raktų kopijos vieni kitiems. Tai neleidžia trečiajai šaliai (galbūt, pavyzdžiui, korumpuotam pašto darbuotojui) kopijuoti raktą, kol jis yra tranzitu, todėl trečioji šalis gali šnipinėti visais ateities pranešimais, siunčiamais tarp Alice ir Bob. Be to, jei Bobas būtų neatsargus ir leido kitam kopijuoti jo „Alice“ pranešimai Bobui pakenktų, tačiau „Alice“ pranešimai kitiems žmonėms liktų slapti, nes kiti žmonės suteiks Alice'ui skirtingus užraktus naudoti.
Asimetrinis šifravimas naudoja skirtingus raktus šifravimui ir iššifravimui. Pranešimo gavėjas sukuria privatų raktą ir viešąjį raktą. Viešasis raktas yra paskirstytas tarp pranešimų siuntėjų ir šifravimui naudojamas viešasis raktas. Gavėjas naudoja savo privatųjį raktą užšifruotus šifruotus pranešimus, naudodami gavėjo viešąjį raktą.
Štai kodėl šifravimas yra vienas iš pagrindinių privalumų, palyginti su simetriniu šifravimu. Nereikia nieko slapto (kaip mūsų šifravimo rakto ar slaptažodžio) siųsti per nesaugų kanalą. Jūsų viešasis raktas išeina į pasaulį - tai ne paslaptis ir ji neturi būti. Jūsų asmeninis raktas gali būti patogus ir jaukus jūsų asmeniniame kompiuteryje, kur jį sukūrėte, jis niekada neturėtų būti siunčiamas el..
Kaip šifravimas apsaugo ryšį internete
Daugelį metų SSL („Secure Sockets Layer“) protokolas apsaugo žiniatinklio sandorius, naudodamas šifravimą tarp žiniatinklio naršyklės ir žiniatinklio serverio..
Pati SSL konceptualiai gana paprasta. Jis prasideda, kai naršyklė prašo saugaus puslapio (paprastai https: //)
Žiniatinklio serveris siunčia savo viešąjį raktą su sertifikatu.
Naršyklė patikrina, ar sertifikatą išdavė patikima šalis (paprastai patikimas šakninis CA), kad sertifikatas tebegalioja ir kad sertifikatas yra susijęs su svetaine, su kuria buvo susisiekta.
Tada naršyklė naudoja viešąjį raktą, kad užšifruotų atsitiktinį simetrišką šifravimo raktą ir siunčia jį į serverį, kuriam reikalingas užšifruotas URL, taip pat kiti užšifruoti http duomenys.
Žiniatinklio serveris iššifruoja simetrinį šifravimo raktą naudodamas savo privatųjį raktą ir naudoja naršyklės simetrinį raktą, kad iššifruotų URL ir http duomenis.
Žiniatinklio serveris siunčia reikalaujamą html dokumentą ir HTTP duomenis, užšifruotus su naršyklės simetrišku raktu. Naršyklė iššifruoja http ir html dokumentą naudodama simetrinį raktą ir parodo informaciją.
Ir dabar jūs galite saugiai nusipirkti tą „eBay“ elementą, kurio tikrai nereikia.
Ar išmokote ką nors?
Jei tai padarėte, mes baigiame ilgą kelionę, kad suprastume šifravimą ir šiek tiek apie tai, kaip ji veikia, pradedant nuo pradinių šifravimo dienų su graikais ir romėnais, Luciferio kilimu ir galiausiai kaip SSL naudoja asimetrinį ir simetrišką šifravimą, kad padėtų jums nusipirkti šį pūkuotą rožinį bunny eBay.
Mes esame dideli šifravimo gerbėjai čia „How-To Geek“, ir mes turime daug įvairių būdų, kaip padaryti tokius dalykus:
- Darbo su „TrueCrypt“ pradžia (saugoti savo duomenis)
- Pridėti automatinį svetainės šifravimą „Firefox“
- „BitLocker To Go“ šifruoja „Windows 7“ nešiojamus „Flash“ diskus
- Kaip apsaugoti savo „Linux“ kompiuterį šifruojant standųjį diską
- Pridėti šifravimo / iššifravimo parinktis į „Windows 7 / Vista“ dešiniuoju pelės mygtuku spustelėkite meniu
- Darbo su „TrueCrypt“ disko šifravimu „Mac OS X“ pradžia
Žinoma, šifravimas yra pernelyg sudėtingas dalykas, kuris tikrai paaiškina viską. Ar mes praleidome kažką svarbaus? Atkreipkite dėmesį į savo kolegų skaitytojų žinias.