
Od maja 2020 roku w Rosji rozpoczęła się oficjalna sprzedaż zewnętrznych dysków twardych WD My Book, które wspierają sprzętowe szyfrowanie AES z kluczem o długości 256 bitów. Z powodu ograniczeń ustawowych, wcześniej podobne urządzenia można było nabywać jedynie w zagranicznych sklepach internetowych lub na rynku szarym, jednak teraz każdy chętny ma możliwość zakupu zabezpieczonego nośnika z trzyletnią gwarancją od Western Digital. Z okazji tego znaczącego wydarzenia postanowiliśmy zrobić małą wycieczkę w historię i zrozumieć, jak powstał Advanced Encryption Standard i co sprawia, że jest on tak dobry w porównaniu do konkurencyjnych rozwiązań.
Przez długi czas oficjalnym standardem symetrycznego szyfrowania w USA był DES (Data Encryption Standard — standard szyfrowania danych), opracowany przez firmę IBM i wpisany na listę federalnych standardów przetwarzania informacji w 1977 roku (FIPS 46-3). Podstawą algorytmu były osiągnięcia uzyskane w trakcie projektu badawczego o kodowej nazwie Lucifer. Gdy 15 maja 1973 roku Krajowy Instytut Standaryzacji USA ogłosił przeprowadzenie konkursu, którego celem było stworzenie standardu szyfrowania dla instytucji rządowych, amerykańska korporacja przystąpiła do wyścigu kryptograficznego z trzecią wersją Lucifera, która wykorzystywała zaktualizowaną sieć Feistela. I na równi z innymi uczestnikami poniosła porażkę: żaden z algorytmów przedstawionych w pierwszym konkursie nie spełniał rygorystycznych wymagań sformułowanych przez ekspertów NBS.

Oczywiście IBM nie mogło po prostu zaakceptować porażki: gdy 27 sierpnia 1974 roku konkurs został wznowiony, amerykańska korporacja ponownie złożyła wniosek, przedstawiając ulepszoną wersję Lucifera. Tym razem jury nie miało żadnych zastrzeżeń: przeprowadzając odpowiednią pracę nad błędami, IBM skutecznie usunęła wszystkie niedociągnięcia, więc nie można było się do niczego przyczepić. Osiągając przekonujące zwycięstwo, Lucifer zmienił nazwę na DES i już 17 marca 1975 roku został opublikowany w federalnym rejestrze.
Jednak podczas otwartych sympozjów, zorganizowanych w 1976 roku w celu omówienia nowego standardu kryptograficznego, DES został poddany surowej krytyce ze strony środowiska eksperckiego. Przyczyną tego były zmiany wprowadzone w algorytmie przez specjalistów NSA: w szczególności długość klucza została zmniejszona do 56 bitów (pierwotnie Lucifer obsługiwał klucze o długości 64 i 128 bitów), a także zmieniona logika działania bloków permutacji. Z perspektywy kryptografów, „ulepszenia” były bezsensowne, a jedynym celem, który przyświecał Agencji Bezpieczeństwa Narodowego, było uzyskanie możliwości nieograniczonego przeglądania zaszyfrowanych dokumentów.
W związku z wymienionymi oskarżeniami w Senacie USA powołano specjalną komisję, której celem była weryfikacja zasadności działań NSA. W 1978 roku opublikowano raport końcowy z dochodzenia, w którym podano następujące informacje:
- przedstawiciele NSA uczestniczyli w opracowaniu DES jedynie pośrednio, a ich wkład dotyczył tylko zmiany działania bloków permutacji;
- ostateczna wersja DES okazała się bardziej odporna na włamania i analizy kryptograficzne niż wersja pierwotna, więc wprowadzone zmiany były uzasadnione;
- długość klucza wynosząca 56 bitów jest wystarczająca dla przytłaczającej większości zastosowań, ponieważ do złamania takiego szyfru potrzeba superkomputera wartego co najmniej kilka dziesięcioleci milionów dolarów, a ponieważ zwykli przestępcy, a nawet profesjonalni hakerzy nie dysponują takimi zasobami, nie ma się czym martwić.
Wnioski komisji częściowo potwierdziły się w 1990 roku, kiedy izraelscy kryptografowie Eli Biham i Adi Shamir, pracując nad koncepcją różnicowego kryptanalizowania, przeprowadzili obszerne badania algorytmów blokowych, wśród których znalazł się również DES. Naukowcy doszli do wniosku, że nowy model permutacji okazał się znacznie bardziej odporny na ataki niż pierwotny, co oznacza, że NSA rzeczywiście pomogło usunąć kilka wad w algorytmie.

