Przejdź do zawartości

Kwantowa dystrybucja klucza

Z Wikipedii, wolnej encyklopedii
(Przekierowano z QKD)

Kwantowa dystrybucja klucza (ang. Quantum Key Distribution, QKD) – zespół procedur służących do przekazywania tajnych wiadomości z bezpieczeństwem zagwarantowanym przez podstawowe zasady mechaniki kwantowej.

Kwantowa dystrybucja klucza umożliwia bezpieczną komunikację przy użyciu mechaniki kwantowej. Dwie strony mogą stworzyć losowy tajny klucz współdzielony, który może być później wykorzystany do szyfrowania i deszyfrowania wiadomości. Kwantowa dystrybucja klucza często nazywana jest błędnie kryptografią kwantową, tymczasem jest tylko najbardziej znanym zagadnieniem z tej dziedziny.

Ważną i wyjątkową cechą kwantowej dystrybucji jest możliwość wykrycia prób podsłuchu ze strony osób trzecich i uzyskania informacji na temat klucza. Wynika to z fundamentalnych właściwości mechaniki kwantowej: proces pomiaru układu kwantowego zaburza ten układ. Trzecia strona, próbująca dokonać podsłuchu, musi zmierzyć stan tego układu, wprowadzając w ten sposób zakłócenia, które mogą być zmierzone. Protokoły wymiany klucza, wykrywające próby podsłuchu na kanale, opierają się na zjawiskach superpozycji kwantowej lub splątania kwantowego i wymagają przekazywania informacji na stanach kwantowych. Jeżeli ilość podsłuchanej informacji nie przekracza pewnego progu, można wyprodukować krótszy klucz z gwarancją bezpieczeństwa (czyli taki, o którym podsłuchujący nie wie nic). W przeciwnym przypadku taka możliwość nie istnieje i dany klucz jest porzucany.

W odróżnieniu od kwantowych protokołów dystrybucji klucza, bezpieczeństwo tradycyjnych protokołów dystrybucji klucza opiera się na złożoności obliczeniowej funkcji jednokierunkowych i nie istnieje możliwość wykrycia podsłuchu bądź zagwarantowania bezpieczeństwa klucza.

Kwantowa dystrybucja klucza ma na celu stworzenie i przekazanie tajnego klucza, a nie transmisję wiadomości i danych. Przy pomocy tajnego klucza i wybranego algorytmu szyfrującego można zaszyfrować i odszyfrować wiadomość przekazywaną standardowym kanałem informacyjnym. Algorytmem najczęściej kojarzonym z QKD jest szyfr z kluczem jednorazowym ze względu na jego udowodnione bezpieczeństwo w przypadku używania tajnego, losowego klucza[1].

Kwantowa wymiana klucza

[edytuj | edytuj kod]

Komunikacja kwantowa polega na kodowaniu informacji w stanach kwantowych, w szczególności kubitach, w odróżnieniu od komunikacji klasycznej, gdzie używa się bitów. Najczęściej w fizycznej realizacji wykorzystywane są fotony, a protokoły kwantowej dystrybucji klucza wykorzystują szczególne właściwości ich stanów kwantowych. Istnieje kilka różnych podejść do QKD, które mogą być podzielone na dwie główne kategorie według kwantowej właściwości, którą wykorzystują.

Protokoły typu przygotuj i zmierz (ang. prepare-and-measure protocols)
W przeciwieństwie do fizyki klasycznej, akt pomiaru jest integralną częścią mechaniki kwantowej. W ogólności pomiar nieznanego stanu kwantowego zmienia ten stan. Zjawisko to jest związane z zasadą nieoznaczoności, information-disturbance theorem i no cloning theorem. Te właściwości mogą być wykorzystane do wykrycia podsłuchu w czasie próby przesyłu (podsłuchiwanie wymaga dokonania pomiaru), a nawet ilości przechwyconej informacji.
Protokoły oparte na splątaniu kwantowym
Stan kwantowy dwóch lub więcej obiektów kwantowych może stać się powiązany w taki sposób, że mogą być już opisane jako odrębne obiekty, a jako jeden połączony stan kwantowy. W konsekwencji dokonanie przeprowadzenia pomiaru na jednej części układu wpływa na drugą część. Jeżeli każda ze stron ma po jednej części stanu splątanego, każda próba przechwycenia części stanu splątanego zmienia cały układ, ujawniając tym próbę podsłuchu i ilość uzyskanej w ten sposób informacji.

