Co to jest szyfrowanie AES-256 i jak to działa?

Scenariusz

Advanced Encryption Standard (wcześniej znany jako Rijndael) to jeden ze sposobów szyfrowania informacji. Jest tak bezpieczny, że nawet brutalna siła nie mogłaby go złamać.

Ten zaawansowany standard szyfrowania jest używany przez Narodową Agencję Bezpieczeństwa (NSA) wraz z wieloma branżami, w tym bankowością internetową. Więc, co to jest szyfrowanie AES? i jak to działa? Dowiedzmy Się!

Co to jest szyfrowanie AES? 

AES to dzisiejszy standard szyfrowania danych. Jest niezrównany pod względem bezpieczeństwa i ochrony, jakie oferuje.

Złammy to, co to jest. AES jest

  • Symetryczne szyfrowanie klucza
  • Blokuj szyfr

Szyfrowanie symetryczne a szyfrowanie asymetryczne

AES jest symetryczny rodzaj szyfrowania.

szyfrowanie kluczem symetrycznym

„Symetryczny” oznacza, że ​​używa ten sam klucz do szyfrowania i deszyfrowania informacje Ponadto, obie die,en nadawca i odbiorca danych wymaga ich kopii, aby odszyfrować szyfr.

Z drugiej strony, asymetryczny kluczowe systemy używają a inny klucz dla każdego z dwóch procesów: szyfrowania i deszyfrowania.

Aprzewaga systemów symetrycznych jak AES czy oni są znacznie szybszy niż asymetryczny te. Dzieje się tak, ponieważ algorytmy klucza symetrycznego wymagają mniej mocy obliczeniowej. 

Dlatego najlepiej używać kluczy asymetrycznych zewnętrzne transfery plików. Klucze symetryczne są lepsze dla szyfrowanie wewnętrzne.

Czym są szyfry blokowe?

Następnie AES jest również tym, co świat technologii nazywa „szyfr blokowy”. 

Nazywa się to „blokowym”, ponieważ tego typu szyfr dzieli informacje do zaszyfrowania (znany jako tekst jawny) na sekcje zwane blokami.

Aby być bardziej szczegółowym, AES używa 128-bitowy rozmiar bloku. 

Oznacza to, że dane są podzielone na tablica cztery na cztery zawierający 16 bajtów. Każdy bajt zawiera osiem bitów.

Zatem 16 bajtów pomnożonych przez 8 bitów daje a łącznie 128 bitów w każdym bloku. 

Niezależnie od tego podziału, rozmiar zaszyfrowanych danych pozostaje taki sam. Innymi słowy, 128 bitów tekstu jawnego daje 128 bitów tekstu zaszyfrowanego.

Sekret algorytmu AES

A teraz trzymaj się swoich czapek, bo tutaj robi się ciekawie.

Joan Daemen i Vincent Rijmen podjęli błyskotliwą decyzję o użyciu Sieć permutacji substytucji (SPN) algorytm.

SPN działa poprzez aplikowanie wiele rund rozszerzenia klucza w celu zaszyfrowania danych.

Początkowy klucz służy do tworzenia seria nowych kluczy zwane „okrągłymi kluczami”.

Więcej informacji na temat generowania tych okrągłych kluczy zajmiemy się później. Wystarczy powiedzieć, że wiele rund modyfikacji generuje za każdym razem nowy klucz rundy.

Z każdą kolejną rundą dane stają się coraz bardziej bezpieczne i trudniej jest złamać szyfrowanie.

Dlaczego?

Ponieważ te rundy szyfrowania sprawiają, że AES jest nieprzenikniony! Są tylko zbyt wiele rund że hakerzy muszą się przebić, aby je odszyfrować.

To w ten sposób: Superkomputer potrzebowałby więcej lat niż zakładany wiek wszechświata, aby złamać kod AES.

Do tej pory AES jest praktycznie wolny od zagrożeń.

Różne długości kluczy

Tam są trzy długości kluczy szyfrowania AES.

Każda długość klucza ma inną liczbę możliwych kombinacji klawiszy:

  • 128-bitowa długość klucza: 3.4 x 1038
  • 192-bitowa długość klucza: 6.2 x 1057
  • 256-bitowa długość klucza: 1.1 x 1077

Chociaż długość klucza tej metody szyfrowania jest różna, jej rozmiar bloku – 128-bitów (lub 16 bajtów) - pozostaje takie samo. 

Skąd różnica w rozmiarze klucza? Chodzi o praktyczność.

