Šifriranje ima dugu povijest koja seže do kada su drevni Grci i Rimljani poslali tajne poruke zamjenom slova koja se mogu dešifrirati samo tajnim ključem. Pridružite nam se za kratku lekciju povijesti i saznajte više o načinu na koji šifriranje funkcionira.
U današnjem izdanju HTG Objašnjenja dat ćemo vam kratku povijest šifriranja, kako to funkcionira, i neke primjere različitih vrsta šifriranja - provjerite jeste li također provjerili prethodno izdanje, gdje smo objasnili zašto toliko geek mrze internet Istraživač.
Slika od xkcd, očito.
Drevni Grci koristili su alat nazvan Scytale kako bi brže šifrirali svoje poruke pomoću šifriranja transpozicije - jednostavno bi umotali traku pergamenta oko cilindra, napisali poruku, a onda kad se odmotao, ne bi imao smisla.
Naravno, ova metoda enkripcije može se lako razbiti, ali to je jedan od prvih primjera enkripcije koji se zapravo koristi u stvarnom svijetu.
Julius Caesar tijekom svojega vremena koristio je nešto sličnu metodu pomicanjem svakog slova abecede desno ili lijevo od brojnih pozicija - tehnika šifriranja poznata kao Cezarov šifra. Na primjer, pomoću donjeg primjernog šifra pisali biste "GEEK" kao "JHHN".
Jednostavno: ABCDEFGHIJKLMNOPQRSTUVWXYZ
Šifra: DEFGHIJKLMNOPQRSTUVWXYZABC
Budući da je samo namjeravani primatelj poruke poznavao šifru, teško bi sljedeću osobu mogla dekodirati poruku koja bi se pojavila kao gibajući, ali osoba koja je imala šifru mogla bi je lako dekodirati i čitati.
Ostala jednostavna šifriranja šifriranja poput polja Polybius upotrijebili su polyalphabetic cipher koji je na svakom pismu navodio odgovarajuće numeričke pozicije preko vrha i strane kako bi se utvrdilo gdje je pozicija slova.
Pomoću tablice kao što je gore navedeno slovo "G" kao "23" ili "GEEK" kao "23 31 31 43".
Enigma stroj
Tijekom Drugog svjetskog rata, Nijemci su koristili stroj Enigma kako bi prošli šifrirane prijenose, što je godinama prije nego što su poljski mogli slomiti poruke i dati rješenje savezničkim snagama koje su bile od ključne važnosti za njihovu pobjedu.
Neka se suočimo s njom: moderne tehnike šifriranja mogu biti iznimno dosadne teme, pa smo umjesto da ih jednostavno objasnimo riječima, sastavili smo komičnu traku koja govori o povijesti šifriranja, nadahnutom Jeff Moserovim vodičem o štapiću AES-a. Napomena: jasno da ne možemo prenijeti sve o povijesti šifriranja u stripu.
U one dane, ljudi nemaju dobar način šifriranja kako bi osigurali svoju elektronsku komunikaciju.
Lucifer je dobio ime nekoliko najranijih civilnih blokova šifriranja koje je razvio Horst Feistel i njegovi kolege iz IBM-a.
Standard za šifriranje podataka (DES) je blok šifra (oblik zajedničkog tajnog enkripcije) kojeg je odabrao National Bureau of Standards kao službeni FIPS Federalni standard za obradu podataka (FIPS) za Sjedinjene Države 1976. godine i koji je kasnije uživao široko rasprostranjen koristiti međunarodno.
Zabrinutost za sigurnost i relativno spor rad DES-a u istraživačima motiviranim softverom predložili su niz alternativnih oblika šifričnih blokova koji su se počeli pojavljivati krajem 1980-ih i ranih 1990-ih: primjeri uključuju RC5, Blowfish, IDEA, NewDES, SAFER, CAST5 i FEAL
Američka vlada je prihvatila algoritam šifriranja Rijndael kao standardno šifriranje sa simetričnim ključem ili Advanced Encryption Standard (AES). AES je objavio Nacionalni institut za standarde i tehnologiju (NIST) kao US FIPS PUB 197 (FIPS 197) 26. studenoga 2001. nakon petogodišnjeg procesa normizacije u kojemu je predstavljeno i procijenjeno petnaest natjecateljskih dizajna prije nego što je Rijndael odabran kao najveći pogodan algoritam šifriranja.
Postoje mnogi algoritmi za šifriranje i svi su prikladni za različite svrhe - dvije glavne karakteristike koje identificiraju i razlikuju jedan algoritam za enkripciju od druge su njegova sposobnost da osigurašti zaštićene podatke od napada i brzine i učinkovitosti u tome.
Kao dobar primjer brzine razlike između različitih vrsta šifriranja, možete koristiti alat za usporedbu koji je ugrađen u TrueCryptov čarobnjak za stvaranje volumena - kao što možete vidjeti, AES je daleko najbrži oblik jakog enkripcije.
Postoje i sporije i brže metode šifriranja, a sve su prikladne za različite svrhe. Ako jednostavno pokušavate dekriptirati sitni podatak svake toliko često, možete si priuštiti da upotrijebite najjači mogući šifriranje ili dvaput šifrirati s različitim vrstama enkripcije. Ako vam je potrebna brzina, vjerojatno biste htjeli ići s AES-om.
Više o usporedbi s različitim vrstama šifriranja potražite na izvješću sa Sveučilišta Washington u St. Louisu, gdje su testirali različite rutine i objasnili sve to u vrlo geekim napisima.
Svi algoritam šifriranja enkripcije o kojem smo ranije govorili uglavnom se koriste za dvije različite vrste šifriranja:
Da bismo objasnili ovaj koncept, koristit ćemo metaforu za poštanske usluge opisane u Wikipediji kako bismo razumjeli način funkcioniranja simetričnih ključnih algoritama.
Alice stavlja svoju tajnu poruku u kutiju i zaključava kutiju pomoću lokota kojemu ima ključ. Potom šalje kutiju Bobu redovnom poštom.Kada Bob dobije kutija, koristi identičnu kopiju Aliceovog ključa (koji je nekoć pribavio prethodno, možda sastanku licem u lice) kako bi otvorio kutiju i pročitao poruku. Bob može upotrijebiti isti lokot i poslati tajni odgovor.
Algoritmi simetričnih ključeva mogu se podijeliti na šifre signala i šifre blok šifriranja šifriraju bitove poruke jednu po jednu, a blok šifre uzimaju brojne bitove, često u blokovima od 64 bita istodobno, i šifriraju ih kao jednu jedinicu. Postoji mnogo različitih algoritama koje možete odabrati - više popularni i ugledni simetrični algoritmi uključuju Twofish, Serpent, AES (Rijndael), Blowfish, CAST5, RC4, TDES i IDEA.
U asimetričnom ključnom sustavu, Bob i Alice imaju zasebne lokotove, umjesto jednog lokota s više ključeva iz simetričnog primjera. Napomena: ovo je, naravno, vrlo precizno pojednostavljeni primjer kako to stvarno funkcionira, što je puno složenije, ali dobit ćete opću ideju.
Prvo, Alice pita Bob da mu pošalje svoj otvoreni lokot redovitom poštom, čuvajući ključ za sebe. Kada ga Alice primi, ona ga koristi za zaključavanje kutija s njezinom porukom i šalje zaključanu kutiju Bobu. Bob tada može otključati kutiju sa svojim ključem i pročitati poruku od Alice. Kako bi odgovorio, Bob mora na sličan način dobiti Aliceov otvoreni lokot kako bi zaključao okvir prije nego što ju je poslao natrag.
Kritična prednost u asimetričnom ključnom sustavu je da Bob i Alice nikada ne moraju slati kopiju svojih ključeva jedni drugima. To sprječava treću stranu (možda, primjerice, korumpiranog poštanskog radnika) da kopira ključ dok je u tranzitu, omogućujući trećoj strani da špijunira sve buduće poruke poslane između Alisa i Boba. Osim toga, ako je Bob bio neoprezan i dopustio da netko kopira njegov ključ, Aliceove poruke Bobu bi bile ugrožene, ali Aliceove poruke ostalim ljudima ostale bi tajne, jer bi drugi ljudi pružili različite lokove za Alice za upotrebu.
Asimetrično šifriranje koristi različite ključeve za šifriranje i dešifriranje. Primatelj poruke stvara privatni ključ i javni ključ. Javni ključ distribuira se među pošiljateljima poruka i koriste javni ključ za šifriranje poruke. Primatelj koristi svoj privatni ključ sve šifrirane poruke koje su šifrirane pomoću javnog ključa primatelja.
Postoji jedna od glavnih prednosti za šifriranje na ovaj način usporediti simetrično šifriranje. Nikad nećemo šaliti ništa tajno (poput našeg ključa za šifriranje ili lozinku) preko nesigurnog kanala. Javni ključ izlazi na svijet - nije tajna i ne mora biti. Vaš privatni ključ može ostati udoban i udoban na vašem osobnom računalu, gdje ga je generirate - nikada ne smijete e-poštom nigdje niti čitati napadači.
Protokol SSL (Secure Sockets Layer) proteklih godina osigurava transakcije putem interneta pomoću šifriranja između vašeg web preglednika i web poslužitelja, štiteći vas od bilo koga tko bi se mogao srediti na mreži.
SSL je konceptualno vrlo jednostavan. Počinje kada preglednik zatraži sigurnu stranicu (obično https: //)
Web poslužitelj šalje svoj javni ključ svojim certifikatom.
Preglednik provjerava je li potvrda izdana od strane pouzdanih osoba (obično pouzdani root CA), da je potvrda još uvijek valjana i da je potvrda povezana s kontaktiranom web sučelju.
Preglednik zatim koristi javni ključ za šifriranje slučajnog simetričnog ključa za šifriranje i šalje ga poslužitelju potrebnim za šifrirani URL kao i druge šifrirane http podatke.
Web poslužitelj dešifrira simetrični ključ za šifriranje pomoću svog privatnog ključa i upotrebljava simetrični ključ preglednika za dekriptiranje URL i HTTP podataka.
Web poslužitelj šalje natrag traženi html dokument i HTTP podaci šifrirani pomoću simetričnog ključa preglednika. Preglednik dešifrira http podatke i html dokument pomoću simetričnog ključa i prikazuje informacije.
A sada možete sigurno kupiti tu stavku za eBay koju zaista nije trebala.
Ako ste to napravili daleko, na kraju našeg dugog putovanja za razumijevanje enkripcije i malo kako to funkcionira - počevši od ranih dana šifriranja s Grcima i Rimljanima, uspon Lucifera i konačno kako SSL koristi asimetričnu i simetričnu enkripciju koja vam pomaže kupiti onu pahuljasto ružičastu zečicu na eBayu.
Veliki smo obožavatelji enkripcije ovdje u How-To Geeku, a mi smo pokrivali mnogo različitih načina da radimo sljedeće:
Naravno, šifriranje je daleko previše komplicirano temu za stvarno objasniti sve. Jesmo li propustili nešto važno? Slobodno postavite neka znanja o svojim kolegama čitateljima u komentarima.