Te dwa podejścia można dalej podzielić na trzy rodziny protokołów; zmiennej dyskretnej, zmiennej ciągłej i distributed phase reference coding. Jako pierwsze opracowano protokoły oparte na zmiennej dyskretnej i są one do dzisiaj najczęściej implementowane. Pozostałe dwie rodziny protokołów skupiają się przede wszystkim na obejściu technicznych ograniczeń eksperymentu.

Opisane niżej dwa protokoły zaliczają się do protokołów zmiennej dyskretnej. Zazwyczaj mówi się o kwantowych protokołach dystrybucji klucza w kontekście praktycznej realizacji opartej na polaryzacjach fotonów. Jednakże w ogólności można użyć dowolnego dwupoziomowego układu kwantowego. Przykładowo wiele praktycznych realizacji BB84, przy użyciu światłowodów, opiera się na stanach fotonów kodowanych fazowo (ang. phase encoded states).

Nadawca (zwyczajowo nazywany Alicją) i odbiorca (Bob) są połączeni kwantowym kanałem komunikacyjnym, który umożliwia przesyłanie stanów kwantowych. W przypadku fotonów kanał ten jest zazwyczaj albo światłowodem, albo po prostu otwartą przestrzenią. Dodatkowo Alicja i Bob mogą komunikować się poprzez klasyczny publiczny kanał przesyłu informacji, np. drogą radiową lub przy pomocy internetu. Żaden z tych kanałów nie musi być bezpieczny; protokół uwzględnia to, że podsłuchujący (zwany Ewą) może podsłuchiwać informacje przesyłane tymi dwoma kanałami.

Protokół BB84: Charles H. Bennett i Gilles Brassard (1984)

[edytuj | edytuj kod]
 Osobny artykuł: BB84.

Powszechnie przyjęta nazwa protokołu, BB84, pochodzi od nazwisk jego twórców i roku opublikowania. Jako jego praktyczną realizację przewidziano wówczas transmisję informacji na spolaryzowanych fotonach.

Bezpieczeństwo tego protokołu wynika z kodowania informacji na stanach nieortogonalnych. Zasada nieoznaczoności powoduje, że w ogólności nie jest możliwe dokonanie pomiaru tych stanów bez ich niszczenia (por. zakaz klonowania). BB84 wykorzystuje dwie wzajemnie nieortogonalne pary ortogonalnych stanów. Pary stanów nazywane są zwyczajowo bazami. Zazwyczaj wykorzystuje się cztery polaryzacje liniowe – pionową (0°), poziomą (90°) oraz dwie skośne (45° i 135°). Można również wykorzystać polaryzacje kołowe. W każdej bazie jeden stan fotonu odpowiada logicznemu 0, a drugi – logicznej 1. Dokonanie jednoznacznego pomiaru stanu fotonu jest możliwe tylko przy znajomości bazy, w której został on nadany. Ponieważ Alicja używa losowej bazy do przesłania pojedynczego bitu Bobowi, Ewa nie jest w stanie podsłuchiwać, nie zostawiając po sobie śladu.

Protokół E91: Artur Ekert (1991)

[edytuj | edytuj kod]

Metoda Ekerta opiera się na splątanych parach fotonów. Mogą być one wytworzone przez Alicję, Boba lub pewne oddzielone od nich źródło. Może to być nawet Ewa. Fotony są następnie rozdzielane, jeden trafia do Alicji, drugi do Boba.

Protokół wykorzystuje właściwości splątania. Przede wszystkim dwa fotony, będące w stanie maksymalnie splątanym, są silnie skorelowane. Oznacza to, że używając odpowiednich stanów splątanych można doprowadzić do sytuacji, że Alicja i Bob mierząc czy ich foton ma polaryzację pionową, czy poziomą, zawsze ze 100% prawdopodobieństwem uzyskają taki sam wynik. Tak samo jest w przypadku dokonywania pomiaru w innej bazie ortogonalnych polaryzacji. Jednakże, poza wymogiem zgodności, konkretny wynik danego pomiaru zawsze jest zupełnie przypadkowy. Alicja nie jest w stanie przewidzieć, czy ona (a zatem i Bob) zmierzą polaryzację poziomą czy pionową. Po drugie, jakakolwiek próba podsłuchu ze strony Ewy niszczy korelacje pomiędzy fotonami, w sposób, który Alicja i Bob mogą wykryć. Oryginalny protokół Ekerta zakłada użycie trzech możliwych stanów i testowanie nierówności Bella celem wykrycia podsłuchu.

Wzmocnienie prywatności i uzgadnianie informacji

[edytuj | edytuj kod]