Adi Shamir
Jednocześnie, ograniczenie długości klucza okazało się problemem, i to bardzo poważnym, co w 1998 roku przekonywująco udowodniła organizacja Electronic Frontier Foundation (EFF) w ramach eksperymentu DES Challenge II, przeprowadzonego pod egidą RSA Laboratory. Specjalnie do złamania DES zbudowano superkomputer o kodowej nazwie EFF DES Cracker, nad którym pracowali John Gilmore, współzałożyciel EFF i kierownik projektu DES Challenge, oraz Paul Kocher, założyciel firmy Cryptography Research.

Procesor EFF DES Cracker
Opracowany przez nich system zdołał pomyślnie dobrać klucz do zaszyfrowanego wzoru metodą prostego przeszukiwania w ciągu zaledwie 56 godzin, co oznacza mniej niż trzy dni. Do tego EFF DES Cracker musiał sprawdzić około jednej czwartej wszystkich możliwych kombinacji, co oznacza, że nawet w najbardziej niekorzystnych warunkach złamanie zajmie około 224 godzin, czyli nie więcej niż 10 dni. Koszt superkomputera, uwzględniając wydatki na jego projektowanie, wyniósł zaledwie 250 tysięcy dolarów. Łatwo się domyślić, że dziś złamanie takiego szyfru jest jeszcze prostsze i tańsze: nie tylko sprzęt stał się znacznie potężniejszy, ale dzięki rozwojowi technologii internetowych haker nie musi nawet kupować ani wynajmować niezbędnego sprzętu — wystarczy stworzyć botnet z zainfekowanych wirusem komputerów.
Eksperyment ten wyraźnie pokazał, jak bardzo DES stał się moralnie przestarzały. A ponieważ w tamtym czasie algorytm wykorzystywano w prawie 50% rozwiązań z zakresu szyfrowania danych (według wyceny tej samej EFF), kwestia znalezienia alternatywy stała się bardziej paląca niż kiedykolwiek.
Nowe wyzwania — nowy konkurs

