Het Tor-project heeft een implementatie in Rust gepresenteerd, die in de toekomst de C-versie zal vervangen

De ontwikkelaars van het anonieme netwerk Tor hebben het Arti-project gepresenteerd, waarbij wordt gewerkt aan de creatie van een implementatie van het Tor-protocol in de programmeertaal Rust. In tegenstelling tot de implementatie in C, die oorspronkelijk als een SOCKS-proxy was ontworpen en later op andere behoeften is afgestemd, ontwikkelt Arti zich vanaf het begin als een modulaire inbouwbibliotheek die door verschillende applicaties kan worden gebruikt. Er wordt al meer dan een jaar aan gewerkt met financiering via het Zcash Open Major Grants (ZOMG) programma. De code wordt verspreid onder de Apache 2.0 en MIT licenties.

Als redenen voor het herschrijven van Tor in Rust wordt genoemd dat men streeft naar een hoger niveau van codebeveiliging door gebruik te maken van een taal die veilige geheugenbewerking garandeert. Volgens de schatting van de Tor-ontwikkelaars zal ten minste de helft van alle kwetsbaarheden die door het project worden gevolgd, worden uitgesloten in de implementatie in Rust, mits er geen 'unsafe'-blokken in de code worden gebruikt. Rust biedt ook de mogelijkheid om een hogere ontwikkelsnelheid te bereiken dan met C, dankzij de expressiviteit van de taal en de strikte garanties, waardoor er geen tijd hoeft te worden verspild aan dubbele controles en het schrijven van overbodige code. Daarnaast wordt bij de ontwikkeling van het nieuwe project rekening gehouden met alle eerdere ervaringen van Tor, wat zal helpen om bekende architecturale problemen te vermijden en het project modularer en efficiënter te maken.

In de huidige toestand kan Arti al verbinding maken met het Tor-netwerk, zorgen voor interactie met servers catalogi en anonieme verbindingen tot stand brengen via Tor met het bieden van een proxy op basis van het SOCKS-protocol. Het wordt nog niet aanbevolen om de ontwikkeling in productieomgevingen te gebruiken, omdat niet alle mogelijkheden voor het waarborgen van de privacy zijn gerealiseerd en er geen garanties zijn voor achterwaartse compatibiliteit op API-niveau. De eerste versie van de client, die voldoet aan de veiligheidscriteria, met ondersteuning voor wachtnodes en isolatie van stromen, staat gepland voor uitgave in oktober.

In maart 2022 wordt de eerste bètaversie verwacht met een experimentele implementatie van de ingebouwde bibliotheek en prestatie-optimisaties. De eerste stabiele release, met een stabiele API, CLI en configuratieformaat, evenals een audit, is gepland voor midden september 2022. Deze release zal geschikt zijn voor initiëel gebruik door gewone gebruikers. Eind oktober 2022 wordt een update 1.1 verwacht met ondersteuning voor aangesloten transport en bruggen om blokkades te omzeilen. Ondersteuning voor onion-diensten is gepland voor release 1.2, terwijl de gelijkstelling met de client in de programmeertaal C wordt verwacht in release 2.0, waarvoor de tijdlijnen nog niet zijn vastgesteld.

Daarna voorspellen de ontwikkelaars een geleidelijke afname van de activiteit met betrekking tot de ontwikkeling van de code in C, en een toename van de tijd die aan de bewerking in Rust wordt besteed. Wanneer de implementatie in Rust het niveau bereikt dat nodig is om de C-versie te vervangen, zullen de ontwikkelaars stoppen met het toevoegen van nieuwe functies aan de C-implementatie en na een tijdje volledig stoppen met de ondersteuning ervan. Maar dit zal niet snel gebeuren, en zolang de implementatie in Rust niet het niveau van een volwaardige vervanging heeft bereikt, zullen de ontwikkeling van de client en de Tor-relay in C worden voortgezet.

Bron: opennet.ru

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers 🔥 Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster