Tor-projektet præsenterede en implementering i Rust-sproget, som i fremtiden vil erstatte C-versionen

Udviklerne af det anonyme Tor-netværk præsenterede Arti-projektet, inden for hvilket der arbejdes på at skabe en implementering af Tor-protokollen på Rust-sproget. I modsætning til C-implementeringen, der først blev designet som en SOCKS-proxy og derefter skræddersyet til andre behov, er Arti oprindeligt udviklet i form af et modulært indlejrbart bibliotek, der kan bruges af forskellige applikationer. Arbejdet har været i gang i over et år med finansiering fra Zcash Open Major Grants (ZOMG) tilskudsprogram. Koden distribueres under Apache 2.0- og MIT-licenserne.

Årsagerne til at omskrive Tor i Rust er ønsket om at opnå et højere niveau af kodesikkerhed ved at bruge et sprog, der sikrer sikker drift med hukommelse. Ifølge Tor-udviklere vil mindst halvdelen af ​​alle sårbarheder, der overvåges af projektet, blive elimineret i en Rust-implementering, hvis koden ikke bruger "usikre" blokke. Rust vil også gøre det muligt at opnå hurtigere udviklingshastigheder end at bruge C, grundet sprogets udtryksevne og strenge garantier, der gør, at du undgår at spilde tid på at dobbelttjekke og skrive unødvendig kode. Derudover tages der ved udvikling af et nyt projekt hensyn til al tidligere Tor-udviklingserfaring, hvilket vil undgå kendte arkitektoniske problemer og gøre projektet mere modulært og effektivt.

I sin nuværende tilstand kan Arti allerede oprette forbindelse til Tor-netværket, kommunikere med biblioteksservere og oprette anonymiserede forbindelser oven på Tor med en SOCKS-baseret proxy. Udviklingen anbefales endnu ikke til brug i produktionssystemer, da ikke alle privatlivsfunktioner er implementeret, og bagudkompatibilitet på API-niveau er ikke garanteret. Den første sikkerhedskompatible version af klienten, der understøtter guard noder og trådisolering, er planlagt til at blive frigivet i oktober.

Den første beta-udgivelse forventes i marts 2022 med en eksperimentel implementering af det indlejrede bibliotek og ydeevneoptimeringer. Den første stabile udgivelse med et stabilt API, CLI og konfigurationsformat samt revision er planlagt til midten af ​​september 2022. Denne udgivelse vil være egnet til indledende brug af almindelige brugere. Opdatering 2022 forventes i slutningen af ​​oktober 1.1 med understøttelse af plug-in-transport og broer til at omgå blokering. Support til onion-tjenester er planlagt til udgivelse 1.2, og opnåelse af paritet med C-klienten forventes i udgivelse 2.0, hvor timingen endnu ikke er fastlagt.

I fremtiden forudser udviklerne et gradvist fald i aktivitet relateret til udviklingen af ​​C-kode og en stigning i den tid, der er afsat til redigering i Rust. Når Rust-implementeringen når et niveau, der kan erstatte C-versionen, vil udviklerne holde op med at tilføje nye funktioner til C-implementeringen og efter nogen tid stoppe helt med at understøtte den. Men det sker ikke snart, og indtil implementeringen i Rust når niveauet for en fuld erstatning, vil udviklingen af ​​Tor-klienten og relæet i C fortsætte.

Kilde: opennet.ru

Tilføj en kommentar