r   e   k   l   a   m   a
r   e   k   l   a   m   a

Protokół kryptograficzny utrzymuje dane w tajemnicy nawet przed korzystającymi z nich aplikacjami

Strona główna AktualnościOPROGRAMOWANIE

Zazwyczaj, aby aplikacja mogła przetwarzać zaszyfrowane dane, muszą one wcześniej zostać odszyfrowane. To też oznacza, że każdy, kto kontroluje pracę takiej aplikacji, uzyskuje dostęp do przetwarzanych przez nią danych, jakie by one nie były. Już jednak w 1982 roku wymyślono teoretyczny model, w ramach którego możliwe było wspólne przetwarzanie informacji w taki sposób, że żaden z uczestników nie musiał zdradzać innym swoich tajemnic. Pomysł, znany pod nazwą Multi-Party Computation (MPC), długo pozostawał zabawką dla matematyków, ale wygląda na to, że badacze z Danii i Wielkiej Brytanii znaleźli sposób na jego praktyczną realizację. Przedstawią go w trakcie odbywającego się właśnie sympozjum ESORICS 2013 w Londynie, poświęconemu ochronie informacji w środowiskach narażonych na podsłuch.

Jednym z przykładowych zastosowań MPC są elektroniczne wybory: głosujący chcą, by ich głosy zostały policzone, ale jednocześnie nie chcą, by ktokolwiek wiedział, jak oni głosowali. Konieczne jest więc wspólne policzenie przez wszystkich uczestników głosowania pewnej wybranej przez nich funkcji, bez ujawniania nikomu niczego, co wprowadzili na wejściu. Jak to jednak zrobić? W swojej pracy brytyjsko-duński zespół zajął się protokołem SPDZ, będącym do niedawna jedną z takich nie do końca praktycznych implementacji MPC.

Jak wyjaśniają badacze w swoim artykule pt. Practical Covertly Secure MPC for Dishonest Majority – or: Breaking the SPDZ Limits, SPDZ działa w dwóch fazach, offline i online. W pierwszej z nich generowana jest pewna współdzielona losowość, ale nie trzeba tu znać ani funkcji do obliczenia, ani wartości na wejściu. W drugiej przeprowadzane są obliczenia przy współudziale stron. Wiadomości wymieniane pomiędzy stronami polegają na kodzie uwierzytelniającym, częściowo między nimi dzielonym. Aby uczestniczyć w komunikacji, strony muszą ujawnić swój udział w kodzie. Przypomina to dowody z wiedzą zerową, czyli procedury, poprzez których udowadnia się fakt posiadania pewnej informacji bez jej ujawniania – np. bezpiecznego logowania do systemu z hasłem, bez konieczności przesyłania go przez Internet.

W oryginalnej wersji SPDZ przetworzone dane mogły być wykorzystane tylko do jednego wyliczenia funkcji, a do każdego następnego wyliczenia wszystkie operacje, włącznie z wygenerowaniem kluczy, musiały być prowadzone od początku. Osiągnięciem autorów jest radykalne uproszczenie i zoptymalizowanie protokołu: piszą, że znacząco zmniejszyli liczbę wyliczanych globalnych kluczy, niezbędnych do generowania par kluczy publicznych-prywatnych do innych zastosowań, jak również znaleźli sposób na utajnienie tych globalnych kluczy. W efekcie faza online zachodzi znacznie szybciej i jest bezpieczniejsza – twoje dane pozostają bezpieczne, nawet jeśli wszyscy inni zostali przejęci przez napastnika. Nigel Smart, kryptolog z University of Bristol, stwierdził: przedstawiliśmy nasz protokół różnym grupom i organizacjom na świecie i wszyscy byli pod wrażeniem, jak szybko możemy wykonywać dzięki niemu bezpieczne obliczenia.

Pomysł ma zostać skomercjalizowany dzięki staraniom firmy Dyadic Security Limited, której założycielami są wspomniany prof. Smart, oraz izraelski matematyk Yehuda Lindell z Bar-Ilan University. Głównymi obszarami zastosowań mają być branża finansowa, farmaceutyczna i chemiczna, gdzie bardzo często obliczenia przeprowadzane muszą być na danych, które nie są dostępne w postaci jawnej.

r   e   k   l   a   m   a
© dobreprogramy

Komentarze

r   e   k   l   a   m   a
r   e   k   l   a   m   a
Czy wiesz, że używamy cookies (ciasteczek)? Dowiedz się więcej o celu ich używania i zmianach ustawień.
Korzystając ze strony i asystenta pobierania wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.