Jak zaprojektować system informacji postkwantowej
Jean-Louis Olié, Alain Fernando-Santana; listopad 2022 r
W tym artykule przedstawiono koncepcję Post Quantum Information Systems (PQIS), nową koncepcję mającą na celu zdefiniowanie systemów informatycznych zaprojektowanych tak, aby opierały się wszelkim atakom, zarówno z komputerów klasycznych, jak i kwantowych. W tym artykule CyferAll proponuje definicję PQIS i jej podejście do projektowania takich systemów oraz identyfikowania podstawowych elementów składowych.
Tło
W naszym poprzednim artykule omówiliśmy, dlaczego i w jaki sposób systemy informatyczne i przesyłane przez nie dane cyfrowe pozostają narażone na cyberprzestępczość, pomimo stosowanych obecnie kryptosystemów do ochrony danych cyfrowych. Dokonaliśmy również przeglądu nowych zagrożeń, które komputery kwantowe będą generować w miarę dojrzewania technologii, i wyjaśniliśmy, dlaczego te nowe zagrożenia stwarzają bezpośrednie zagrożenie wymagające od rządów i przedsiębiorstw wymiany obecnych systemów kryptograficznych . Ale w jaki sposób moglibyśmy zaprojektować systemy informatyczne, aby uczynić je odpornymi na zagrożenia komputerów kwantowych i zapewnić cyfrowym danym poziom ochrony zbliżony do „doskonałej tajemnicy”, koncepcji pierwotnie zdefiniowanej przez Claude'a Shannona w 1949 roku? [1]Celem tego artykułu jest zaproponowanie różnych ścieżek, którymi podążanie może przybliżyć nas do wizji Shannona, dostarczając jednocześnie wstępnych elementów budulcowych Post-Quantum Information System .

