Eerste stabiele vrystelling van Arti, die amptelike Rust-implementering van Tor

Die ontwikkelaars van die anonieme Tor-netwerk het die eerste stabiele vrystelling (1.0.0) van die Arti-projek geskep, wat 'n Tor-kliënt ontwikkel wat in Rust geskryf is. Die 1.0-weergawe is gemerk as geskik vir gebruik deur algemene gebruikers en bied dieselfde vlak van privaatheid, bruikbaarheid en stabiliteit as die hoof C-implementering. Die API wat aangebied word vir die gebruik van Arti-funksionaliteit in ander toepassings, is ook gestabiliseer. Die kode word onder die Apache 2.0- en MIT-lisensies versprei.

Anders as die C-implementering, wat eers as 'n SOCKS-instaanbediener ontwerp is en toe aangepas is vir ander behoeftes, is Arti aanvanklik ontwikkel in die vorm van 'n modulêre insluitbare biblioteek wat deur verskeie toepassings gebruik kan word. Daarbenewens, wanneer 'n nuwe projek ontwikkel word, word alle vorige Tor-ontwikkelingservaring in ag geneem, wat bekende argitektoniese probleme vermy en die projek meer modulêr en doeltreffend maak.

Die rede vir die herskryf van Tor in Rust was die begeerte om 'n hoër vlak van kodesekuriteit te bereik deur 'n geheue-veilige taal te gebruik. Volgens Tor-ontwikkelaars sal ten minste die helfte van alle kwesbaarhede wat deur die projek gemonitor word in 'n Rust-implementering uitgeskakel word as die kode nie "onveilige" blokke gebruik nie. Roes sal dit ook moontlik maak om vinniger ontwikkelingsnelhede te bereik as om C te gebruik, as gevolg van die ekspressiwiteit van die taal en streng waarborge wat jou toelaat om te verhoed dat jy tyd mors op dubbelkontrolering en die skryf van onnodige kode.

Op grond van die resultate van die ontwikkeling van die eerste weergawe, het die gebruik van die Rust-taal homself geregverdig. Daar is byvoorbeeld opgemerk dat daar in elke stadium minder foute in die Rust-kode gemaak is as in vergelykbare ontwikkeling in C - die foute wat tydens die ontwikkelingsproses opgeduik het, het hoofsaaklik verband gehou met logika en semantiek. Die buitensporige veeleisende rustc-samesteller, wat deur sommige as 'n nadeel beskou word, was eintlik 'n seën, want as die kode die toetse saamstel en slaag, die waarskynlikheid dat dit korrek is, aansienlik toeneem.

Werk aan die nuwe variant het ook 'n toename in ontwikkelingspoed bevestig, wat nie net te wyte is aan die feit dat funksionaliteit herskep is op grond van 'n bestaande sjabloon nie, maar ook aan Rust se meer ekspressiewe semantiek, gerieflike funksiebiblioteke en die gebruik van Rust se kodesekuriteit vermoëns. Een van die nadele is die groot grootte van die resulterende samestellings - aangesien die standaard Rust-biblioteek nie by verstek op stelsels voorsien word nie, moet dit ingesluit word by die pakkette wat aangebied word vir aflaai.

Die 1.0-vrystelling fokus hoofsaaklik op basiese werk in die kliëntrol. In weergawe 1.1 word beplan om ondersteuning vir inpropvervoer en brûe te implementeer om blokkering te omseil. Weergawe 1.2 sal na verwagting uiedienste en verwante kenmerke ondersteun, soos die opeenhopingsbeheerprotokol (RTT Congestion Control) en beskerming teen DDoS-aanvalle. Die bereiking van pariteit met die C-kliënt word beplan vir die 2.0-tak, wat ook bindings sal bied vir die gebruik van Arti in kode in verskeie programmeertale.

Oor die volgende paar jaar sal werk fokus op die implementering van die funksionaliteit wat nodig is om aflos- en gidsbedieners te laat loop. Wanneer die Rust-kode 'n vlak bereik wat die C-weergawe heeltemal kan vervang, is die ontwikkelaars van plan om Arti die status van die hoofimplementering van Tor te gee en op te hou om die C-implementering in stand te hou. Die C-weergawe sal geleidelik uitgefaseer word om 'n gladde migrasie moontlik te maak.

Bron: opennet.ru

Voeg 'n opmerking