De ontwikkelaars van het anonieme netwerk Tor hebben de release van het project Arti 1.1.0 gepubliceerd, dat de Tor-client ontwikkelt, geschreven in de programmeertaal Rust. Tak 1.x is gemarkeerd als geschikt voor gebruik door gewone gebruikers en biedt hetzelfde niveau van privacy, bruikbaarheid en stabiliteit als de belangrijkste implementatie in de programmeertaal C.
In tegenstelling tot de implementatie in C, die oorspronkelijk was ontworpen als SOCKS-proxy en later was aangepast aan andere behoeften, wordt Arti aanvankelijk ontwikkeld als een modulaire inbeddingsbibliotheek die door verschillende applicaties kan worden gebruikt. Bovendien wordt bij de ontwikkeling van het nieuwe project alle eerdere ervaring met de ontwikkeling van Tor in aanmerking genomen, wat helpt bekende architecturale problemen te vermijden en het project modulairder en efficiƫnter te maken.
De reden voor het herschrijven van Tor in Rust is het verlangen om een hoger niveau van codebeveiliging te bereiken door gebruik te maken van een taal die veilige geheugenverwerking biedt. Volgens de schatting van de Tor-ontwikkelaars zal minimaal de helft van alle via het project geregistreerde kwetsbaarheden worden uitgesloten in de implementatie in Rust, mits er geen 'unsafe' blokken in de code worden gebruikt. Rust zal ook een snellere ontwikkeling mogelijk maken dan bij het gebruik van C, dankzij de expressiviteit van de taal en strikte garanties die het mogelijk maken om geen tijd te verspillen aan dubbele controles en het schrijven van overtollige code.
In versie 1.1 is ondersteuning voor bruggen geĆÆmplementeerd om blokkades te omzeilen en voor plug-in transport. Van de getest transportmogelijkheden met Arti, zijn obfs4proxy en snowflake opgemerkt als methoden voor het verbergen van verkeer en het bestrijden van blokkades. De vereisten voor de bouwomgeving zijn verhoogd ā voor de bouw van Arti is nu ten minste tak Rust 1.60 nodig.
In de volgende versie (1.2) wordt ondersteuning voor onion-diensten en bijbehorende mogelijkheden, zoals het protocol voor congestiecontrole (RTT Congestion Control) en maatregelen ter bescherming tegen DDoS-aanvallen, verwacht. Het bereiken van pariteit met de client in de programmeertaal C is gepland in tak 2.0, waarin ook bindings voor het gebruik van Arti in code in verschillende programmeertalen zullen worden aangeboden. In de komende jaren zal het werk gericht zijn op de implementatie van functionaliteit die nodig is voor het functioneren van relais en servers directory's. Wanneer de code in Rust het niveau bereikt dat in staat is om de versie in C volledig te vervangen, zijn de ontwikkelaars van plan om Arti de status van de hoofdimplementatie van Tor te geven en het onderhoud van de implementatie in C te stoppen. De ondersteuning voor de versie in de programmeertaal C zal geleidelijk worden stopgezet met de mogelijkheid voor een soepele migratie.
Bron: opennet.ru
