Nowa sieć obok eD2K
ed3k to własna sieć wymiany plików eMule Qt. Zachowuje to, co przez dwadzieścia lat sprawiało, że eD2K działało — pliki rozpoznawane po haszu, sieć Kademlia do ich wyszukiwania, opcjonalne serwery i kolejki wysyłania — a przebudowuje to, co się zestarzało: format komunikatów, transport i sposób, w jaki węzły potwierdzają swoją tożsamość.
eMule Qt obsługuje obie sieci jednocześnie. Okno Informacje o sieci oraz panel Moje informacje w oknie Serwery pokazują sekcję Sieć ed3k tuż pod sekcjami eD2K i Kad, dzięki czemu można je porównać wiersz po wierszu.

Te same idee, nowe nazwy
Większość wierszy w sekcji ed3k ma odpowiednik w eD2K. Najważniejszy: to, co eD2K nazywa High ID, a Kad Open, w ed3k jest routerem.
| eD2K / Kad | ed3k | Co to oznacza |
|---|---|---|
| High ID / Kad Open | Router: Tak | Inni mogą połączyć się z Tobą bezpośrednio. Router przechowuje rekordy Kad i pomaga węzłom za zaporą. |
| Low ID / Kad Firewalled | Router: Nie (liść) | Jesteś za NAT. Inne węzły nadal Cię osiągają — przez przekaźniki i przebijanie NAT (hole punching). |
| Status UDP w Kad | IPv4 / IPv6 | Testowane osobno dla każdej rodziny adresów: Open, Cone NAT lub Symmetric NAT. |
| Kad buddy | Przekaźniki | Routery, które przekazują do Ciebie żądania połączenia. Liść utrzymuje co najmniej dwa. |
| Obsługiwani buddies | Obsługiwani buddies | Liście, dla których Twój router działa jako przekaźnik. |
| Serwer eD2K | Węzeł indeksujący | Zwykły węzeł ed3k, który indeksuje wszystko. Bez osobnego oprogramowania serwera i osobnego protokołu. |
| Hasz użytkownika + ID Kad | ID węzła | Jeden identyfikator do wszystkiego — hasz własnego klucza podpisującego węzła. |
| ID klienta | — | Niepotrzebne. Inne węzły podają adres, pod którym Cię widzą. |
| Port TCP + port UDP | Port UDP | Jeden port do wszystkiego. Ten sam numer co Twój port TCP eD2K. |
| Obfuskacja (opcjonalna) | Połączenia: Obfuskowane | Zawsze włączona. Nie ma trybu jawnego. |
| Kad Indexed | Zindeksowane | Rekordy, które Twój węzeł przechowuje dla sieci, wraz z ich rozmiarem. |
Wiersz Status jest kolorowany jak w eD2K: na zielono, gdy jesteś połączony jako router, na pomarańczowo, gdy jako liść.
Najważniejsze usprawnienia względem eD2K
- Szyfrowanie od podstaw. Każdy pakiet jest przesyłany przez obfuskowany QUIC — zarówno ruch Kad, jak i transfery plików. Nic nie jest wysyłane jawnie, a ruch trudno rozpoznać.
- Low ID nie jest już obywatelem drugiej kategorii. Testy osiągalności, przekaźniki i przebijanie NAT przez UDP są częścią podstawowego protokołu, więc dwa węzły za zaporą zawsze mogą wymieniać pliki.
- IPv4 i IPv6 w jednej sieci. Oba traktowane są równorzędnie, a osiągalność sprawdzana jest dla każdego osobno.
- Jeden port. Jeden port UDP zamiast przekierowywania portu TCP i UDP.
- Prawdziwe tożsamości. Każdy węzeł ma klucz Ed25519, a jego ID to hasz tego klucza. Nikt nie może przejąć cudzego ID.
- Błędne dane wychwytywane od razu. Pliki są identyfikowane haszem BLAKE3 i weryfikowane w blokach po 256 KiB, więc uszkodzony blok wykrywany jest po otrzymaniu, a jego nadawca jest znany — zamiast późniejszego niepowodzenia całej części o rozmiarze 9,28 MB.
- Trudniejszy do zaatakowania. Pozycje w Kad są powiązane z adresem IP węzła, a liczba węzłów z jednego zakresu adresów jest ograniczona, co chroni przed zalewem fałszywych węzłów. Rekordy słów kluczowych są podpisywane przez wydawcę, co pozwala skutecznie filtrować spam.
- Każdy może uruchomić serwer. Węzeł indeksujący to po prostu węzeł z jedną dodatkową funkcją.
- Lżejsze komunikaty. Protocol Buffers z kompresją zstd zastępują ręcznie pakowane tagi eD2K.
- Miejsce na rozwój. Rozszerzenia dodają zestawy plików, torrenty, posty Usenet i linki hostingów plików jako źródła tego samego pliku, pokoje czatu i więcej — bez psucia działania starszych węzłów.
Współpracuje z eD2K, a nie przeciw niemu
Udostępniany plik ma też swój hasz eD2K, więc klienci eMule i węzły ed3k obsługują to samo pobieranie. eMule Qt używa numeru Twojego portu TCP eD2K dla ed3k i wyprowadza Twój hasz użytkownika eD2K z ID węzła ed3k, dlatego każdy rekord źródła eD2K — z serwerów, Kad czy wymiany źródeł — już informuje inne klienty eMule Qt, że obsługujesz ed3k i gdzie Cię znaleźć. Klasyczne klienty eMule niczego nie zauważą.