Warto zauważyć, że poszukiwania zastępczego rozwiązania dla Data Encryption Standard rozpoczęły się praktycznie równocześnie z przygotowaniem EFF DES Cracker: Narodowy Instytut Standardów i Technologii (NIST) USA ogłosił w 1997 roku rozpoczęcie konkursu na algorytmy szyfrowania, mającego na celu wyłonienie nowego „złotego standardu” w zakresie kryptobezpieczeństwa. A jeśli w przeszłości podobne przedsięwzięcia odbywały się wyłącznie „dla swoich”, to pamiętając o nieudanym doświadczeniu sprzed 30 lat, w NIST postanowiono, że konkurs będzie całkowicie otwarty: mogła w nim wziąć udział każda firma i każda osoba prywatna, niezależnie od miejsca zamieszkania czy obywatelstwa.
Takie podejście okazało się uzasadnione już na etapie selekcji kandydatów: wśród autorów, którzy zgłosili chęć udziału w konkursie Advanced Encryption Standard, znaleźli się zarówno światowej sławy kryptolodzy (Ross Anderson, Eli Biham, Lars Knudsen), małe firmy zajmujące się bezpieczeństwem cybernetycznym (Counterpane), duże korporacje (niemiecka Deutsche Telekom), instytucje edukacyjne (Katolicki Uniwersytet w Leuven, Belgia), a także startupy i małe firmy, o których mało kto słyszał poza ich krajami (np. Tecnologia Apropriada Internacional z Kostaryki).
Interesujące jest to, że tym razem w NIST zatwierdzono tylko dwa podstawowe wymagania dla algorytmów uczestniczących:
- bloki danych muszą mieć stały rozmiar 128 bitów;
- algorytm musi obsługiwać co najmniej trzy rozmiary kluczy: 128, 192 i 256 bitów.
Osiągnięcie takiego wyniku było stosunkowo proste, ale jak mówi przysłowie, diabeł tkwi w szczegółach: wymagań wtórnych było znacznie więcej, a spełnienie ich było o wiele trudniejsze. Tymczasem na ich podstawie recenzenci NIST przeprowadzali selekcję uczestników. Oto jakie kryteria musieli spełnić kandydaci na zwycięzców:
- zdolność do przeciwdziałania wszelkim znanym w momencie przeprowadzania konkursu atakom kryptanalitycznym, w tym atakom na kanałach bocznych;
- brak słabych i ekwiwalentnych kluczy szyfrowania (przez ekwiwalentne rozumie się klucze, które, mimo że mają znaczące różnice, prowadzą do uzyskania identycznych szyfrów);
- szybkość szyfrowania jest stabilna i mniej więcej taka sama na wszystkich aktualnych platformach (od 8 do 64 bitów);
- optymalizacja pod systemy wieloprocesorowe, wsparcie dla równoległego przetwarzania operacji;
- minimalne wymagania dotyczące pamięci RAM;
- brak ograniczeń w standardowych scenariuszach użycia (jako baza do tworzenia funkcji skrótu, generatorów liczb pseudolosowych itp.);
- struktura algorytmu powinna być uzasadniona i łatwa do zrozumienia.
Ostatni punkt może wydawać się dziwny, jednak po namyśle nie jest pozbawiony sensu, ponieważ dobrze zorganizowany algorytm jest znacznie łatwiejszy do analizowania, a także trudniej jest w nim ukryć «backdoora», dzięki któremu programista mógłby uzyskać nieograniczony dostęp do zaszyfrowanych danych.
Nabór zgłoszeń do konkursu Advanced Encryption Standard trwał półtora roku. Wzięło w nim udział 15 algorytmów:
- CAST-256, opracowany przez kanadyjską firmę Entrust Technologies na bazie CAST-128, stworzonego przez Carla Adama i Stafforda Tavaresa;
- Crypton, opracowany przez kryptologa Che Hunga Lima z południowokoreańskiej firmy Future Systems, zajmującej się cyberbezpieczeństwem;
- DEAL, którego koncepcję początkowo zaproponował duński matematyk Lars Knudsen, a następnie rozwijał Richard Outerbridge, który zgłosił udział w konkursie;
- DFC, wspólny projekt École supérieure Paris, Narodowego Centrum Badań Naukowych Francji (CNRS) i firmy telekomunikacyjnej France Telecom;
- E2, opracowany pod egidą największej firmy telekomunikacyjnej Japonii Nippon Telegraph and Telephone;
- FROG, dzieło kostarykańskiej firmy Tecnologia Apropriada Internacional;
- HPC, wymyślony przez amerykańskiego kryptologa i matematyka Richarda Shreppela z Uniwersytetu w Arizonie;
- LOKI97, stworzony przez australijskich kryptografów Lawrence'a Browna i Jennifer Seberri;
- Magenta, opracowany przez Mike'a Jacobsona i Klausa Hubera dla niemieckiej firmy telekomunikacyjnej Deutsche Telekom AG;
- MARS od firmy IBM, w stworzeniu którego uczestniczył Don Coppersmith — jeden z autorów Lucifera;
- RC6, napisany przez Rona Rivesta, Matta Robshaw i Raya Sidneya specjalnie na konkurs AES;
- Rijndael, stworzony przez Vincenta Раймана i Йохана Даменa z Uniwersytetu Katolickiego w Louvain;
- SAFER+, opracowany przez kalifornijską firmę Cylink we współpracy z Narodową Akademią Nauk Republiki Armenii;
- Serpent, stworzony przez Rossa Andersona, Eli Bihama i Larsa Knudsena;
- Twofish, opracowany przez zespół badawczy Bruce'a Schneiera na bazie algorytmu kryptograficznego Blowfish, zaproponowanego przez Bruce'a w 1993 roku.
Na koniec pierwszej rundy wyłoniono 5 finalistów, wśród których znalazły się Serpent, Twofish, MARS, RC6 i Rijndael. Członkowie jury znaleźli niedociągnięcia praktycznie w każdym z wymienionych algorytmów, z wyjątkiem jednego. Kto okazał się zwycięzcą? Przedłużmy trochę intrygę i najpierw przyjrzyjmy się podstawowym zaletom i wadom każdego z wymienionych rozwiązań.
MARS
W przypadku „boga wojny” eksperci zauważyli tożsamość procedury szyfrowania i deszyfrowania danych, jednak na tym ograniczyły się jego zalety. Algorytm IBM okazał się zaskakująco żarłoczny, co czyniło go nieodpowiednim do pracy w warunkach ograniczonych zasobów. Były również problemy z równoległym przetwarzaniem. Aby MARS działał efektywnie, potrzebował wsparcia sprzętowego dla 32-bitowego mnożenia i obrotu o zmienną liczbę bitów, co znowu narzucało ograniczenia na listę wspieranych platform.
MARS okazał się również wystarczająco podatny na ataki czasowe i energetyczne, miał problemy z rozszerzaniem kluczy „w locie”, a jego nadmierna złożoność utrudniała analizę architektury i powodowała dodatkowe problemy na etapie praktycznej realizacji. Krótko mówiąc, na tle innych finalistów MARS wyglądał jak prawdziwy outsider.
RC6
Algorytm odziedziczył część przekształceń po swoim poprzedniku, RC5, który był wcześniej dokładnie badany, co w połączeniu z prostą i czytelną strukturą czyniło go całkowicie przejrzystym dla ekspertów i wykluczało obecność „backdoorów”. Ponadto RC6 wykazywał rekordowe prędkości przetwarzania danych na platformach 32-bitowych, a procedury szyfrowania i deszyfrowania były w nim realizowane zupełnie identycznie.
Jednak algorytm miał te same problemy, co wcześniej wspomniany MARS: istniała podatność na ataki przez boczne kanały, zależność wydajności od wsparcia operacji 32-bitowych, a także problemy z równoległym przetwarzaniem, rozszerzaniem kluczy i wymaganiami sprzętowymi. W związku z tym na rolę zwycięzcy w ogóle się nie nadawał.
Twofish
Twofish okazał się dość szybki i dobrze zoptymalizowany do pracy na urządzeniach o niskiej mocy, doskonale radził sobie z rozszerzaniem kluczy i przewidywał kilka wariantów implementacji, co pozwalało na dokładną adaptację do konkretnych zadań. Jednocześnie "dwie rybki" były podatne na ataki z kanałów bocznych (szczególnie na ataki czasowe i dotyczące zużycia mocy), nie współpracowały z systemami wieloprocesorowymi i charakteryzowały się nadmierną złożonością, co, zresztą, wpłynęło również na szybkość rozszerzenia klucza.
Serpent
Algorytm miał prostą i zrozumiałą strukturę, co znacznie ułatwiało jego audyt, nie był szczególnie wymagający wobec mocy platformy sprzętowej, obsługiwał rozszerzanie kluczy "w locie" i stosunkowo łatwo poddawał się modyfikacji, co korzystnie odróżniało go od jego rywali. Mimo to, Serpent był w zasadzie najwolniejszym z finalistów, a procedury szyfrowania i deszyfrowania informacji różniły się diametralnie i wymagały zasadniczo różnych podejść do implementacji.
Rijndael
Rijndael okazał się niezwykle bliski ideału: algorytm w pełni spełniał wymagania NIST, przy tym nie ustępował, a pod względem ogólnych charakterystyk zauważalnie przewyższał konkurentów. Słabe miejsca Rijndaela to jedynie dwa: podatność na ataki dotyczące zużycia energii w procedurze rozszerzania klucza, co jest dosyć specyficznym scenariuszem, oraz pewne problemy z rozszerzaniem klucza "w locie" (ten mechanizm działał bez ograniczeń jedynie u dwóch konkurentów — Serpent i Twofish). Ponadto, według ocen ekspertów, Rijndael miał nieco mniejszy zapas kryptostanowiska niż Serpent, Twofish i MARS, co jednak w absolutnej większości zostało zrekompensowane odpornością na przytłaczającą większość rodzajów ataków z kanałów bocznych oraz szerokim zakresem opcji implementacji.
Kategoria
Serpent
Twofish
MARS
RC6
Rijndael
Odporność kryptograficzna
+
+
+
+
+
Zapas odporności kryptograficznej
++
++
++
+
+
Szybkość szyfrowania przy implementacji programowej
—
±
±
+
+
Szybkość rozszerzania klucza przy implementacji programowej
±
—
±
±
+
Karty smart z dużą ilością zasobów
+
+
—
±
++
Karty smart z ograniczoną ilością zasobów
±
+
—
±
++
Implementacja sprzętowa (FPGA)
+
+
—
±
+
Implementacja sprzętowa (dedykowany układ scalony)
+
±
—
—
+
Ochrona przed atakami na czas realizacji i zużycie energii
+
±
—
—
+
Ochrona przed atakami na podstawie zużywanej mocy podczas procedury rozszerzania klucza
±
±
±
±
—
Ochrona przed atakami na podstawie zużywanej mocy w realizacjach na kartach inteligentnych
±
+
—
±
+
Możliwość rozszerzania klucza „w locie”
+
+
±
±
±
Dostępność wariantów realizacji (bez utraty zgodności)
+
+
±
±
+
Możliwość obliczeń równoległych
±
±
±
±
+
W sumie właściwości Rijndael znacznie przewyższały konkurencję, więc wynik finalnego głosowania okazał się całkowicie uzasadniony: algorytm zdobył zdecydowane zwycięstwo, uzyskując 86 głosów „za” i tylko 10 „przeciw”. Serpent zajął zaszczytne drugie miejsce z 59 głosami, podczas gdy Twofish ulokował się na trzeciej pozycji: poparło go 31 członków jury. Następnie był RC6, który zdobył 23 głosy, a MARS logicznie znalazł się na ostatnim miejscu, uzyskując jedynie 13 głosów „za” i 83 „przeciw”.
2 października 2000 roku Rijndael został ogłoszony zwycięzcą konkursu AES, tradycyjnie zmieniając nazwę na Advanced Encryption Standard, pod którą jest znany do dzisiaj. Procedura standaryzacji trwała około roku: 26 listopada 2001 roku AES został wpisany na listę Federalnych standardów przetwarzania informacji, uzyskując indeks FIPS 197. Nowy algorytm został wysoko oceniony również w NSA, a od czerwca 2003 roku Agencja Bezpieczeństwa Narodowego USA uznała nawet AES z 256-bitowym kluczem szyfrowania za wystarczająco bezpieczny do ochrony dokumentów kategorii „ściśle tajne”.
Zewnętrzne dyski WD My Book z obsługą sprzętowego szyfrowania AES-256
Dzięki połączeniu wysokiej niezawodności i wydajności, Advanced Encryption Standard szybko zyskał uznanie na całym świecie, stając się jednym z najpopularniejszych algorytmów szyfrowania symetrycznego i wchodząc w skład wielu bibliotek kryptograficznych (OpenSSL, GnuTLS, Crypto API Linuxa i inne). Obecnie AES jest szeroko stosowany w aplikacjach na poziomie korporacyjnym i użytkownika, a jego wsparcie zostało wdrożone w wielu różnorodnych urządzeniach. W szczególności sprzętowe szyfrowanie AES-256 stosowane jest w zewnętrznych dyskach Western Digital z rodziny My Book w celu zapewnienia ochrony przechowywanych danych. Poznajmy te urządzenia bliżej.