Weźmy na przykład aplikację. Jeśli używa 256-bitowego AES zamiast AES 128, będzie wymagają większej mocy obliczeniowej.

Praktycznym efektem jest to, że będzie wymagają więcej surowej mocy z baterii, dzięki czemu telefon umrze szybciej.

Więc podczas korzystania z 256-bitowego szyfrowania AES jest złoty standard, po prostu nie nadaje się do codziennego użytku.

Gdzie jest używany Advanced Encryption Standard (AES)?

AES to jeden z najbardziej zaufanych systemów na świecie. Jest szeroko stosowany w wielu branżach, które wymagają wyjątkowo wysokiego poziomu bezpieczeństwa.

Dziś biblioteki AES zostały stworzone dla wielu języków programowania, w tym C, C++, Java, JavaScript i Python.

Standard szyfrowania AES jest również używany przez różne programy do kompresji plików w tym 7 Zip, WinZip i RAR oraz systemy szyfrowania dysków jak BitLocker i FileVault; i systemy plików, takie jak NTFS.

Być może już używałeś go w swoim codziennym życiu, nie zauważając tego!

AES jest niezbędnym narzędziem w szyfrowanie bazy danych i VPN systemy.

Jeśli polegasz na menedżerach haseł, aby zapamiętać dane logowania do wielu kont, prawdopodobnie spotkałeś się już z AES!

Te aplikacje do przesyłania wiadomości, z których korzystasz, takie jak WhatsApp i Facebook Messenger? Tak, oni też tego używają.

Parzyste gier wideo lubić Grand Theft Auto IV używaj AES do ochrony przed hakerami.

Zestaw instrukcji AES jest zintegrowany z wszystkie procesory Intel i AMD, więc Twój komputer stacjonarny lub laptop ma już to wbudowane, a Ty nie musisz nic robić.

I oczywiście nie zapominajmy o aplikacjach, które posiadasz bank stworzony, aby umożliwić Ci zarządzanie finansami online.

Gdy dowiesz się, jak działa szyfrowanie AES, będziesz łatwiej oddychać ze świadomością, że Twoje dane są w dobrych rękach!

Historia szyfrowania AES

AES rozpoczął się jako odpowiedź rząd USA wymagania.

W 1977 agencje federalne polegały na DStandard szyfrowania ATA (DES) jako ich główny algorytm szyfrowania.

Jednak w latach 1990. DES nie był już wystarczająco bezpieczny, ponieważ można go było włamać tylko 22 godziny. 

Tak więc rząd ogłosił konkurs publiczny znaleźć nowy system, który przetrwał ponad 5 lat.

W ramach projektu korzyść z tego otwartego procesu było to, że każdy z przedstawionych algorytmów szyfrowania mógłby zostać poddany bezpieczeństwu publicznemu. Oznaczało to, że rząd może być 100% pewności że ich zwycięski system nie ma tylnego wejścia.

Co więcej, ponieważ zaangażowanych było wiele umysłów i oczu, rząd zmaksymalizował swoje szanse na identyfikowanie i naprawianie wad.

WRESZCIE, Szyfr Rijndaela (dzisiejszy Advanced Encryption Standard) został koronowany na mistrza.

Rijndael został nazwany na cześć dwóch belgijskich kryptografów, którzy go stworzyli, Vincent Rijmen i Joan Daemen.

Tak było w 2002 roku przemianowano na Advanced Encryption Standard i opublikowane przez amerykański Narodowy Instytut Standardów i Technologii (NIST).

NSA zatwierdziła algorytm AES ze względu na jego zdolność i bezpieczeństwo obsługi ściśle tajne informacje. TO umieściło AES na mapie.

Od tego czasu AES stał się iprzemysłowy standard szyfrowania.

Jego otwarty charakter oznacza, że ​​oprogramowanie AES może być wykorzystywane zarówno do celów publicznych, jak i prywatnych, komercyjnych i niekomercyjnych aplikacji.

Jak działa AES 256?

Jak dotąd wiemy, że te algorytmy szyfrowania mieszają informacje, które chronią i zamieniają je w losowy bałagan.

Mam na myśli podstawową zasadę wszelkiego szyfrowania is każda jednostka danych zostanie zastąpiona inną, w zależności od klucza bezpieczeństwa.

Ale co dokładnie sprawia, że ​​szyfrowanie AES jest wystarczająco bezpieczne, aby można je było uznać za standard branżowy?

Omówienie procesu