Definiowanie postkwantowego systemu informacyjnego
Na potrzeby tego artykułu postkwantowy system informacyjny jest definiowany jako system informacyjny na poziomie aplikacji, działający na jednym lub kilku komputerach połączonych siecią i mający zapewniać użytkownikom systemu całkowitą ochronę :
(i) przetworzonych danych cyfrowych we wszystkich możliwych stanach: „w użyciu”, „w spoczynku” i „w tranzycie” , od stworzenia do restytucji, przed wszelkimi zagrożeniami ze strony komputerów klasycznych lub kwantowych;
(ii) przed wirusami i złośliwym oprogramowaniem , które mogą znajdować się na komputerach przetwarzających dane cyfrowe; oraz
(iii) podczas usług dołączania i logowania użytkowników obsługiwanych przez system.
Całkowita ochrona danych
Najpierw wyjaśnijmy, co naprawdę oznacza „całkowita ochrona danych” i jakie są rzeczywiste ograniczenia ochrony, jaką system informacyjny może zapewnić danym cyfrowym. Rzeczywiście, z różnych powodów system informacyjny nigdy nie może zapewnić „całkowitej” ochrony jako takiej, ponieważ istnieją praktyczne realia, które to uniemożliwiają. Na przykład:
Zachowanie użytkownika
Użytkownicy są osobami fizycznymi i jako tacy są ostatecznym posiadaczem rzeczywistych informacji lub dostępu do informacji, które mają być chronione. Jednak osoby te zawsze mają możliwość ujawnienia informacji , czy to umyślnie (z upoważnieniem lub bez), czy też nieumyślnie w wyniku zwykłego lub rażącego zaniedbania. Bez względu na to, jak wyrafinowany jest system informacyjny, nigdy nie zapobiegnie on nieupoważnionemu celowemu lub wynikającemu z zaniedbania niezamierzonemu ujawnieniu danych lub danych uwierzytelniających przez użytkownika. Można to złagodzić za pomocą procedur poświadczania bezpieczeństwa , podziału informacji z kryteriami „wiedzy koniecznej”, a także szkolenia personelu w celu podniesienia świadomości w zakresie bezpieczeństwa .
Ponadto instrukcje oprogramowania leżące u podstaw każdego systemu informatycznego są kodowane przez osoby, które mogą mieć ukryte motywy. Tylne drzwi umieszczone celowo podczas opracowywania rozwiązania przez programistę, które następnie doprowadzą do ataków dnia zerowego, nie mogą zostać zidentyfikowane z wyprzedzeniem i chronione przed nimi za pomocą systemu informatycznego. Można temu zaradzić, przeprowadzając przeglądy kodu i zewnętrzne procedury certyfikacji .
Nadzór w obiekcie
Ponadto użytkownicy i urządzenia peryferyjne znajdują się w obiektach fizycznych (firma lub biuro domowe) i obiekty te mogą być obiektem nieautoryzowanego sprzętu monitorującego zdolnego do przechwytywania danych uwierzytelniających dostęp / wymienianych danych, a system informatyczny nie może chronić przed takim scenariuszem. Można to złagodzić za pomocą systemów wykrywających obecność niepożądanych urządzeń.
Dlatego definicja „całkowitej ochrony” jest rozumiana jako opisująca środki, które mieszczą się w zakresie technologicznym systemu informatycznego i zarządzania danymi cyfrowymi .
Wstępne rozważania dotyczące Post Quantum Information System (PQIS)
Sprzęt/oprogramowanie układowe
Idealnie, PQIS powinien być łatwo dostępny i jako taki nie wymagać użycia specyficznego, dostosowanego lub dostosowanego sprzętu komputerowego. Ponadto:
i. komponenty sprzętu komputerowego i ich oprogramowania układowego nie mogą zostać naruszone, a proces zapewniający ten „czysty” stan musi poprzedzać ich połączenie z PQIS;
II. procesor, płyta procesora i pamięć RAM muszą działać bezpiecznie; oraz
iii. urządzenia peryferyjne przechwytujące/renderujące muszą być bezpieczne i uniemożliwiać potajemny dostęp lub wyciek danych do nieupoważnionych odbiorców.
System operacyjny
System operacyjny odgrywa fundamentalną rolę w działaniu komputera, ale jest elementem oprogramowania i dlatego może być modyfikowany przez wirusy lub złośliwe oprogramowanie . Zmniejszenie podatności systemu operacyjnego na wirusy i złośliwe oprogramowanie ma fundamentalne znaczenie dla stworzenia bezpiecznego PQIS. Jedną z opcji ochrony systemu operacyjnego jest uruchomienie go jako maszyny wirtualnej i umieszczenie go w całości w pamięci RAM w celu ochrony przed wszelkimi złośliwymi modyfikacjami.
Prawa dostępu
Vinton G. Cerf, jeden z projektantów kluczowych bloków Internetu, powiedział, że przy tworzeniu nowej sieci „nie skupialiśmy się na tym, jak można celowo zniszczyć system”. To pozostaje wyzwaniem do dziś. Systemy informatyczne przyznają prawa dostępu zatwierdzonym użytkownikom, a następnie nie wątpią już w ich intencje. Ta logika okazała się zasadniczo błędna, ponieważ wydaje się, że na zewnątrz sieci prywatnej jest tyle samo użytkowników o złych intencjach, co wewnątrz sieci prywatnej. Amerykański Narodowy Instytut Standardów i Technologii (NIST) odniósł się do tego problemu w swojej specjalnej publikacji z 2020 r. [2] dotyczącej modeli systemów informatycznych Zero Trust. W takim modelu prawa dostępu do danych in-the-clear są przyznawane tylko komputerom, których użytkownicy udowodnili, że są godni zaufania w zakresie dostępu do danych. Dopóki ten warunek wstępny nie zostanie spełniony, komputer nie jest zaufany, a składnik systemu do egzekwowania zasad uniemożliwia udostępnianie danych użytkownikowi komputera w sposób jawny. Komponent egzekwowania zasad działa pod kontrolą punktu decyzyjnego zasad, zarządzając prawami wszystkich użytkowników do dostępu do każdej kategorii danych. Model ten wymaga jednak dalszego dopracowania. Rzeczywiście, jak widzieliśmy, komputer nie może być uznany za godny zaufania, ponieważ mógł zostać zainfekowany wirusami lub złośliwym oprogramowaniem lub dane dostępowe użytkownika mogły zostać skradzione przy użyciu technik opisanych wcześniej w tym artykule. Aby chronić komputer przed zainfekowaniem wirusem lub złośliwym oprogramowaniem, wdrożenie modelu zerowego zaufania musi stworzyć nierozerwalny łańcuch przechowywania danych między chronionymi enklawami . W takim modelu szyfrowanie end-to-end jest faktycznie realizowane jako bezpieczna enklawa do bezpiecznej enklawy , z dużo lepszymi gwarancjami ochrony nie tylko danych „w tranzycie”, ale także danych „w użyciu” i danych „w spoczynku”.
W celu ochrony przed użytkownikiem, którego dane dostępowe zostały skradzione, system informatyczny może regularnie przeprowadzać weryfikacje tożsamości , biometryczne lub inne, w zależności od analizy zachowania użytkownika przez system informatyczny, wcześniejszego dostępu do tych samych informacji, pory dnia, lokalizacji, z której żądanie dostępu itp. itp. Nie należy już zakładać, że użytkownik ma jakiekolwiek prawo do przebywania w sieci, a tym bardziej do dostępu do żądanych informacji.
Rola przeglądarki
Jak sama nazwa wskazuje, przeglądarka internetowa została wymyślona, aby ułatwić poruszanie się po Internecie i pobieranie informacji z witryn lub innych lokalizacji internetowych. Przeglądarka to także program, który konfiguruje połączenia wideokonferencyjne, internetowe połączenia głosowe, pocztę internetową i czat w określonych aplikacjach internetowych. Większość informacji przesyłanych przez przeglądarkę jest jasna, ponieważ ta przeglądarka jest punktem końcowym „szyfrowania od końca do końca”w tych aplikacjach internetowych. Rzeczywiście, chociaż protokół TLS zapewnia symetryczne szyfrowanie danych i asymetryczną wymianę kluczy z uwierzytelnianiem, nie jest w stanie oprzeć się atakom kwantowym. Ponadto protokół TLS chroni dane tylko podczas transportu między przeglądarkami. Przed zaszyfrowaniem i po odszyfrowaniu dane znajdują się w pamięci podręcznej przeglądarek i mogą zostać wydobyte lub naruszone przez wirusy i złośliwe oprogramowanie. Pojawienie się plików cookie i ich możliwości śledzenia, gromadzenia i przechowywania danych wynikających z przeglądania przez użytkownika (eksploracja danych) stworzyło możliwość uzyskania przychodów w takiej proporcji, że przeglądarka stała się zarówno narzędziem nadzoru, jak i narzędziem ułatwiającym przeglądanie Internetu/usługi internetowe . Ale aby podjąć działania związane z eksploracją danych na temat informacji przesyłanych przez przeglądarkę, informacje te muszą być jawne. Ponieważ przeglądarki są podstawą każdego przeglądania Internetu i komunikacji z użytkownikami, a głównym celem wydawcy ich przeglądarek jest eksploracja danych i zarabianie na nich, w PQIS, gdzie należy bezwzględnie unikać ujawniania/kompromitowania danych, przeglądarka nie może odgrywać roli, jeśli chodzi o ochronę danych . W PQIS należy przejrzeć komponenty komputera w celu zidentyfikowania chronionych enklawktóre mogą przechowywać dane w sposób jawny i to właśnie te enklawy powinny być bezpośrednio zarządzane przez komponent egzekwowania zasad. Tylko w tych enklawach dane mogą być jawne i gdzie bezpiecznie mogą zachodzić zmiany stanu danych, gdy przeprowadzana jest autoryzacja użytkownika podczas przejścia z jednego z trzech stanów „w użyciu”, „w spoczynku” lub „w tranzycie” do innego z tych trzech stanów. Te chronione enklawy to także miejsca, w których sprzętowe urządzenia peryferyjne niezbędne do tworzenia lub renderowania informacji, takie jak klawiatura, mikrofon, kamera, głośnik czy ekran, powinny przechwytywać i renderować dane.
Chronione enklawy
We wszystkich nowoczesnych komputerach, bez określonego komponentu sprzętowego, trzy możliwe miejsca przechowywania danych to rejestry procesorów, ulotna pamięć o dostępie swobodnym, zwana także pamięcią główną, oraz urządzenia pamięci masowej [3] . Rejestry procesorów mają bardzo ograniczoną pojemność i mogą przechowywać tylko przetwarzane dane. Dostęp do urządzeń pamięci masowej może uzyskać każda aplikacja działająca na komputerze, a aplikacja może być złośliwym oprogramowaniem, dlatego poufne dane nie mogą być widoczne na urządzeniach pamięci masowej. Ostatecznie jedyną lokalizacją do tworzenia chronionych enklaw jest ulotna pamięć o dostępie swobodnym (RAM) .
Rzeczywiście, wycinki pamięci RAM są przydzielane każdemu uruchomionemu procesowi w wyłączny sposób przez procesor. Jeśli kawałek pamięci zostanie przydzielony aplikacji, żaden inny działający jednocześnie proces, w tym wirusy i złośliwe oprogramowanie, nie będzie mógł uzyskać dostępu do danych przechowywanych w przydzielonym segmencie.
Opisana powyżej architektura oprogramowania oparta na pamięci RAM pomaga zaradzić słabościom warstwy aplikacji większości obecnych systemów informatycznych , nie wymagając żadnego konkretnego komponentu sprzętowego, ale system kryptograficzny, na którym musi polegać, pozostaje do omówienia.

