Utvecklarna av det anonyma nÀtverket Tor har publicerat en ny version av projektet Arti 1.1.0, som utvecklar en Tor-klient skriven i Rust. Version 1.x Àr mÀrkt som lÀmplig för vanliga anvÀndare och erbjuder samma nivÄ av sekretess, anvÀndarvÀnlighet och stabilitet som den primÀra implementeringen skriven i C. Koden distribueras under licenserna Apache 2.0 och MIT.
Till skillnad frÄn implementationen pÄ C, som frÄn början designades som en SOCKS-proxy och sedan anpassades för andra behov, utvecklas Arti frÄn grunden som ett modulÀrt inbÀddat bibliotek som olika applikationer kan anvÀnda. Dessutom beaktas all tidigare erfarenhet frÄn Tor-utvecklingen nÀr det nya projektet utvecklas, vilket gör det möjligt att undvika kÀnda arkitekturproblem och göra projektet mer modulÀrt och effektivt.
Som skÀl för att skriva om Tor i Rust nÀmns en önskan att uppnÄ en högre sÀkerhetsnivÄ i koden genom att anvÀnda ett sprÄk som sÀkerstÀller sÀker hantering av minnet. Enligt Tor-utvecklarna kommer minst hÀlften av alla sÄrbarheter som projektet spÄrar att elimineras i implementationen i Rust, om inte "unsafe"-block anvÀnds i koden. Rust kommer ocksÄ att möjliggöra en högre utvecklingshastighet Àn anvÀndning av C, tack vare sprÄkets expressivitet och strikta garantier som gör det möjligt att spara tid pÄ dubbla kontroller och skrivande av överflödig kod.
I version 1.1 har stöd för broar för att kringgÄ blockeringar och anslutna transportsystem implementerats. Bland de testade transporterna för Arti för att dölja trafik och motverka blockeringar mÀrks obfs4proxy och snowflake. Kraven pÄ byggmiljö har höjts - för att bygga Arti krÀvs nu minst Rust version 1.60.
I nÀsta version (1.2) förvÀntas stöd för onion-tjÀnster och relaterade funktioner, sÄsom regleringsprotokoll (RTT Congestion Control) och skydd mot DDoS-attacker. Att uppnÄ paritet med klienten skriven i C planeras i version 2.0, dÀr ocksÄ bindningar för anvÀndning av Arti i kod pÄ olika programmeringssprÄk kommer att erbjudas. Under de kommande Ären kommer arbetet att fokusera pÄ att implementera funktionalitet som behövs för att stödja relÀer och servrar kataloger. NÀr koden i Rust nÄr en nivÄ dÀr den fullt ut kan ersÀtta C-versionen, avser utvecklarna att ge Arti status som den primÀra implementationen av Tor och avsluta stöd för C-implementationen. Stödet för C-versionen kommer gradvis att upphöra med möjligheten för smidig migrering.
KĂ€lla: opennet.ru