Protokoły kwantowej dystrybucji klucza opisane powyżej dostarczają Alicji i Bobowi niemal identycznych kluczy współdzielonych, jak również oszacowanie na rozbieżność pomiędzy kluczami. Te różnice mogą być spowodowane przez podsłuch bądź niedoskonałości linii transmisyjnej i detektorów. Jako że niemożliwe jest rozróżnienie pomiędzy tymi dwoma rodzajami błędów, aby mieć pewność bezpieczeństwa przesyłu należy przyjąć założenie, że wszystkie błędy są wprowadzone przez próbę podsłuchu.

Przy założeniu, że odsetek błędu pomiędzy kluczami Alicji i Boba jest mniejszy od pewnego progowego poziomu (20% według danych z kwietnia 2007[2]), dwie poniższe procedury mogą zostać przeprowadzone, aby najpierw usunąć błędne bity, a potem zredukować ilość informacji w posiadaniu Ewy do dowolnie małej wartości. Procedury te zostały po raz pierwszy opisane w 1992 r.[3]

Uzgadnianie informacji

[edytuj | edytuj kod]

Uzgadnianie informacji (ang. information reconciliation) jest metodą korygowania błędów przeprowadzaną pomiędzy kluczami Alicji i Boba, dla upewnienia się, że ich klucze są identyczne. Ponieważ w tej metodzie dane są przekazywane kanałem publicznym i mogą zostać odczytane przez Ewę, istotne jest, by zminimalizować ilość informacji przesyłanych na temat każdego klucza. Popularnym protokołem stosowanym do uzgadniania informacji jest protokół kaskadowy (ang. cascade protocol), przedstawiony w 1994 r.[4] Składa się on z kilku etapów, w których za każdym razem porównywane klucze są dzielone na bloki. W każdym z etapów porównywana jest parzystość odpowiednich bloków. W przypadku wykrycia różnic, przeprowadzane jest przeszukiwanie binarne w celu znalezienia i naprawienia błędu. Jeśli zostanie znaleziony błąd w bloku, który na poprzednim etapie miał zgodną parzystość, oznacza to, że ten blok zawiera kolejny błąd – który będzie znajdowany i poprawiany tak samo jak poprzedni. Proces ten jest powtarzany rekursywnie, stąd nazwa protokołu. Po porównaniu wszystkich bloków Alicja i Bob losowo permutują swoje klucze w ten sam sposób i zaczyna się kolejny etap poprawiania. Po odpowiednio dużej liczbie etapów Alicja i Bob mają z dowolnie dużą dokładnością identyczne klucze. Z drugiej strony, ogłaszając informacje o parzystości bloków, pozwalają Ewie uzyskać dodatkową informacje o kluczu[3].

Wzmocnienie prywatności

[edytuj | edytuj kod]

Wzmocnienie prywatności (ang. privacy amplification) jest metodą redukowania (efektywnie do zera) częściowej informacji o kluczu będącej w posiadaniu Ewy. Ewa mogła uzyskać informację zarówno podsłuchując kanał kwantowy (i w ten sposób wprowadzając do klucza wykrywalne błędy) lub wykorzystując dane udostępnione przy procedurze uzgadniania informacji (zakładając, że Ewa poznała wszystkie dane na temat parzystości bloków). Wzmocnienie prywatności prowadzi do powstania nowego, krótszego klucza, o którym Ewa ma zaniedbywalnie małą informację. Można to zrobić przy wykorzystaniu uniwersalnej funkcji mieszającej, wybranej losowo z publicznie znanego zestawu takich funkcji. Funkcje mieszające dostają na wejściu ciąg binarny o długości równej długości klucza i zwracają ciąg binarny o wybranej, krótszej długości. To, jak bardzo należy skrócić klucz, jest ustalane na podstawie tego, ile informacji o starym kluczu mogła podsłuchać Ewa (co można ustalić dzięki początkowo wykrytym błędom w kluczu i znajomości przebiegu procesu uzgadniania informacji), aby zminimalizować prawdopodobieństwo, że Ewa wie cokolwiek o nowym kluczu[3].

Przypisy

[edytuj | edytuj kod]
  1. C. E. Shannon, Bell Syst. Tech. J. 28, 656 (1949)
  2. H. Chau, Physical Review A 66, 60302 (2002) ([1])
  3. a b c C. H. Bennett, F. Bessette, G. Brassard, L. Salvail and J. Smolin "Experimental Quantum Cryptography" Journal of Cryptology vol.5, no.1, 1992, pp. 3-28.
  4. G. Brassard and L. Salvail "Secret key reconciliation by public discussion" Advances in Cryptology: Eurocrypt 93 Proc. pp 410-23 (1993) ([2])