Kryptosystem
Jak widzieliśmy wcześniej, pierwszym elementem, który musi zawierać ten kryptosystem, jest algorytm szyfrowania symetrycznego do szyfrowania/odszyfrowywania danych wymagających ochrony w ramach zdefiniowanych powyżej bezpiecznych enklaw. Jak widać w poprzednim artykule, ten algorytm będzie wymagał 512-bitowego klucza, aby oprzeć się atakom komputerów kwantowych, ale musi również: (i) oprzeć się atakom kanału bocznego , (ii) zapewnić weryfikację integralności bez tworzenia słabości lub ograniczeń operacyjnych w jego użyciu oraz (iii) ponieważ dane będą przetwarzane bezpośrednio w pamięci RAM , algorytm musi charakteryzować się bardzo wysoką przepustowością i bardzo niskimi opóźnieniami. To opóźnienie jest definiowane jako liczba cykli zegara niezbędnych do zaszyfrowania, odszyfrowania i sprawdzenia integralności każdego bajtu danych. Aby osiągnąć najwyższy standard w zakresie odporności na kryptoanalizę, algorytm szyfrowania symetrycznego musi być nie do odróżnienia w ramach adaptacyjnego ataku wybranego szyfru (IND-CCA2) [4]. Mówi się, że algorytm szyfrowania ma taką właściwość, jeśli atakujący, mając dwa teksty jawne i tekst zaszyfrowany jednego z tych dwóch tekstów jawnych, nie może określić, który z tekstów jawnych odpowiada tekstowi zaszyfrowanemu z prawdopodobieństwem większym niż ½. Co więcej, ta właściwość musi zostać ustalona, jeśli atakujący ma również dostęp do wyroczni deszyfrującej, która może dostarczyć dowolną liczbę odszyfrowanych form zaszyfrowanych wiadomości wybranych przez atakującego, z wyjątkiem oczywiście samej zaszyfrowanej wiadomości. Ponadto wszystkie te wymagania muszą być spełnione przez algorytm szyfrowania symetrycznego, bez konieczności stosowania żadnego określonego komponentu sprzętowego.
Drugim elementem kryptosystemu jest algorytm szyfrowania asymetrycznego, który umożliwi wymianę opisanego powyżej klucza algorytmu szyfrowania symetrycznego między dwoma odległymi użytkownikami PQIS, gdy użytkownicy ci zostaną dopuszczeni przez Punkt Decyzji Polityki do wymiany komunikatów lub strumieni czasu rzeczywistego danych zaszyfrowanych tym symetrycznym algorytmem. Algorytm asymetryczny musi być postkwantowy, a dokładniej odporny na obliczenia kwantowe z poziomem bezpieczeństwa co najmniej 256 bitów. W lipcu 2022 [5] NIST ogłosił , że po pięcioletniej selekcji zdecydował się na standaryzację algorytmu Crystals-Kyber. Ten algorytm to IND-CCA2 i ma wersję z poziomem bezpieczeństwa 256 bitów.
Ostatnim elementem potrzebnym kryptosystemowi jest kolejny asymetryczny algorytm postkwantowy. Ten algorytm asymetryczny umożliwi uwierzytelnienie użytkowników w wymianie kluczy zaszyfrowanych pierwszym algorytmem asymetrycznym, poprzez zapewnienie tym użytkownikom możliwości podpisania tej wymiany i weryfikacji podpisu ich kontrahentów. W ogłoszeniu z lipca 2022 r. NIST podał również listę trzech algorytmów podpisu cyfrowego do standaryzacji : Crystals-Dilithium, Falcon i Sphincs+.
Dowód słuszności koncepcji
Postkwantowy system informacyjny zbudowany na takich zasadach, z architekturą oprogramowania opartą na modelu Zero-Trust z szyfrowaniem RAM-to-RAM [6] oraz kryptosystemem obejmującym opisane powyżej szyfrowanie symetryczne i asymetryczne, będzie w stanie zapewnić użytkownikom z „całkowitą ochroną” danych cyfrowych. Aby udowodnić wykonalność tej koncepcji, francuski start-up CyferAll wdrożył ją na swojej platformie SaaS obsługującej szeroki zakres usług szyfrowania, przesyłania wiadomości i komunikacji. Architektura oprogramowania RAM-to-RAM i symetryczne algorytmy szyfrowania były przedmiotem dwóch zgłoszeń patentowych. Architektura oprogramowania jest zgodna z zasadami Privacy-By-Designw celu zapewnienia zgodności z RODO / HIPPA. Platforma CyferAll jest również zgodna z francuskimi i europejskimi przepisami mającymi na celu zapobieganie wykorzystywaniu środków kryptograficznych do złych zamiarów i aktów terroryzmu . Pierwsza innowacja dotyczy architektury oprogramowania i związanych z nią protokołów wprowadzania i logowania użytkowników, co pozwala na bezpieczne wspieranie koncepcji oprogramowania RAM-to-RAM przy jednoczesnym poszanowaniu ograniczeń regulacyjnych.

