Earste stabile release fan Arti, de offisjele ymplemintaasje fan Tor yn Rust

De ûntwikkelders fan it anonime Tor-netwurk hawwe de earste stabile release (1.0.0) makke fan it Arti-projekt, dat in Tor-kliïnt ûntwikkelet skreaun yn Rust. De 1.0-release wurdt markearre as brûkber troch algemiene brûkers en leveret itselde nivo fan privacy, brûkberens en stabiliteit as de wichtichste C-ymplemintaasje. De API oanbean foar it brûken fan Arti-funksjonaliteit yn oare applikaasjes is ek stabilisearre. De koade wurdt ferspraat ûnder de Apache 2.0 en MIT lisinsjes.

Oars as de C-ymplemintaasje, dy't earst waard ûntwurpen as in SOCKS-proxy en dan ôfstimd op oare behoeften, wurdt Arti yn earste ynstânsje ûntwikkele yn 'e foarm fan in modulêre ynbêde bibleteek dy't brûkt wurde kin troch ferskate applikaasjes. Derneist, by it ûntwikkeljen fan in nij projekt, wurdt alle ferline Tor-ûntwikkelingsûnderfining rekken holden, wat bekende arsjitektoanyske problemen foarkomt en it projekt mear modulêr en effisjint makket.

De reden foar it herskriuwen fan Tor yn Rust wie de winsk om in heger nivo fan koadefeiligens te berikken troch in ûnthâldfeilige taal te brûken. Neffens Tor-ûntwikkelders sil op syn minst de helte fan alle kwetsberens kontrolearre troch it projekt wurde elimineare yn in Rust-ymplemintaasje as de koade gjin "ûnfeilige" blokken brûkt. Rust sil it ek mooglik meitsje om rapper ûntwikkelingssnelheden te berikken dan C te brûken, troch de ekspressiviteit fan 'e taal en strikte garânsjes dy't jo kinne foarkomme dat jo tiid fergrieme op dûbele kontrôle en it skriuwen fan ûnnedige koade.

Op grûn fan 'e resultaten fan' e ûntwikkeling fan 'e earste ferzje rjochtfeardige it gebrûk fan' e Rusttaal himsels. Bygelyks, it waard opmurken dat op elke poadium, minder flaters waarden makke yn de Rust koade as yn fergelykbere ûntwikkeling yn C - de flaters dy't opdûkt tidens de ûntwikkeling proses wiene benammen relatearre oan logika en semantyk. De al te easken rustc gearstaller, opmurken troch guon as in neidiel, eins blykte te wêzen in segen, want as de koade kompilearret en trochjaan de tests, de kâns op syn korrektheid tanimt gâns.

It wurkjen oan 'e nije fariant befêstige ek in ferheging fan ûntwikkelingssnelheid, wat net allinich te tankjen is oan it feit dat funksjonaliteit waard opnij makke op basis fan in besteande sjabloan, mar ek oan Rust's mear ekspressive semantyk, handige funksjebiblioteken, en it gebrûk fan Rust's koadebefeiliging. mooglikheden. Ien fan 'e neidielen is de grutte grutte fan' e resultearjende gearkomsten - om't de standert Rust-bibleteek net standert wurdt levere op systemen, moat it opnommen wurde yn 'e pakketten oanbean foar download.

De 1.0-release rjochtet him benammen op basiswurk yn 'e kliïntrol. Yn ferzje 1.1 is it plan om stipe te ymplementearjen foar plug-in ferfier en brêgen om blokkearjen te omgean. Ferzje 1.2 wurdt ferwachte om sipeltsjinsten en relatearre funksjes te stypjen, lykas it protokol foar congestiekontrôle (RTT Congestion Control) en beskerming tsjin DDoS-oanfallen. It berikken fan pariteit mei de C-kliïnt is pland foar de 2.0-tûke, dy't ek bindingen sil biede foar it brûken fan Arti yn koade yn ferskate programmeartalen.

Yn 'e kommende jierren sil it wurk rjochtsje op it ymplementearjen fan de funksjonaliteit dy't nedich is om relays en mapservers út te fieren. As de Rust-koade in nivo berikt dat de C-ferzje folslein kin ferfange, binne de ûntwikkelders fan doel om Arti de status te jaan fan 'e wichtichste ymplemintaasje fan Tor en stopje mei it behâld fan de C-ymplemintaasje. De C-ferzje sil stadichoan útfase wurde om in soepele migraasje mooglik te meitsjen.

Boarne: opennet.ru

Add a comment