Izdaja Arti 1.1, uradne implementacije Tor v Rust

Razvijalci anonimnega omrežja Tor so objavili izdajo projekta Arti 1.1.0, ki razvija odjemalca Tor, napisanega v jeziku Rust. Veja 1.x je označena kot primerna za uporabo splošnih uporabnikov in zagotavlja enako raven zasebnosti, uporabnosti in stabilnosti kot glavna izvedba C. Koda se distribuira pod licencama Apache 2.0 in MIT.

Za razliko od implementacije C, ki je bila najprej zasnovana kot SOCKS proxy in nato prilagojena drugim potrebam, je Arti prvotno razvit v obliki modularne vdelane knjižnice, ki jo lahko uporabljajo različne aplikacije. Poleg tega se pri razvoju novega projekta upoštevajo vse pretekle izkušnje pri razvoju Tor, s čimer se izognemo znanim arhitekturnim težavam in naredimo projekt bolj modularen in učinkovit.

Naveden razlog za prepis Tora v Rust je želja po doseganju višje stopnje varnosti kode z uporabo jezika, varnega za pomnilnik. Po mnenju razvijalcev Tor bo vsaj polovica vseh ranljivosti, ki jih spremlja projekt, odpravljena v implementaciji Rust, če koda ne uporablja "nevarnih" blokov. Rust bo prav tako omogočil doseganje hitrejših razvojnih hitrosti kot uporaba C, zaradi izraznosti jezika in strogih garancij, ki vam omogočajo, da se izognete izgubljanju časa z dvojnim preverjanjem in pisanjem nepotrebne kode.

Različica 1.1 uvaja podporo za mostove za obhod blokiranja in prenosa vtičnikov. Med prevozi, preizkušenimi z Artijem za skrivanje prometa in boj proti blokiranju, sta bila opažena obfs4proxy in snežinka. Zahteve za gradbeno okolje so bile povečane - za gradnjo Artija je zdaj potrebna vsaj veja Rust 1.60.

Pričakuje se, da bo naslednja različica (1.2) podpirala čebulne storitve in povezane funkcije, kot sta protokol za nadzor zastojev (RTT Congestion Control) in zaščita pred napadi DDoS. Doseganje paritete z odjemalcem C je načrtovano za vejo 2.0, ki bo ponujala tudi vezave za uporabo Artija v kodi v različnih programskih jezikih. V naslednjih nekaj letih se bo delo osredotočilo na implementacijo funkcionalnosti, potrebne za zagon relejev in imeniških strežnikov. Ko koda Rust doseže raven, ki lahko popolnoma nadomesti različico C, nameravajo razvijalci dati Artiju status glavne izvedbe Tor in prenehati vzdrževati izvedbo C. Različica C bo postopno opuščena, da se omogoči nemotena selitev.

Vir: opennet.ru

Dodaj komentar