Druga innowacja dotyczy definicji algorytmu szyfrowania symetrycznego, który eliminuje wszystkie słabości wymienione w naszym poprzednim artykule, związane z niewystarczającą długością klucza i atakami pośrednimi. Algorytm szyfrowania symetrycznego wywodzi się z algorytmu „One Time Pad” (OTP) , który został zaproponowany przez amerykańskiego inżyniera Josepha Mauborgne'a jako ulepszona wersja szyfru Vernama [7] , wynalezionego w 1917 roku przez Gilberta Vernama.

Mówi się, że ten algorytm jest semantycznie bezpieczny , ponieważ ma interesującą, matematycznie udowodnioną cechę, że jest całkowicie niezniszczalny , niezależnie od użytej mocy obliczeniowej. Niestety wymaga klucza o takiej samej długości jak dane do zaszyfrowania i wymaga, aby ten klucz był inny dla każdej transmisji danych. Uniemożliwiło to zastosowanie algorytmu w praktyce w nowoczesnych systemach informatycznych, ponieważ klucze, za każdym razem inne, są równie trudne do wymiany, jak same wiadomości, ale ten algorytm OTP to IND-CCA2 o nieskończonym poziomie bezpieczeństwa. Jest również odporny na ataki kanałami bocznymi, ponieważ nie ma stałego klucza, który można pobrać za pomocą analizy statystycznej, i ma zdecydowanie najniższe opóźnienie szyfrowania spośród wszystkich istniejących algorytmów szyfrowania. W ramach technologii kryptosystemowej CyferAll algorytm ten został przekształcony w taki sposób, że jest w stanie generować strumienie losowych podkładek o dowolnej długości i różnych dla każdej wiadomości ze stałego klucza o długości 512 bitów, a także posiada możliwość weryfikacji integralności . Można udowodnić, że pozostaje IND-CCA2, ale z poziomem bezpieczeństwa zredukowanym do 512 bitów, co jest wystarczające, aby oprzeć się obliczeniom kwantowym. Ta transformacja algorytmu ma również na celu zachowanie jego odporności na ataki kanału bocznego . Możliwość weryfikacji integralności zwiększa opóźnienia, ale wydajność pozostaje znacznie lepsza niż w przypadku jakiegokolwiek innego istniejącego standardowego algorytmu . Kiedy ten rozwój został zakończony, NIST nie opublikował jeszcze listy asymetrycznych algorytmów postkwantowych wybranych do standaryzacji, więc algorytmy postkwantowe użyte w dowodzie koncepcji CyferAll to RLCE [8] i XMSS-MT [9] .
Wyniki
Poniżej przedstawiono porównanie technologii algorytmów szyfrowania symetrycznego.
Bezpieczeństwo

