Zaprezentowano wersję frameworka GNUnet 0.15, przeznaczoną do budowy bezpiecznych, zdecentralizowanych sieci P2P. Sieci tworzone za pomocą GNUnet nie mają pojedynczego punktu awarii i są w stanie zapewnić poufność danych użytkowników, w tym wykluczyć możliwe nadużycia ze strony służb specjalnych i administratorów mających dostęp do węzłów sieci.
GNUnet wspiera tworzenie sieci P2P na bazie TCP, UDP, HTTP/HTTPS, Bluetooth i WLAN, może działać w trybie F2F (Friend-to-friend). Obsługuje omijanie NAT, w tym za pomocą UPnP i ICMP. Do adresowania przechowywania danych można używać rozproszonej tabeli haszowej (DHT). Oferowane są narzędzia do wdrażania sieci mesh. W celu selektywnego udostępniania i cofania praw dostępu stosowany jest serwis zdecentralizowanej wymiany atrybutami tożsamości reclaimID, wykorzystujący GNS (GNU Name System) oraz szyfrowanie oparte na atrybutach (Attribute-Based Encryption).
System charakteryzuje się niskim zużyciem zasobów i wykorzystaniem architektury wieloprocesowej w celu zapewnienia izolacji pomiędzy komponentami. Oferowane są elastyczne narzędzia do prowadzenia logów i gromadzenia statystyk. Do rozwoju końcowych aplikacji GNUnet dostarcza API dla języka C oraz wiązania dla innych języków programowania. W celu uproszczenia procesu rozwoju zaleca się użycie pętli zdarzeń (event loop) i procesów zamiast wątków. W skład projektu wchodzi biblioteka testowa do automatycznego wdrażania eksperymentalnych sieci obejmujących dziesiątki tysięcy peerów.
Główne nowości GNUnet 0.15:
- W systemie zdecentralizowanym nazw domen GNS (GNU Name System) umożliwia rejestrację subdomen w domenie najwyższego poziomu „.pin”. Dodano wsparcie dla kluczy EDKEY.
- W gnunet-scalarproduct funkcje kryptograficzne zostały przeniesione na użycie biblioteki libsodium.
- W usłudze zdecentralizowanej wymiany atrybutów identyfikacji (RECLAIM) dodano wsparcie dla danych uwierzytelniających podpisanych przy użyciu schematu BBS+ (ślepy podpis, w którym podpisujący nie może uzyskać dostępu do treści).
- Zrealizowano protokół union, który jest używany do rozprzestrzeniania wiadomości o wycofaniu kluczy w GNS.
- Stabilizowana jest implementacja komunikatora, który teraz nie jest już eksperymentalny.
Źródło: opennet.ru