Algorytm szyfrowania AES przechodzi wiele rund szyfrowania. Może nawet przejść przez 9, 11 lub 13 rund.

Każda runda obejmuje te same kroki poniżej.

  • Podziel dane na bloki.
  • Rozszerzenie klucza.
  • Dodaj okrągły klucz.
  • Podstawienie/zastąpienie bajtów.
  • Przesuń rzędy.
  • Wymieszaj kolumny.
  • Dodaj ponownie okrągły klucz.
  • Zrób to jeszcze raz.

Po ostatniej rundzie algorytm przejdzie jeszcze jedną rundę. W tym zestawie algorytm wykona kroki od 1 do 7 z wyjątkiem kroku 6.

Zmienia szósty krok, ponieważ w tym momencie niewiele by to dało. Pamiętaj, że ten proces przeszedł już wiele razy.

Tak więc powtórzenie kroku 6 byłoby zbędny. Ilość mocy obliczeniowej potrzebnej do ponownego zmieszania kolumn po prostu nie jest tego warta, ponieważ będzie nie zmieniają już znacząco danych.

W tym momencie dane przejdą już przez następujące rundy:

  • 128-bitowy klucz: 10 rund
  • 192-bitowy klucz: 12 rund
  • 256-bitowy klucz: 14 rund

Wyjście?

do random zestaw pomieszanych znaków to nie będzie miało sensu dla nikogo, kto nie ma klucza AES.

Dogłębne spojrzenie

Masz teraz wyobrażenie o tym, jak powstaje ten symetryczny szyfr blokowy. Przejdźmy do szczegółów.

Po pierwsze, te algorytmy szyfrowania dodają początkowy klucz do bloku za pomocą Szyfr XOR („wyłączny lub”). 

Ten szyfr jest an operacja wbudowana sprzęt procesora.

Następnie każdy bajt danych jest podstawioną z innym.

To CRUCIAL krok będzie podążał za ustaloną tabelą o nazwie Kluczowy harmonogram Rijndaela aby określić, w jaki sposób dokonywana jest każda wymiana.

Teraz masz zestaw nowe okrągłe klucze 128-bitowe które są już bałaganem pomieszanych listów.

Po trzecie, nadszedł czas, aby przejść przez pierwsza runda szyfrowania AES. Algorytm doda początkowy klucz do nowych okrągłych kluczy.

Teraz masz swój Dopiero szyfr losowy.

Po czwarte, algorytm zastępuje każdy bajt z kodem według Rijndael S-box.

Teraz nadszedł czas, aby przesuń rzędy tablicy 4×4.

  • Pierwszy rząd pozostaje tam, gdzie jest.
  • Drugi rząd zostaje przesunięty o jedno miejsce w lewo.
  • Trzeci rząd jest przesunięty na dwie przestrzenie.
  • Wreszcie czwarty przesuwa się o trzy pola.

Po szóste, każda kolumna zostanie pomnożona przez predefiniowaną macierz, która ponownie da ci nowy blok kodu.

Nie będziemy wchodzić w szczegóły, ponieważ jest to niezwykle skomplikowany proces, który wymaga mnóstwa zaawansowanej matematyki.

Po prostu wiedz, że kolumny szyfru są mieszane i łączone, aby uzyskać kolejny blok.

Na koniec doda okrągły klucz do bloku (podobnie jak początkowy klucz był w trzecim kroku).

Następnie spłucz i powtórz w zależności od liczby rund, które musisz wykonać.

Proces trwa jeszcze kilka razy, dając ci zaszyfrowany tekst, który jest radykalnie różne z tekstu jawnego.

Aby go odszyfrować, zrób wszystko w odwrotnej kolejności!

Każdy etap algorytmu szyfrowania AES pełni ważną funkcję.

Dlaczego wszystkie kroki?

Użycie innego klucza w każdej rundzie daje znacznie bardziej złożony wynik, chroniąc dane przed atakami typu brute force, niezależnie od rozmiaru używanego klucza.

Proces podstawienia bajtów modyfikuje dane w sposób nieliniowy. To się ukrywa związek między oryginałem a zaszyfrowanym treści.

Przesuwanie wierszy i mieszanie kolumn spowoduje rozpowszechniać dane. Przesunięcie powoduje rozproszenie danych w poziomie, a miksowanie w pionie.

Transponując bajty, uzyskasz znacznie bardziej skomplikowane szyfrowanie.

Rezultatem jest a niezwykle wyrafinowana forma szyfrowania które nie mogą zostać zhakowane, chyba że masz tajny klucz.