Wydajność

Wyniki te potwierdzają, że przy znacznie niższych opóźnieniach proponowany algorytm szyfrowania symetrycznego może zapewnić wymagany poziom bezpieczeństwa 512 bitów, z weryfikacją integralności i odpornością na ataki typu side channel
Podsumowując, możliwe jest zbudowanie systemów informacji postkwantowej, które oferują to, co zdefiniowaliśmy jako „całkowitą ochronę”, poziom ochrony jak najbardziej zbliżony do idealnej tajemnicy, przy jednoczesnym uwzględnieniu potrzeby zapewnienia doskonałego działania aplikacji
[1] Shannon, Claude, Communication Theory of Secrecy Systems , Bell System Technical Journal, 28(4): 656–715, 1949
[2] Rose Scott, Borchert Oliver, Mitchell Stu i Connelly Sean Zero Trust Architecture , specjalna publikacja NIST 800–207, 2020
[3] John L. Hennessy i David Patterson (2006). Architektura komputera: podejście ilościowe (wyd. Czwarte). Morgana Kaufmanna. ISBN 978-0-12-370490-0
[4] Bellare, Mihir; Rogaway, Phillip (11 maja 2005 ). Wprowadzenie do współczesnej kryptografii, rozdział 5: Szyfrowanie symetryczne
[5] https://csrc.nist.gov/News/2022/pqc-candidates-to-be-standardized-and-round-4
[6] CyferAll zarejestrował znak RAM2RAM w celu opisania swojej architektury oprogramowania
[7] Vernam, Gilbert S., Tajny patent na system sygnalizacyjny, Google.com , zarchiwizowane od oryginału w dniu 11 marca 2016 r.
[8] Yongee Wang, Quantum Resistant Random Linear Code Based Public Key Encryption Scheme RLCE, eprint arXiv:1512.08454, 2016
[9] A. Huelsing, D. Butin, S. Gazdag, J. Rijneveld, A. Mohaisen. XMSS : rozszerzony schemat podpisów Merkle ,https://datatracker.ietf.org/doc/html/rfc8391