next up previous contents
Next: Onion Router Up: Istniejące rozwiązania Previous: Istniejące rozwiązania   Spis treści

Crowds

System został opracowany przez Reitera i Rubina i opisany w pracy [Reiter98]. Celem tego systemu jest zapewnienie użytkownikom usługi WWW o następujących własnościach:
  1. ukrycie klienta WWW przed serwerem, z którym się komunikuje;
  2. ukrycie odbiorcy komunikacji (serwera WWW) przed lokalnym obserwatorem;
  3. zabezpieczenie anonimowości klienta i serwera przed nieuczciwymi uczestnikami systemu.
W systemie Crowds uczestnicy (użytkownicy, klienci WWW) posiadają na swoich komputerach specjalne serwery pośredniczące nazywane przez autorów Jondo. Każde zapytanie HTTP w tym systemie jest przesyłane przez pewną liczbę serwerów pośredniczących. Ostatni z nich przesyła zapytanie do serwera HTTP. Odpowiedź wraca do klienta tą samą drogą. Treść żądania i odpowiedzi jest jawna dla wszystkich przekazujących je serwerów, kryptografia jest wykorzystywana jedynie do szyfrowania połączeń pomiędzy serwerami pośredniczącymi.

Ścieżka, którą wędrują żądania HTTP jest ustalana na początku komunikacji indywidualnie dla każdego klienta i pozostaje niezmienna dla wszystkich jego żądań. Długość ścieżki nie jest określona z góry. Zamiast tego serwer otrzymawszy żądanie ustalenia ścieżki wybiera rozszerzenie ścieżki o kolejny serwer (z ustalonym z góry prawdopodobieństwem $p_f$) lub zakończenie ścieżki na tym serwerze. Dzięki temu rozwiązaniu serwery Jondo poza ostatnim nie znają swojego położenia na ścieżce.

Wykorzystywanie wielokrotnie tej samej ścieżki ułatwia powiązanie klienta z serwerem przez globalnego obserwatora, ale, jak dowodzą autorzy, poprawia własność zabezpieczenia przed współpracującymi nieuczciwymi uczestnikami protokołu. Wynika to stąd, że zmiany ścieżki zwiększają prawdopodobieństwo użycia nieuczciwych serwerów.

System Crowds charakteryzuje się wysoką wydajnością ze względu na brak kosztownych operacji kryptograficznych. Jakkolwiek wykorzystanie jego potencjału może być utrudnione, ze względu na fakt użycia samych komputerów użytkowników WWW jako serwerów pośredniczących. Powoduje to problemy związane z przepustowością łącz klientów oraz zabezpieczeniami stosowanymi w sieciach prywatnych (stawianie tzw. ścian ogniowych ang. firewall). Jest to poważną wadą w powiązaniu z faktem braku kontroli nad długością i przebiegiem ścieżki przekazującej żądania.

Kolejną wadą tego systemu jest całkowity brak zabezpieczenia przed globalnym obserwatorem. Nawet statystyczna analiza ruchu pozwala na ustalenie związku pomiędzy klientem a serwerem WWW.

W części analitycznej pracy dotyczącej Crowds autorzy wprowadzają jakościowe podejście do anonimowości. Definiują ciągłą skalę anonimowości, której stopień zależy między innymi od prawdopodobieństwa $p$ z jakim dana osoba jest uczestnikiem komunikacji.

Brian N. Levine i Clay Shields opracowali modyfikację systemu Crowds nazwaną Hordes ([Shields00]). Celem modyfikacji było zmniejszenie opóźniania otrzymywanych odpowiedzi. W tym celu jedynie żądanie są przesyłane wzdłuż ścieżki, odpowiedzi wysyłane są przez rozsyłanie grupowe (ang. multicast) udostępniane przez protokół IP. Niestety rodzi to kolejny problem praktyczny. Komunikacja przez rozsyłanie grupowe nie jest wspierana lub jest jawnie blokowana przez niektóre rutery w Internecie.


next up previous contents
Next: Onion Router Up: Istniejące rozwiązania Previous: Istniejące rozwiązania   Spis treści
Michal Szafranski 2003-11-13