Poziom bezpieczeństwa

W kryptografii poziom bezpieczeństwa jest miarą siły, jaką osiąga prymityw kryptograficzny — taki jak szyfr lub funkcja skrótu . Poziom bezpieczeństwa jest zwykle wyrażany jako liczba „ bitów bezpieczeństwa” (również siła bezpieczeństwa ), gdzie n -bitowe bezpieczeństwo oznacza, że ​​atakujący musiałby wykonać 2 n operacji, aby go złamać, ale zaproponowano inne metody, które dokładniej modelują koszty atakującego. Pozwala to na wygodne porównywanie algorytmów i jest przydatne podczas łączenia wielu prymitywów w a kryptosystem hybrydowy , więc nie ma wyraźnego najsłabszego ogniwa. Na przykład AES -128 ( rozmiar klucza 128 bitów) ma zapewniać 128-bitowy poziom bezpieczeństwa, który jest uważany w przybliżeniu za odpowiednik RSA wykorzystującego klucz 3072-bitowy.

W tym kontekście zapewnienie bezpieczeństwa lub docelowy poziom bezpieczeństwa to poziom bezpieczeństwa, do osiągnięcia którego początkowo zaprojektowano element podstawowy, chociaż w tych kontekstach czasami używany jest również „poziom bezpieczeństwa”. W przypadku wykrycia ataków, których koszt jest niższy niż w przypadku zabezpieczenia, element pierwotny uznaje się za uszkodzony .

W kryptografii symetrycznej

Algorytmy symetryczne mają zwykle ściśle określone wymagania dotyczące bezpieczeństwa. W przypadku szyfrów symetrycznych jest on zwykle równy rozmiarowi klucza szyfru – co odpowiada złożoności ataku brute-force . Kryptograficzne funkcje skrótu o rozmiarze wyjściowym n bitów mają zwykle poziom bezpieczeństwa odporności na kolizję n /2 i poziom odporności na obraz wstępny n . Dzieje się tak, ponieważ ogólny atak urodzinowy zawsze może znaleźć kolizje w 2 n/2 kroków. Na przykład SHA-256 oferuje 128-bitową odporność na kolizje i 256-bitową odporność na obraz wstępny.

Istnieją jednak pewne wyjątki od tej zasady. Szyfry Phelix i Helix to 256-bitowe szyfry oferujące 128-bitowy poziom bezpieczeństwa. Warianty SHAKE SHA-3 są również różne: w przypadku 256-bitowego rozmiaru wyjściowego SHAKE-128 zapewnia 128-bitowy poziom bezpieczeństwa zarówno dla odporności na kolizje, jak i przedobrazu.

W kryptografii asymetrycznej

Projekt większości algorytmów asymetrycznych (tj. kryptografii klucza publicznego ) opiera się na schludnych problemach matematycznych , których obliczenia są skuteczne w jednym kierunku, ale nieefektywne w przypadku odwracania ich przez atakującego. Jednak ataki na obecne systemy klucza publicznego są zawsze szybsze niż przestrzeni klucza metodą brute-force . Ich poziom bezpieczeństwa nie jest ustalany w czasie projektowania, ale reprezentuje założenie dotyczące twardości obliczeniowej , które jest dostosowywane w celu dopasowania do najlepszego obecnie znanego ataku.

Opublikowano różne rekomendacje szacujące poziom bezpieczeństwa algorytmów asymetrycznych, które różnią się nieznacznie ze względu na odmienną metodologię. W przypadku kryptosystemu RSA na 128-bitowym poziomie bezpieczeństwa NIST i ENISA zalecają stosowanie kluczy 3072-bitowych i 3253-bitowych IETF . Kryptografia krzywych eliptycznych wymaga krótszych kluczy, dlatego zalecane są 256–383 (NIST), 256 (ENISA) i 242 bity (IETF).

Typowe poziomy

W poniższej tabeli przedstawiono przykłady typowych poziomów bezpieczeństwa dla typów algorytmów, zgodnie z sekcją 5.6.1.1 zalecenia US NIST SP-800-57 dotyczącego zarządzania kluczami.

Bity bezpieczeństwa Klucz symetryczny Pole skończone/logarytm dyskretny (tj. DH) Faktoryzacja liczb całkowitych (tj. RSA) Krzywa eliptyczna (np. x25519)
Tabela: Porównywalne mocne strony algorytmów
80 2TDEA L=1024, N=160 k=1024 f=160-223
112 3TDEA L=2048, N=224 k=2048 f=224-255
128 AES L=3072, N=256 k=3072 f=256-383
192 AES L=7680, N=384 k=7680 f=384-511
256 AES L=15360, N=511 k=15360 f=512+

DES został wycofany w 2003 roku


Znaczenie słowa „zepsuty”

Element kryptograficzny uznaje się za uszkodzony, jeśli w wyniku ataku okaże się, że poziom bezpieczeństwa jest niższy niż deklarowany. Jednak nie wszystkie takie ataki są praktyczne: większość obecnie zademonstrowanych ataków zajmuje mniej niż 240 operacji , co na przeciętnym komputerze PC oznacza kilka godzin. Najbardziej kosztownym zademonstrowanym atakiem na funkcje skrótu jest atak 2 61.2 na SHA-1, który trwał 2 miesiące na procesorach graficznych 900 GTX 970 i kosztował 75 000 dolarów (chociaż badacze szacują, że do znalezienia kolizji potrzeba było tylko 11 000 dolarów).

Aumasson wyznacza granicę pomiędzy atakami praktycznymi i niepraktycznymi w 2 80 operacjach. Proponuje nową terminologię:

  • Zepsuty prymityw ma atak wymagający ≤ 2 80 operacji . Atak może zostać przeprowadzony w sposób wiarygodny.
  • Ranny prymityw ma atak wymagający od 280 do około 2100 operacji . Atak nie jest obecnie możliwy, ale przyszłe ulepszenia prawdopodobnie umożliwią to.
  • Zaatakowany prymityw ma atak, który jest tańszy niż zabezpieczenie, ale znacznie droższy niż 2 100 . Taki atak jest zbyt odległy od praktycznego.
  • Wreszcie analizowany prymityw to taki, w przypadku którego nie ma ataków tańszych niż jego zabezpieczenia.

Dalsza lektura

  • Aumasson, Jean-Philippe (2020). Za dużo kryptowalut (PDF) . Sympozjum dotyczące kryptowalut w świecie rzeczywistym.

Zobacz też