Linie zewnętrznych dysków twardych WD My Book obejmuje sześć modeli o różnych pojemnościach: 4, 6, 8, 10, 12 i 14 terabajtów, co pozwala na dobranie urządzenia idealnie dopasowanego do Twoich potrzeb. Domyślnie zewnętrzne HDD wykorzystują system plików exFAT, co zapewnia współpracę z szerokim zakresem systemów operacyjnych, w tym z Microsoft Windows 7, 8, 8.1 i 10, a także z Apple macOS w wersji 10.13 (High Sierra) i nowszych. Użytkownicy systemu Linux mają możliwość podłączenia dysku za pomocą sterownika exfat-nofuse.
Podłączenie My Book do komputera odbywa się za pomocą wysokowydajnego interfejsu USB 3.0, który jest zgodny wstecz z USB 2.0. Dzięki temu możliwe jest przesyłanie plików z maksymalną prędkością, ponieważ przepustowość USB SuperSpeed wynosi 5 Gbit/s (czyli 640 MB/s), co jest więcej niż wystarczające. Jednocześnie funkcja wstecznej zgodności zapewnia wsparcie dla praktycznie wszystkich urządzeń wydanych w ciągu ostatnich 10 lat.

Chociaż My Book nie wymaga instalacji dodatkowego oprogramowania dzięki technologii automatycznego wykrywania i konfiguracji urządzeń Plug and Play, zalecamy jednak skorzystanie z firmowego pakietu oprogramowania WD Discovery, który jest dołączany do każdego urządzenia.

