Szyfrowanie ma długą historię sięgającą czasów, gdy starożytni Grecy i Rzymianie wysyłali tajne wiadomości, zastępując litery rozpoznawalne tylko tajnym kluczem. Dołącz do nas, aby uzyskać szybką lekcję historii i dowiedzieć się więcej o tym, jak działa szyfrowanie.
W dzisiejszym wydaniu HTG Explains damy Ci krótką historię szyfrowania, jak to działa i kilka przykładów różnych typów szyfrowania - upewnij się, że zapoznałeś się również z poprzednią wersją, gdzie wyjaśniliśmy, dlaczego tak wielu geeków nienawidzi Internetu Poszukiwacz.
Obraz wg xkcd, oczywiście.
Starożytni Grecy użyli narzędzia o nazwie Scytale, aby szybciej szyfrować wiadomości za pomocą szyfru transpozycji - po prostu owinęliby pasek pergaminu wokół cylindra, napisali wiadomość, a kiedy rozwijali się, nie mieliby sensu.
Oczywiście, ta metoda szyfrowania może być dość łatwa do złamania, ale jest to jeden z pierwszych przykładów szyfrowania faktycznie używanego w rzeczywistym świecie.
Juliusz Cezar użył w tym czasie nieco podobnej metody, przesuwając każdą literę alfabetu w prawo lub w lewo o kilka pozycji - technikę szyfrowania, znaną jako szyfr Cezara. Na przykład, używając poniższego przykładowego szyfru, napiszesz "GEEK" jako "JHHN".
Zwykły: ABCDEFGHIJKLMNOPQRSTUVWXYZ
Szyfr: DEFGHIJKLMNOPQRSTUVWXYZABC
Ponieważ tylko zamierzony odbiorca wiadomości znał szyfr, trudno byłoby następnej osobie odczytać wiadomość, która wyglądałaby jak bełkot, ale osoba, która miała szyfr, mogła łatwo ją odczytać i odczytać.
Inne proste szyfry szyfrujące, takie jak kwadrat Polibiusa, używały szyfrów polialfabetycznych, które wymieniały każdą literę z odpowiednimi pozycjami numerycznymi na górze i na bok, aby określić, gdzie znajduje się litera.
Używając tabeli podobnej do powyższej, napiszesz literę "G" jako "23" lub "GEEK" jako "23 31 31 43".
Maszyna Enigma
Podczas II wojny światowej Niemcy używali maszyny Enigma do przekazywania zaszyfrowanych przekazów tam iz powrotem, co zajęło lata zanim Polacy byli w stanie złamać wiadomości i dać rozwiązanie siłom aliantów, które odegrały kluczową rolę w ich zwycięstwie.
Spójrzmy prawdzie w oczy: nowoczesne techniki szyfrowania mogą być wyjątkowo nudnym tematem, więc zamiast po prostu tłumaczyć je słowami, stworzyliśmy komiks, który opowiada o historii szyfrowania, zainspirowany poradnikiem postaci AES z Jeffem Moserem. Uwaga: wyraźnie nie możemy przekazać wszystkiego na temat historii szyfrowania w komiksie.
W tamtych czasach ludzie nie mają dobrej metody szyfrowania, aby zabezpieczyć ich komunikację elektroniczną.
Lucyfer to nazwa nadana kilku najwcześniejszym cywilnym szyfrom blokowym, opracowanym przez Horsta Feistela i jego kolegów z IBM.
Standard szyfrowania danych (DES) to szyfr blokowy (forma współużytkowanego tajnego szyfrowania), który został wybrany przez Krajowe Biuro Standardów jako oficjalny Federalny Standard Przetwarzania Informacji (FIPS) dla Stanów Zjednoczonych w 1976 roku i który później cieszył się szerokim spektrum używać w skali międzynarodowej.
Obawy o bezpieczeństwo i względnie powolne działanie DES w oprogramowaniu zmotywowało badaczy do zaproponowania różnorodnych alternatywnych projektów blokowych, które zaczęły pojawiać się pod koniec lat osiemdziesiątych i na początku lat dziewięćdziesiątych: przykłady obejmują RC5, Blowfish, IDEA, NewDES, SAFER, CAST5 i OPŁATA
Algorytm szyfrowania Rijndael został przyjęty przez rząd Stanów Zjednoczonych jako standardowe szyfrowanie za pomocą klucza symetrycznego lub Advanced Encryption Standard (AES). AES został ogłoszony przez Narodowy Instytut Standardów i Technologii (NIST) jako US FIPS PUB 197 (FIPS 197) w dniu 26 listopada 2001 r. Po 5-letnim procesie normalizacyjnym, w którym piętnaście konkurencyjnych projektów zostało zaprezentowanych i ocenionych przed Rijndael został wybrany jako najbardziej odpowiedni algorytm szyfrowania.
Istnieje wiele algorytmów szyfrowania i wszystkie są dostosowane do różnych celów - dwie główne cechy, które identyfikują i różnicują jeden algorytm szyfrowania, to jego zdolność do zabezpieczania danych chronionych przed atakami oraz ich szybkości i wydajności.
Jako dobry przykład różnicy prędkości pomiędzy różnymi typami szyfrowania, możesz użyć narzędzia benchmarkingowego wbudowanego w kreator tworzenia wolumenu TrueCrypt - jak widać, AES jest zdecydowanie najszybszym rodzajem silnego szyfrowania.
Dostępne są zarówno wolniejsze, jak i szybsze metody szyfrowania i wszystkie nadają się do różnych celów. Jeśli próbujesz odszyfrować niewielką ilość danych co jakiś czas, możesz pozwolić sobie na użycie najsilniejszego szyfrowania, a nawet szyfrowania go dwa razy przy użyciu różnych typów szyfrowania. Jeśli potrzebujesz prędkości, prawdopodobnie chcesz iść z AES.
Aby uzyskać więcej informacji na temat testowania różnych typów szyfrowania, sprawdź raport z Uniwersytetu Waszyngtońskiego w St. Louis, gdzie wykonano wiele testów na różne sposoby i wyjaśniono wszystko w bardzo zręcznym napisie.
Cały wymyślny algorytm szyfrowania, o którym mówiliśmy wcześniej, jest używany głównie w dwóch różnych typach szyfrowania:
Aby wyjaśnić tę koncepcję, wykorzystamy metaforę usług pocztowych opisaną w Wikipedii, aby zrozumieć, jak działają algorytmy klucza symetrycznego.
Alice umieszcza swoją tajną wiadomość w pudełku i zamyka pudełko za pomocą kłódki, do której ma klucz. Następnie wysyła skrzynkę do Boba za pośrednictwem zwykłej poczty.Kiedy Bob otrzymuje pudełko, używa identycznej kopii klucza Alicji (który jakoś wcześniej uzyskał, być może przez spotkanie twarzą w twarz), aby otworzyć pudełko i przeczytać wiadomość. Bob może następnie użyć tej samej kłódki, aby wysłać swoją tajną odpowiedź.
Algorytmy z kluczem symetrycznym mogą być podzielone na szyfry strumieniowe, a szyfry blokowe szyfrujące szyfrują bity wiadomości pojedynczo, a szyfry blokowe pobierają pewną liczbę bitów, często w blokach po 64 bity na raz, i szyfrują je jako jedna jednostka. Istnieje wiele różnych algorytmów do wyboru - bardziej popularne i szanowane algorytmy symetryczne obejmują Twofish, Serpent, AES (Rijndael), Blowfish, CAST5, RC4, TDES i IDEA.
W asymetrycznym systemie klawiszy Bob i Alice mają oddzielne kłódki zamiast pojedynczej kłódki z wieloma kluczami z symetrycznego przykładu. Uwaga: jest to oczywiście bardzo uproszczony przykład tego, jak to naprawdę działa, co jest znacznie bardziej skomplikowane, ale otrzymasz ogólny pomysł.
Po pierwsze, Alice prosi Boba, by wysłał jej otwartą kłódkę za pośrednictwem zwykłej poczty, trzymając klucz dla siebie. Kiedy Alicja go otrzyma, używa jej do zablokowania skrzynki zawierającej jej wiadomość i wysyła zablokowane pudełko do Boba. Bob może następnie odblokować pudełko za pomocą klucza i przeczytać wiadomość od Alicji. Aby odpowiedzieć, Bob musi podobnie otworzyć otwartą kłódkę Alice, aby zamknąć pudełko, zanim odeśle ją do niej.
Najważniejszą zaletą w asymetrycznym systemie kluczy jest to, że Bob i Alice nigdy nie muszą wysyłać kopii swoich kluczy do siebie nawzajem. Zapobiega to kopiowaniu klucza przez osobę trzecią (np. Uszkodzonemu pracownikowi pocztowemu) podczas przesyłania, umożliwiając wspomnianemu podmiotowi trzeciemu śledzenie wszystkich przyszłych wiadomości wysyłanych między Alicją i Bobem. Ponadto, jeśli Bob był nieostrożny i pozwolił komuś innemu skopiować jego klucz, wiadomości Alice do Boba zostaną naruszone, ale wiadomości Alice do innych ludzi pozostanie tajemnicą, ponieważ inni ludzie będą dostarczać różne kłódki do korzystania z Alice.
Szyfrowanie asymetryczne wykorzystuje różne klucze do szyfrowania i odszyfrowywania. Odbiorca wiadomości tworzy klucz prywatny i klucz publiczny. Klucz publiczny jest dystrybuowany wśród nadawców wiadomości i używa klucza publicznego do szyfrowania wiadomości. Odbiorca używa swojego klucza prywatnego zaszyfrowane wiadomości, które zostały zaszyfrowane przy użyciu klucza publicznego odbiorcy.
Jest jedna główna korzyść z szyfrowania w ten sposób w porównaniu do szyfrowania symetrycznego. Nigdy nie musimy wysyłać niczego tajnego (takiego jak nasz klucz szyfrowania lub hasło) do niezabezpieczonego kanału. Twój klucz publiczny wychodzi na świat - nie jest tajny i nie musi być. Twój klucz prywatny może pozostać wygodny i przytulny na komputerze osobistym, na którym został wygenerowany - nigdy nie musi być wysyłany pocztą e-mail w dowolnym miejscu lub czytany przez intruzów.
Przez wiele lat protokół SSL (Secure Sockets Layer) zabezpieczał transakcje internetowe za pomocą szyfrowania między twoją przeglądarką a serwerem sieciowym, chroniąc Cię przed wszystkimi, którzy mogą podsłuchiwać w sieci w środku.
Sam SSL jest koncepcyjnie dość prosty. Zaczyna się, gdy przeglądarka żąda bezpiecznej strony (zwykle https: //)
Serwer sieciowy wysyła swój klucz publiczny wraz z certyfikatem.
Przeglądarka sprawdza, czy certyfikat został wydany przez zaufaną stronę (zazwyczaj zaufany główny urząd certyfikacji), że certyfikat jest nadal ważny i że certyfikat jest powiązany z kontaktowaną witryną.
Następnie przeglądarka wykorzystuje klucz publiczny do szyfrowania losowego symetrycznego klucza szyfrowania i wysyła go do serwera z wymaganym zaszyfrowanym adresem URL oraz innymi zaszyfrowanymi danymi http.
Serwer sieciowy odszyfrowuje symetryczny klucz szyfrowania za pomocą swojego klucza prywatnego i używa klucza symetrycznego przeglądarki do odszyfrowania danych URL i http.
Serwer sieci Web odsyła żądany dokument HTML i dane HTTP zaszyfrowane za pomocą klucza symetrycznego przeglądarki. Przeglądarka odszyfrowuje dane http i dokument HTML za pomocą klucza symetrycznego i wyświetla informacje.
A teraz możesz bezpiecznie kupić przedmiot w serwisie eBay, którego naprawdę nie potrzebujesz.
Jeśli dotarłeś tak daleko, jesteśmy na końcu naszej długiej podróży do zrozumienia szyfrowania i odrobiny tego, jak to działa - poczynając od wczesnych czasów szyfrowania z Grekami i Rzymianami, powstania Lucyfera, i wreszcie, jak SSL wykorzystuje szyfrowanie asymetryczne i symetryczne, aby pomóc Ci kupić puszysty różowy króliczek na eBayu.
Jesteśmy wielkimi fanami szyfrowania w How-To Geek i mamy wiele różnych sposobów na zrobienie rzeczy takich jak:
Oczywiście szyfrowanie jest zbyt skomplikowanym tematem, aby naprawdę wszystko wyjaśnić. Czy przegapiliśmy coś ważnego? W komentarzach możesz znaleźć trochę wiedzy o swoich czytelnikach.