Wydanie Yggdrasil 0.4, implementacji prywatnej sieci działającej na powierzchni internetu

Opublikowano wydanie referencyjnej implementacji protokołu Yggdrasil 0.4, umożliwiającego uruchomienie oddzielnej, zdecentralizowanej, prywatnej sieci IPv6 na zwykłej globalnej sieci, z wykorzystaniem szyfrowania end-to-end dla ochrony prywatności. Do pracy w sieci Yggdrasil można wykorzystać dowolne istniejące aplikacje obsługujące IPv6. Implementacja została napisana w języku Go i jest rozpowszechniana na licencji LGPLv3. Obsługiwane są platformy Linux, Windows, macOS, FreeBSD, OpenBSD oraz Ubiquiti EdgeRouter.

Yggdrasil rozwija nową koncepcję routingu w celu utworzenia globalnej zdecentralizowanej sieci, w której węzły mogą łączyć się bezpośrednio ze sobą w trybie sieci mesh (na przykład za pośrednictwem Wi-Fi lub Bluetooth) oraz komunikować się nad istniejącymi sieciami IPv6 lub IPv4 (sieć na sieci). Cechą wyróżniającą Yggdrasil jest samoorganizacja działania, bez potrzeby jawnej konfiguracji routingu — informacje o trasach są obliczane na podstawie lokalizacji węzła w sieci względem innych węzłów. Urządzenia są adresowane za pomocą standardowego adresu IPv6, który nie zmienia się w przypadku przemieszczenia węzła (w Yggdrasil używany jest nieużywany zakres adresów 0200::/7).

Cała sieć Yggdrasil jest postrzegana nie jako zbiór rozproszonych podsieci, ale jako jednolita, zorganizowana struktura drzewa, posiadająca jeden "korzeń", a każdy węzeł ma jednego rodzica oraz jednego lub kilku potomków. Taka hierarchiczna struktura pozwala na zbudowanie trasy do węzła docelowego, względem węzła źródłowego, wykorzystując mechanizm "locator", który określa optymalną ścieżkę do węzła od korzenia.

Informacje o drzewie są rozdzielane między węzłami i nie są przechowywane w sposób scentralizowany. Do wymiany danych o routingu stosowana jest rozproszona tablica haszująca (DHT), dzięki której węzeł może uzyskać wszystkie informacje o trasie do innego węzła. Sama sieć zapewnia jedynie szyfrowanie end-to-end (węzły tranzytowe nie mogą określić zawartości), ale nie anonimowość (przy połączeniu przez Internet, węzły peer-to-peer, z którymi odbywa się bezpośrednia interakcja, mogą określić rzeczywisty adres IP, dlatego dla anonimowości sugeruje się łączenie węzłów przez Tor lub I2P).

Zauważono, że mimo że projekt znajduje się w fazie alfa, jest już wystarczająco stabilny do codziennego użytku, ale nie gwarantuje zgodności wstecznej między wydaniami. Społeczność wspiera zestaw usług dla Yggdrasil 0.4, w tym platformę do hostowania kontenerów Linux dla hostingu swoich stron, wyszukiwarkę YaCy, system komunikacyjny serwer Matrix, serwer IRC, DNS, system VoIP, tracker BitTorrent, mapa punktów dostępu, bramę do IPFS oraz proxy do łączenia się z sieciami Tor, I2P i clearnet.

W nowej wersji:

  • Wprowadzono nowy schemat routingu, który nie jest zgodny z poprzednimi wydaniami Yggdrasil.
  • Podczas nawiązywania połączeń TLS z węzłami stosowane jest przypinanie kluczy publicznych (key pinning). Jeśli podczas połączenia nie było przypinania, otrzymany klucz zostanie przypisany do połączenia. Jeśli przypinanie było ustanowione, ale klucz nie odpowiada, połączenie zostanie odrzucone. TLS z przypinaniem kluczy określono jako zalecaną metodę łączenia się z piramidą.
  • Cały kod odpowiedzialny za routing i zarządzanie sesjami został całkowicie przeprojektowany i przepisany, co zwiększyło przepustowość i niezawodność działania, zwłaszcza dla węzłów często zmieniających piry. W kryptograficznych sesjach wprowadzono okresową rotację kluczy. Dodano obsługę routingu źródłowego (Source routing), która może być używana do przekierowywania ruchu IPv6 użytkowników. Przeprojektowano architekturę rozproszonej tablicy haszującej (DHT) i dodano wsparcie dla routingu opartego na DHT. Implementacja algorytmów routingu została wyodrębniona do osobnej biblioteki.
  • adresy IP IPv6 są teraz formowane z otwartych kluczy ed25519, a nie ich skrótu X25519, co spowoduje zmianę wszystkich wewnętrznych adresów IP po przejściu na wydanie Yggdrasil 0.4.
  • Dostarczono dodatkowe ustawienia dla wyszukiwania Multicast-peerów.

Źródło: opennet.ru

Kup niezawodny hosting stron z ochroną DDoS, serwery VPS VDS 🔥 Kup niezawodny hosting stron z ochroną DDoS, serwery VPS VDS - ProHoster