W skład zestawu wchodzą następujące aplikacje:
WD Drive Utilities
Program pozwala uzyskać aktualne informacje o bieżącym stanie dysku na podstawie danych S.M.A.R.T. oraz sprawdzić dysk twardy pod kątem uszkodzonych sektorów. Oprócz tego, za pomocą Drive Utilities można szybko usunąć wszystkie dane zapisane na Twoim My Book: pliki będą nie tylko usunięte, ale całkowicie nadpisane kilka razy, dzięki czemu ich przywrócenie po zakończeniu procedury nie będzie możliwe.
WD Backup
Korzystając z tego narzędzia, można skonfigurować automatyczne tworzenie kopii zapasowych według ustalonego harmonogramu. Warto zaznaczyć, że WD Backup wspiera współpracę z Google Drive i Dropbox, umożliwiając wybór wszelkich kombinacji «źródło-cel» podczas tworzenia kopii zapasowej. W ten sposób można automatycznie przenosić dane z My Book do chmury lub importować potrzebne pliki i foldery z wymienionych usług zarówno na zewnętrzny dysk twardy, jak i na lokalny komputer. Ponadto dostępna jest możliwość synchronizacji z kontem w serwisie społecznościowym Facebook, co pozwala na automatyczne tworzenie kopii zapasowych zdjęć i filmów z Twojego profilu.
WD Security
To właśnie za pomocą tego narzędzia można ograniczyć dostęp do dysku hasłem oraz zarządzać szyfrowaniem danych. Wszystko, co jest potrzebne, to podanie hasła (jego maksymalna długość może wynosić 25 znaków), po czym wszystkie informacje na dysku zostaną zaszyfrowane, a dostęp do zapisanych plików będą miały jedynie osoby znające kod. Dla większej wygody WD Security pozwala na stworzenie listy zaufanych urządzeń, przy podłączeniu których My Book zostanie automatycznie odblokowany.
Podkreślamy, że WD Security jedynie zapewnia wygodny interfejs wizualny do zarządzania ochroną kryptograficzną, podczas gdy szyfrowanie danych odbywa się na poziomie sprzętowym samego zewnętrznego dysku. Takie podejście zapewnia szereg istotnych korzyści, a mianowicie:
- za tworzenie kluczy szyfrujących odpowiada sprzętowy generator liczb losowych, a nie algorytm pseudolosowy, co pozwala osiągnąć wysoki poziom entropii oraz zwiększyć ich odporność kryptograficzną;
- w trakcie procedury szyfrowania i deszyfrowania klucze kryptograficzne nie są przechowywane w pamięci operacyjnej komputera, podobnie jak nie są tworzone tymczasowe kopie przetwarzanych plików w ukrytych folderach na dysku systemowym, co pomaga zminimalizować prawdopodobieństwo ich przechwycenia;
- prędkość przetwarzania plików nie zależy od wydajności urządzenia klienckiego;
- po aktywacji ochrony szyfrowanie plików odbywa się automatycznie, «w locie», nie wymagając dodatkowych działań ze strony użytkownika.
Wszystkie te czynniki gwarantują bezpieczeństwo danych i praktycznie eliminują ryzyko kradzieży poufnych informacji. Biorąc pod uwagę dodatkowe możliwości dysku, My Book jest jednym z najlepszych zabezpieczonych magazynów dostępnych na rynku rosyjskim.
Źródło: habr.com
