Co WZGARDEMPRZYNIMANIE WYJASNIWA
Na podstawie swojej natury, bezpieczne wielostronne obliczanie pozwala grupie uczestników, każdy z których ma prywatny wejście, wspólnie obliczyć funkcję zgody na te wejścia, taką jak suma, średnia, porównanie lub coś znacznie bardziej skomplikowanego, bez tego, aby żaden uczestnik dowiedział się czegokolwiek o innych uczestnikach poza tym, co wynik sam wskazuje. Gwarancja jest precyzyjna i często formalizowana matematycznie: po zakończeniu protokołu, każda strona dowiaduje się tylko końcowego wyniku, na przykład „Jesteś bogatszy” lub „średnia pensja wynosi 74 000”, a nic więcej. Jeśli sam wynik pozwala komuś dostrzec konkretną informację o wejściu innej strony, to jest uznawane za akceptowalne, ponieważ ta sama dedukcja byłaby możliwa z wyniku niezależnie od tego, jak został on obliczony. To, co WZGARDEMPRZYNIMANIE zapewnia, to brak dodatkowego odsłania się podczas samego procesu obliczeń, co oznacza, że żadna strona nie może spojrzeć na wartości intermedialne, ruchy sieciowe ani oryginalne liczby innej strony. To jest fundamentalnie różne od zwykłego obliczania, w którym kogokolwiek uruchamiający obliczenie zawsze widzi wszystkie wejścia. Protokoły WZGARDEMPRZYNIMANIE osiągają to używając narzędzi takich jak dzielenie tajemnic, nieświadomą transmisję i szyfrowanie homomorficzne, często połączone z dowodami kryptograficznymi, że uczestnicy szczerze przestrzegli protokołu, co zapewnia gwarancję prywatności nawet wobec podejrzliwych lub częściowo nieprawidłowych uczestników.
Problem milionerów Yaya
Kanoniczny przykład motywacyjny dla komputacji wielu stron (MPC) pochodzi od naukowca informatycznego Andrewa Yaya, który w 1982 roku postawił deceptywnie proste zadanie: dwa milionerzy spotykają się na ulicy i chcą wiedzieć, kto jest bogatszy, ale nie chcą odkrywać swojej rzeczywistej wartości mającą (net worth), a jeszcze mniej odkrywać ją obserwatorom zewnętrznej. Na pierwszy rzut oka to wydaje się paradoksalne. Jak można porównywać dwie liczby bez tego, aby co najmniej jedna strona dowiedziała się czegoś na temat wartości drugiej? Yaya pokazał, że jest możliwe za pomocą protokołów kryptograficznych, a problem milionerów stało się zaszczytnym przykładem początkującym dla całości dziedziny komputacji bezpiecznej wielu stron. Elegancja tego przykładu polega na tym, że pokrywa on jądro wyzwania w najprostszym możliwym ujęciu: pojedyncze porównanie dwóch prywatnych liczb, z jedynie jednym bitem wyniku, kto jest większy. Protokoły współczesnej komputacji wielu stron generalizują tę samą ideę dalej niż dwie strony i proste porównania, umożliwiając wspólną obliczanie sum, średnich, modeli statystycznych, wyników aukcji, nawet złożonych zadań uczenia maszynowego między wieloma wzajemnie nieufnymi uczestnikami, zachowując jednocześnie podstawową właściwość prywatności, która umożliwiła porównanie milionerów w pierwszej kolejności.
Elementowy blok konstrukcyjny: dzielenie tajemnic aditacyjne
Jednym z najprostszych i najczęściej używanych narzędzi w protokołach komputacji wielu stron (MPC) jest dzielenie tajemnic aditacyjne. Supponujmy, że uczestnik ma prywatną liczbę i chce ją przyczynić się do wspólnego obliczenia bez nigdy jej odsyłania. Zamiast wysyłać liczbę bezpośrednio, dzieli ją na kilka wyglądających na losowe części, nazywanych udziałami, które dodatkowo dają oryginalną wartość. Na przykład tajemna liczba może zostać podzielona na trzy udziały wybierając dwie losowe liczby i ustawiając trzeci udział tak, aby wszystkie trzy sumowały się do oryginalnej tajemnicy. Każdy samotny udział wygląda jak bezsensowne losowe szumy i nie odsłania niczego na temat oryginalnej liczby, nawet dla osobom, które widzą tylko jedno lub dwa udziały poniżej wymaganej prógowej wartości. Te udziały są następnie rozdawane między uczestnikami wykonywającymi obliczenia. Cudowne jest to, że zwykłe arytmetyka, takie jak dodawanie, może być wykonana bezpośrednio na samych udziałach: jeśli każdy dodaje swoje otrzymane udziały, suma tych częściowych wyników równa się sumie oryginalnych liczb tajemnic, razem z połączeniem wszystkich udziałów wynikowych na końcu. Mnożenie wymaga bardziej skomplikowanych technik, ale ta sama podstawowa zasada zachodzi: obliczenia prowadzą się na zamieszczonych fragmentach całościowo, a tylko końcowy krok połączenia odtwarza sensowne rozwiązanie, nigdy nie tajne wsteczne wpisy intermedialne.
Dlaczego nie użyć zaufanego trzeciego strony?
Naturalna odpowiedź brzmi, dlaczego skomplikować się tym kryptograficznym złożonością, gdy można prosto wynająć zaufaną trzecią stronę, podać jej wszystkie oryginalne dane i pozwolić jej obliczyć wynik, a następnie otrzymać tylko wynik? W praktyce, ta metoda jest niewytrzymywana i często prawno lub praktycznie niemożliwa. Wymaga to, aby każda strona zaufała jednemu entytyjnie całkowicie, a ten entitet staje się ogromnym celem dla hackerów, zagrożeń zewnątrzgrupowych, podsumowania lub prośb o dokumentację, a w wielu rzeczywistych sytuacjach, takich jak banki czy szpitale, przekazanie oryginalnych danych klientów lub pacjentów do trzeciej strony zewnętrznej może naruszać całe regulacje, niezależnie od tego, jak zaufana ta strona sama twierdzi. MPC eliminuje ten punkt jednego słabości i jednego punktu zaufania. Z odpowiednio zaprojektowanym protokołem, żadna pojedyncza strona, a szczególnie żaden zgrupowany podział strony poniżej określonego poziomu bezpieczeństwa, nigdy nie może odtworzyć oryginalnej tajemniczej wiadomości innej strony, nawet jeśli spakują wszystko, co obserwowały indywidualnie podczas protokołu. Nie ma centralnego serwera przechowującego oryginalne dane w żadnym momencie czasu, więc nie ma niczego do zbreścenia, podsumowania lub nieprzepisowego użycia. Zaufanie przesuwa się od zaufania konkretnemu organizmowi do zaufania matematyce i szanującym większość uczestników, co jest fundamentowo silniejsze i bardziej audytowalne gwarancją.
Zastosowania w praktyce
MPC przekroczył granice akademickiego zainteresowania i dotarł do rzeczywistego zastosowania. Jeden z wyraźnych przykładów to prywatne porównywanie wynagrodzeń i szerokości płac, gdzie firmy w danej branży chcą porównywać wynagrodzenia, takie jak obliczanie średnich lub medianowych wynagrodzeń według roli i płeć, bez tego, aby żadna firma odsłaniała osobiste informacje o swoich pracownikach konkurencji ani nawet organizatorowi badania. Znacznie znane jest wykorzystanie MPC przez Komisję Pracy Kobiet w Bostonie dla exact tego celu. W badaniach naukowych, MPC pozwala na prywatne obliczanie statystyk między instytucjami, umożliwiając szpitalom lub laboratoriom badawczym wspólną obliczanie agregatowych statystyk zdrowotnych czy genetycznych bez spłaszczenia wrażliwych danych pacjentów do jednego wyeksponowanego systemu. Inne silne zastosowania to bezpieczne aukcje: oferenci przesyłają szyfrowane lub współdzielone oferty, a protokół determinuje zwycięzcę i cenę czystą bez odsłaniania ofert przegranych nikomu, w tym organizatorowi aukcji. Najbardziej zaskakującym jest to, że instytucje finansowe rozpoczęły wykorzystanie MPC do wspólnej detekcji fałszywych operacji, umożliwiając bankom, które są prawowo zakazane od udzielania raw danych transakcyjnych klientów, wspólną identyfikację podejrzanych wzorców, takich jak konta połączone w sieciach fałszywych, obliczając tylko na reprezentacjach szyfrowanych lub szyfrowanych danych, jednocześnie spełniając potrzeby bezpieczeństwa i ścisłe regulacje ochrony danych.
Często zadawane pytania
Czy bezpieczne obliczanie wielu stron jest takie samo co szyfrowanie?
Nie dokładnie. Traditional encryption chroni dane podczas przechowywania lub przesyłania, ale muszą one zwykle zostać odszyfrowane przed tym, jak można na nich wykonywać obliczenia. MPC pozwala na wykonywanie obliczeń bezpośrednio na chronionych danych, czy sekretnie podzielonych lub zaszyfrowanych, tak że podstawowe wartości nigdy nie są całkowicie odtworzone podczas obliczeń, tylko końcowy zgadzający się wynik jest odkryty.
Ile stron może uczestniczyć w protokole MPC?
Protokoły MPC mogą obejmować dwa strony, jak to było w oryginalnym problemie milionarzy Yao, lub wiele stron, często dziesiątki lub więcej. Protokoły są zwykle zaprojektowane z określonym prógem bezpieczeństwa, co oznacza, że pozostają one bezpieczne tak długo, jak tylko nie więcej niż określona liczba lub ułamek uczestników koordynuje się lub zachowuje się niewłaściwie.
Czy MPC chroni przed niehonorowanymi uczestnikami, którzy kłamią o swoim wejściu?
MPC gwarantuje, że wejścia pozostają prywatne podczas obliczeń, ale nie automatycznie gwarantuje, że wejście zasugerowane przez uczestnika jest prawdziwe, na przykład oferent kłama o swoją rzeczywistą budżet. Niektóre protokoły MPC dodają dodatkowe mechanizmy, takie jak dowody bezpieczne wiedzy (zero-knowledge proofs), aby również zweryfikować, że wejścia spełniają pewne zasady bez odszyfrowywania ich.
Czy MPC jest wolniejsze niż proste obliczanie na zaufanym serwerze?
Zazwyczaj tak. Protokoły MPC obejmują dodatkowe rundy komunikacji i operacje kryptograficzne w porównaniu z prostym wysyłaniem danych do zaufanego serwera, więc istnieje rzeczywisty koszt wydajnościowy. Modernizowane ramki MPC znacznie zmniejszyły ten rozdźwięk, czyniąc wiele praktycznych aplikacji, takie jak ocena wynagrodzeń lub wykrywanie fałszerstw, wystarczająco szybkimi do rzeczywistego zastosowania.
Czy można kombinować MPC z innymi technologiami prywatności, takimi jak różowa dyscyplina?
Tak, i to coraz częściej. MPC chroni sposób, w jaki są wykonywane obliczenia, zapewniając, że wejścia pozostają ukryte podczas procesu, a różowa dyscyplina może być dodana na górę, aby również ograniczać to, co końcowy wynik samego odrzuca o dane pojedynczego osoby, dając silniejsze gwarancje prywatności od początku do końca.
Wypróbuj na żywo
Wszystko powyżej działa bezpośrednio w Twojej przeglądarce — otwórz Secure Multiparty Computation: Computing a Shared Answer Without Sharing Your Secrets i zmieniaj parametry podczas działania. Nic nie jest instalowane ani przesyłane na serwer, cały model działa w jednej karcie.
▶ Otwórz symulację Secure Multiparty Computation: Computing a Shared Answer Without Sharing Your Secrets