Tor projekts iepazīstināja ar ieviešanu Rust valodā, kas nākotnē aizstās C versiju

Anonīmā Tor tīkla izstrādātāji prezentēja Arti projektu, kura ietvaros notiek darbs pie Tor protokola ieviešanas Rust valodā. Atšķirībā no C ieviešanas, kas vispirms tika izstrādāta kā SOCKS starpniekserveris un pēc tam pielāgota citām vajadzībām, Arti sākotnēji tika izstrādāts modulāras iegultās bibliotēkas veidā, ko var izmantot dažādās lietojumprogrammās. Darbs tiek veikts vairāk nekā gadu ar finansējumu no Zcash Open Major Grants (ZOMG) grantu programmas. Kods tiek izplatīts saskaņā ar Apache 2.0 un MIT licencēm.

Iemesli Tor pārrakstīšanai Rust ir vēlme sasniegt augstāku koda drošības līmeni, izmantojot valodu, kas nodrošina drošu darbību ar atmiņu. Pēc Tor izstrādātāju domām, Rust ieviešanā tiks novērsta vismaz puse no visām projekta uzraudzītajām ievainojamībām, ja kods neizmantos “nedrošos” blokus. Rūsa arī ļaus sasniegt ātrākus izstrādes ātrumus nekā izmantojot C, pateicoties valodas izteiksmīgumam un stingrām garantijām, kas ļauj netērēt laiku dubultai pārbaudei un nevajadzīga koda rakstīšanai. Turklāt, izstrādājot jaunu projektu, tiek ņemta vērā visa iepriekšējā Tor izstrādes pieredze, kas ļaus izvairīties no zināmām arhitektūras problēmām un padarīs projektu modulārāku un efektīvāku.

Pašreizējā stāvoklī Arti jau var izveidot savienojumu ar Tor tīklu, sazināties ar direktoriju serveriem un izveidot anonimizētus savienojumus virs Tor, izmantojot uz SOCKS balstītu starpniekserveri. Izstrāde vēl nav ieteicama izmantošanai ražošanas sistēmās, jo nav ieviestas visas privātuma funkcijas un nav garantēta atgriezeniskā saderība API līmenī. Pirmo drošības prasībām atbilstošo klienta versiju, kas atbalsta aizsargmezglus un pavedienu izolāciju, ir plānots izlaist oktobrī.

Pirmā beta versija ir gaidāma 2022. gada martā ar eksperimentālu iegultās bibliotēkas ieviešanu un veiktspējas optimizāciju. Pirmais stabilais laidiens ar stabilu API, CLI un konfigurācijas formātu, kā arī auditēšanu ir plānots 2022. gada septembra vidū. Šis laidiens būs piemērots sākotnējai lietošanai vispārējiem lietotājiem. Atjauninājums 2022 ir gaidāms 1.1. gada oktobra beigās ar atbalstu spraudņu transportēšanai un tiltiem, lai apietu bloķēšanu. Atbalsts sīpolu pakalpojumiem ir plānots 1.2 laidienā, un paritātes sasniegšana ar C klientu ir gaidāma 2.0 laidienā, kura laiks vēl nav noteikts.

Nākotnē izstrādātāji prognozē pakāpenisku aktivitātes samazināšanos, kas saistīta ar C koda izstrādi, un laika pieaugumu, kas veltīts rediģēšanai Rust. Kad Rust ieviešana sasniegs līmeni, kas var aizstāt C versiju, izstrādātāji pārtrauks jaunu funkciju pievienošanu C ieviešanai un pēc kāda laika pārtrauks to pilnībā atbalstīt. Bet tas nenotiks drīz, un, kamēr Rust ieviešana nesasniegs pilnīgas nomaiņas līmeni, turpināsies Tor klienta un releja izstrāde C versijā.

Avots: opennet.ru

Pievieno komentāru