Tor-anonüümse võrgustiku arendajad on välja andnud projekti Arti esimese stabiilse versiooni (1.0.0), mis arendab Tor-klienti, mis on kirjutatud Rust'i keeles. Väljalase 1.0 on tähistatud kui soovitatav tavaliste kasutajate jaoks, pakkudes sama taset privaatsust, kasutatavust ja stabiilsust, nagu ka peamine C-keeles rakendus. Stabiliseeritud on ka API, mis võimaldab Arti funktsionaalsust kasutada teistes rakendustes. Kood levitatakse Apache 2.0 ja MIT litsentside alusel.
Erinevalt C keele rakendusest, mis algselt oli kavandatud SOCKS-proksina ja hiljem kohandatud muude vajaduste jaoks, areneb Arti algselt modulaarse integreeritud raamatukoguna, mida saavad kasutada erinevad rakendused. Samuti arvestatakse uue projekti arendamisel kogu eelmise Tor'i arenduse kogemust, mis võimaldab vältida tuntud arhitektuurilisi probleeme ning muuta projekti modulaarsemaks ja tõhusamaks.
Tor'i ümberkirjutamise põhjuseks Rust'is oli soov saavutada kõrgem koodikaitse tase, kasutades keelt, mis tagab mälu ohutu töötlemise. Tor'i arendajate hinnangul välistatakse vähemalt pool kõigist projekti jälgitud haavatavustest Rust'i rakenduses, kui koodis ei kasutata „unsafe” plokke. Rust võimaldab ka kiiremat arendust, võrreldes C'ga, keele väljendusrikkuse ja rangete garantiide tõttu, mis võimaldavad vältida kahekordseid kontrollimisi ja liigse koodi kirjutamist.
Esimese versiooni arendamise tulemuste põhjal on Rusti keele kasutamine end õigustanud. Näiteks on märgatud, et Rusti koodis tehti igas etapis vähem vigu kui võrreldava C arenduse käigus — väljatõusnud arendusprotsessi vead olid enamasti seotud loogika ja semantikaga. Rusti kompilaatori rustc liialt nõudlikkus, mida mõned peavad puuduseks, on tegelikult osutunud õnnistuseks, kuna kui kood kompileerib ja läbib testid, suureneb oluliselt selle õigsuse tõenäosus.
Uue versiooni kallal töötades kinnitati samuti arenduse kiirusetõusu, mis ei tulene mitte ainult sellest, et funktsionaalsus taastati olemasoleva malli põhjal, vaid ka Rusti väljendusrikkamast semantikast, mugavatest funktsiooni raamatukogudest ja Rusti koodi turvalisuse tagamise võimaluste rakendamisest. Puudustena tuuakse välja tulemuslike kogude suurus — kuna Rusti standardraamatukogu ei kuulu süsteemide vaikimisi komponentide hulka, tuleb see lisada allalaetavate pakettide hulka.
1.0 väljaanne keskendub peamiselt kliendi rolli põhitööle. Versioonis 1.1 on kavandatud pistiktransportide ja sildade toe rakendamine, et piirangutest mööda hiilida. Versioonis 1.2 ootame tosupport'i onion-teenuseid ja sellega seotud funktsioone, nagu koormuse juhtimise protokoll (RTT Congestion Control) ja DDoS-rünnakute kaitsemeetmed. C keeles kliendi pariteedi saavutamine on planeeritud 2.0 harusse, kus pakutakse ka seoseid Arti kasutamiseks erinevates programmeerimiskeeltes.
Järgmise paar aasta jooksul keskendutakse relee tööks vajaliku funktsionaalsuse rakendamisele ja serverite kataloogide jaoks. Kui Rusti kood saavutab taseme, mis suudab täielikult asendada C keele versiooni, kavatsevad arendajad anda Artile Tor-i põhirakenduse staatuse ja lõpetada C keele versiooni hooldamise. C keele versiooni tugi lõpetatakse järk-järgult, pakkudes sujuva ülemineku võimalust.
Allikas: opennet.ru
