Kutolewa kwa kwanza kwa Arti, utekelezaji rasmi wa Tor in Rust

Watengenezaji wa mtandao wa Tor wasiojulikana wameunda toleo la kwanza thabiti (1.0.0) la mradi wa Arti, ambao huendeleza mteja wa Tor iliyoandikwa kwa Rust. Toleo la 1.0 limetiwa alama kuwa linafaa kutumiwa na watumiaji wa jumla na hutoa kiwango sawa cha faragha, utumiaji na uthabiti kama utekelezwaji mkuu wa C. API inayotolewa kwa kutumia utendakazi wa Arti katika programu zingine pia imeimarishwa. Nambari hiyo inasambazwa chini ya leseni za Apache 2.0 na MIT.

Tofauti na utekelezaji wa C, ambao uliundwa kwanza kama proksi ya SOCKS na kisha kulengwa kulingana na mahitaji mengine, Arti inaundwa awali katika mfumo wa maktaba ya kawaida ya kupachikwa ambayo inaweza kutumiwa na programu mbalimbali. Kwa kuongeza, wakati wa kuendeleza mradi mpya, uzoefu wote wa maendeleo ya Tor huzingatiwa, ambayo huepuka matatizo yanayojulikana ya usanifu na hufanya mradi kuwa wa kawaida na ufanisi zaidi.

Sababu ya kuandika upya Tor katika Rust ilikuwa hamu ya kufikia kiwango cha juu cha usalama wa msimbo kwa kutumia lugha salama ya kumbukumbu. Kulingana na watengenezaji wa Tor, angalau nusu ya udhaifu wote unaofuatiliwa na mradi utaondolewa katika utekelezaji wa Kutu ikiwa msimbo hautumii vitalu "zisizo salama". Kutu pia itafanya iwezekanavyo kufikia kasi ya maendeleo ya haraka kuliko kutumia C, kwa sababu ya kujieleza kwa lugha na dhamana kali ambayo inakuwezesha kuepuka kupoteza muda kwa kuangalia mara mbili na kuandika msimbo usiohitajika.

Kulingana na matokeo ya maendeleo ya toleo la kwanza, matumizi ya lugha ya Kutu yalijihalalisha. Kwa mfano, iligunduliwa kwamba katika kila hatua, makosa machache yalifanywa katika msimbo wa Rust kuliko katika maendeleo kulinganishwa katika C - makosa yaliyojitokeza wakati wa mchakato wa maendeleo yalihusiana hasa na mantiki na semantiki. Mkusanyaji wa rustc anayedai kupita kiasi, aliyebainishwa na wengine kama hasara, kwa kweli aligeuka kuwa baraka, kwani ikiwa nambari itajumuisha na kupitisha majaribio, uwezekano wa usahihi wake huongezeka sana.

Kufanya kazi kwenye lahaja mpya pia ilithibitisha kuongezeka kwa kasi ya ukuzaji, ambayo ni kwa sababu sio tu ukweli kwamba utendakazi uliundwa upya kulingana na kiolezo kilichopo, lakini pia kwa semantiki za kuelezea zaidi za Rust, maktaba za kazi zinazofaa, na utumiaji wa usalama wa nambari ya Rust. uwezo. Moja ya hasara ni saizi kubwa ya makusanyiko yanayotokana - kwa kuwa maktaba ya kawaida ya Rust haijatolewa kwenye mifumo kwa chaguo-msingi, lazima iingizwe kwenye vifurushi vinavyotolewa kwa kupakuliwa.

Toleo la 1.0 hulenga zaidi kazi ya kimsingi katika jukumu la mteja. Katika toleo la 1.1 imepangwa kutekeleza usaidizi wa usafiri wa kuziba na madaraja ya kuzuia kuzuia. Toleo la 1.2 linatarajiwa kusaidia huduma za vitunguu na vipengele vinavyohusiana, kama vile itifaki ya kudhibiti msongamano (RTT Congestion Control) na ulinzi dhidi ya mashambulizi ya DDoS. Kufikia usawa na mteja wa C imepangwa kwa tawi la 2.0, ambalo pia litatoa vifungo vya kutumia Arti katika msimbo katika lugha mbalimbali za programu.

Katika miaka michache ijayo, kazi itazingatia kutekeleza utendakazi unaohitajika ili kuendesha upeanaji na seva za saraka. Wakati nambari ya kutu inafikia kiwango ambacho kinaweza kuchukua nafasi ya toleo la C, watengenezaji wanakusudia kumpa Arti hali ya utekelezaji kuu wa Tor na kuacha kudumisha utekelezaji wa C. Toleo la C litaondolewa hatua kwa hatua ili kuruhusu uhamiaji laini.

Chanzo: opennet.ru

Kuongeza maoni