reklama

Facebook udostępnia sposób na czaty grupowe równie tajne co czaty we dwoje

Strona główna Aktualności

O autorze

Hodowca maszyn wirtualnych i psów, poza tym stary linuksiarz, bonvivant i śmieszek. W 2012 roku napisał na DP o algorytmie haszowania Keccak i wciąż pamięta, jak on działa.

Coraz głośniej organy ścigania zachodnich państw domagają się wbudowania w urządzenia mobilne i oprogramowanie komunikacyjne furtek, przez które można by było uzyskać dostęp do danych ich użytkowników. Dopiero co dyrektor FBI Christopher Wray poskarżył się, że amerykańska policja federalna przechowuje 8 tysięcy smartfonów, do których nie może uzyskać dostępu mimo uzyskania sądowego nakazu. Skargi i żale chyba jednak nic nie dadzą. Kryptografia staje się coraz powszechniejsza i jest w stanie zabezpieczyć przed wścibskimi coraz więcej – teraz już nawet grupowe czaty.

Do tej pory komunikacji grupowej po prostu nie dało się uznać za bezpieczną. Popularne komunikatory stosowały oczywiście mechanizmy wymiany kluczy, ale napastnikowi wystarczyło skutecznie zaatakować jednego z członków grupy, by później móc już bez ograniczeń podsłuchiwać rozmowy całej grupy. Nawet jeśli jeden z członków grupy dowiedziałby się, że rozmowa jest podsłuchiwana, nie ma żadnego sposobu na przywrócenie bezpiecznej komunikacji. Wszystkie dotychczasowe protokoły wymiany kluczy są synchroniczne, wymagają jednoczesnej ich wymiany między wszystkimi członkami grupy, co w praktyce jest niemożliwe.

Grupa informatyków z Oxfordu, wraz z inżynierem z Facebooka, opublikowała w grudniu zeszłego roku artykuł pt. On Ends-to-Ends Encryption: Asynchronous Group Messaging with Strong Security Guarantees. Przedstawia on zupełnie nowy protokół wymiany kluczy w grupie, w której żadna ze stron nie musi być w tym samym czasie online. Nosi on nazwę Asynchronous Ratcheting Tree (asynchroniczne grzechoczące drzewo) – ART. Praca zawiera też formalny dowód bezpieczeństwa, dowodzący, że ART może działać nawet w bardzo dużych grupach.

Kryptosystem nie jest prosty i nie udajemy, że po pobieżnej lekturze zrozumieliśmy jak działa. Najwyraźniej wykorzystywane są w nim asymetryczne preklucze, znane z aplikacji TextSecure Moxiego Marlinspike’a. Są to krótkotrwałe klucze publiczne protokołu wymiany kluczy Diffie-Hellmana, przechowywane w buforze niezaufanego pośredniczącego serwera i pobierane przez klienty jednocześnie z długotrwałymi kluczami ich tożsamości. Działają mają jako początkowe wiadomości w protokole wymiany kluczy i umożliwiają handshake z innymi użytkownikami offline.

Dodatkowo w tym systemie jest jeszcze jednorazowy klucz konfiguracyjny DH, wygenerowany przez założyciela grupy, wykorzystywany do wstępnej wymiany kluczy z użyciem prekluczy. Służy on też do wygenerowania tajnych „listków” (ang. leaf keys) dla członków grupy będących offline.

Przywrócenie bezpieczeństwa po włamaniu (post-compromise security, PCS) wymaga od ofiary zastąpienia takiego tajnego listka, a następnie rozesłania go do wszystkich członków grupy, także tych, którzy pozostają offline. Protokół ART robi to poprzez wyliczenie nowych publicznych kluczy na wszystkich węzłach od listka ofiary do korzenia, a następnie rozgłasza grupie publiczny listek wraz z tymi wyliczonymi publicznymi kluczami. Mając te dane, wszyscy inni członkowie grupy mogą wyliczyć zaktualizowany klucz grupowy, nawet jeśli żaden z nich nie będzie w tym samym czasie online co drugi.

Dwa dni temu na GitHubie opublikowana została na koncie Facebook Research oficjalna implementacja protokołu ART w Javie – co najważniejsze, na wolnej licencji Creative Commons (CC-BY-NC). Według autorów protokołu, implementacja ta dowodzi ona praktyczności rozwiązania. Ustawienie drzewa kluczy i rozesłanie wiadomości zajmuje raptem kilka milisekund w grupach mających 10 użytkowników, czas ten wzrasta do sekundy w grupach mających około 1000 użytkowników.

Otwiera to więc drogę do budowy komunikatorów z szyfrowaniem end-to-end, które w grupowych rozmowach będą równie bezpieczne co rozmowy jeden na jednego. Czy i kiedy zostanie to wykorzystane w Facebook Messengerze nie wiemy, nie jest to komunikator szczególnie skupiony na bezpieczeństwie. Tkwiące w ART możliwości jego modyfikowania i rozszerzania sprawiają jednak, że może zostać wykorzystany w innych komunikatorach, by jeszcze bardziej irytować polityków, wzywających do ułatwienia służbom inwigilacji obywateli.

© dobreprogramy

Komentarze

reklama