Czy szyfrowanie AES jest bezpieczne?

Jeśli nasz opis procesu nie wystarczy, abyś uwierzył w moc klucza AES, przyjrzyjmy się, jak bezpieczny jest AES.

Jak powiedzieliśmy na początku, Narodowy Instytut Standardów i Technologii (NIST) wybrał trzy rodzaje AES: 128-bitowe klucze AES, 192-bitowe i 256-bitowe.

Każdy typ nadal używa tych samych 128-bitowych bloków, ale różnią się one 2 rzeczami.

Długość klucza

W ramach projektu pierwsza różnica leży w długości każdego z kluczy bitowych.

Jak najdłużej, AES 256-bitowe szyfrowanie zapewnia najsilniejsze poziom szyfrowania.

Dzieje się tak, ponieważ 256-bitowe szyfrowanie AES wymagałoby od hakera próby 2256 różnych kombinacji aby upewnić się, że właściwy jest wliczony w cenę.

Musimy podkreślić, że ta liczba to astronomicznie duży. To łącznie 78 cyfr! 

Jeśli nadal nie rozumiesz, jak jest duży, ujmijmy to w ten sposób. Jest tak duży, że aż wykładniczo większy niż liczba atomów w obserwowalnym wszechświecie.

Oczywiście, w interesie ochrony bezpieczeństwa narodowego i innych danych, rząd USA wymaga 128- lub 256-bitowego procesu szyfrowania dla danych wrażliwych.

AES-256, który ma długość klucza 256 bitów, obsługuje największy rozmiar bitów i jest praktycznie nie do złamania przez brutalną siłę w oparciu o obecne standardy mocy obliczeniowej, co czyni go na dzień dzisiejszy najsilniejszym dostępnym standardem szyfrowania. 

Rozmiar kluczaMożliwe kombinacje
Bit 12
2 bity4
4 bity16
8 bity256
16 bity65536
32 bityX 4.2 109
56 bitów (DES)X 7.2 1016
64 bityX 1.8 1019
128 bitów (AES)X 3.4 1038
192 bitów (AES)X 6.2 1057
256 bitów (AES)X 1.1 1077

Rundy szyfrowania

W ramach projektu druga różnica między tymi trzema odmianami AES jest liczba rund szyfrowania, przez które przechodzi.

Używa 128-bitowego szyfrowania AES Rund 10, Zastosowania AES 192 Rund 12, a AES 256 zastosowań Rund 14.

Jak zapewne zgadłeś, im więcej rund użyjesz, tym bardziej złożone staje się szyfrowanie. To głównie sprawia, że ​​AES 256 jest najbezpieczniejszą implementacją AES.

The Catch

Dłuższy klucz i więcej rund będzie wymagało wyższej wydajności i większej ilości zasobów/mocy.

AES 256 zastosowań 40% więcej zasobów systemowych niż AES 192.

Właśnie dlatego 256-bitowy standard Advanced Encryption jest najlepszy dla środowiska o wysokiej wrażliwości, podobnie jak rząd, gdy ma do czynienia z danymi wrażliwymi.

To są przypadki, w których bezpieczeństwo jest ważniejsze niż szybkość czy moc.

Czy hakerzy mogą złamać AES 256?

W ramach projektu stary 56-bitowy klucz DES można złamać w niecały dzień. Ale dla AES? To zajmie miliardy lat zerwać z wykorzystaniem technologii obliczeniowej, którą mamy dzisiaj.

Hakerzy byliby głupi, gdyby nawet próbowali tego typu ataku.

Biorąc to pod uwagę, musimy przyznać żaden system szyfrowania nie jest całkowicie bezpieczny.

Naukowcy, którzy przyjrzeli się AES, znaleźli kilka potencjalnych sposobów na dostanie się do środka.

Zagrożenie nr 1: Ataki powiązane z kluczami

W 2009 roku odkryli możliwy atak z powiązanym kluczem. Zamiast brutalnej siły te ataki będą: za cel sam klucz szyfrowania.

Ten rodzaj kryptoanalizy będzie próbował złamać szyfr, obserwując, jak działa przy użyciu różnych kluczy.

Na szczęście atak związany z kluczem to: tylko groźba do systemów AES. Jedynym sposobem, w jaki może to działać, jest znajomość (lub podejrzenie) relacji między dwoma zestawami kluczy.

Zapewniamy, że kryptografowie szybko poprawili złożoność harmonogramu kluczy AES po tych atakach, aby im zapobiec.

Zagrożenie nr 2: Atak rozróżniający znany klucz

W przeciwieństwie do brutalnej siły, ten atak wykorzystywał znany klucz rozszyfrować strukturę szyfrowania.

Jednak haker dotyczył tylko ośmiorundowej wersji AES 128, nie standardowa 10-rundowa wersja. Jednakże, to nie jest poważne zagrożenie.

Zagrożenie #3: Ataki boczne

To jest główne ryzyko, przed którym stoi AES. Działa, próbując odebrać wszelkie informacje system przecieka.

Hakerzy mogą słuchać dźwięki, sygnały elektromagnetyczne, informacje o czasie lub pobór mocy aby spróbować dowiedzieć się, jak działają algorytmy bezpieczeństwa.

Najlepszym sposobem zapobiegania atakom typu side-channel jest: usuwanie wycieków informacji lub maskowanie wycieków danych (poprzez generowanie dodatkowych sygnałów lub dźwięków elektromagnetycznych).

Zagrożenie nr 4: Ujawnienie klucza

Łatwo to udowodnić, wykonując następujące czynności:

  • Silne hasła
  • Uwierzytelnianie wieloskładnikowe
  • Zapory
  • Oprogramowanie antywirusowe 

Co więcej, edukuj swoich pracowników przed socjotechniką i atakami typu phishing.

Zalety szyfrowania AES

Proces szyfrowania AES jest stosunkowo łatwy do zrozumienia. Pozwala to na łatwa implementacja, a także naprawdę szybkie czasy szyfrowania i deszyfrowania.

Ponadto AES wymaga mniej pamięci niż inne rodzaje szyfrowania (takie jak DES).

Wreszcie, gdy potrzebujesz dodatkowej warstwy bezpieczeństwa, możeszasily łączyć AES z różnymi protokołami bezpieczeństwa jak WPA2 lub nawet inne rodzaje szyfrowania, takie jak SSL.

AES vs ChaCha20 

AES ma pewne ograniczenia, które próbowały wypełnić inne typy szyfrowania.

Chociaż AES jest fantastyczny dla większości nowoczesnych komputerów, to nie są wbudowane w nasze telefony lub tablety.

Dlatego AES jest zwykle wdrażany za pomocą oprogramowania (zamiast sprzętu) na urządzeniach mobilnych.

Jednak implementacja oprogramowania AES zajmuje zbyt dużo czasu pracy na baterii.

ChaCha20 używa również kluczy 256-bitowych. Został opracowany przez kilku inżynierów z Google wypełnić tę lukę.

Zalety ChaCha20:

  • Bardziej przyjazny dla procesora
  • Łatwiejsze do wdrożenia
  • Wymaga mniejszej mocy
  • Lepsze zabezpieczenie przed atakami wykorzystującymi pamięć podręczną
  • To także klucz 256-bitowy

AES kontra Twofish

Twofish był jednym z finalistów konkursu zorganizowanego przez rząd w celu zastąpienia DE.

Zamiast bloków Twofish używa sieci Feistel. Oznacza to, że jest to podobna, ale bardziej złożona wersja starszych standardów, takich jak DES.

Do dziś Twofish pozostaje nienaruszony. Dlatego wielu twierdzi, że jest bezpieczniejszy niż AES, biorąc pod uwagę potencjalne zagrożenia, o których wspomnieliśmy wcześniej.

Główną różnicą jest to, że AES zmienia liczbę rund szyfrowania w zależności od długości klucza, podczas gdy Twofish utrzymuje ją na poziomie stała 16 rund.

Jednak Twofish wymaga więcej pamięci i mocy w porównaniu z AES, co jest jego największym upadkiem, jeśli chodzi o korzystanie z mobilnych lub słabszych urządzeń komputerowych.

Wnioski

Jeśli szyfrowanie AES jest wystarczająco dobre dla Narodowej Agencji Bezpieczeństwa, chętnie zaufamy jego bezpieczeństwu.

Pomimo wielu dostępnych obecnie technologii, AES pozostaje na szczycie. Wystarczająco dobre, aby każda firma korzystała z jej ściśle tajnych informacji.

Referencje

Strona główna » cloud Storage » Co to jest szyfrowanie AES-256 i jak to działa?

Dołącz do naszego biuletynu

Zapisz się do naszego cotygodniowego biuletynu podsumowującego i otrzymuj najnowsze wiadomości i trendy w branży

Klikając „subskrybuj”, zgadzasz się na nasze warunki użytkowania i polityka prywatności.