Rhyddhad sefydlog cyntaf Arti, gweithrediad swyddogol Tor in Rust

Mae datblygwyr rhwydwaith Tor dienw wedi creu'r datganiad sefydlog cyntaf (1.0.0) o brosiect Arti, sy'n datblygu cleient Tor a ysgrifennwyd yn Rust. Mae'r datganiad 1.0 wedi'i farcio'n addas i'w ddefnyddio gan ddefnyddwyr cyffredinol ac mae'n darparu'r un lefel o breifatrwydd, defnyddioldeb a sefydlogrwydd â phrif weithrediad C. Mae'r API a gynigir ar gyfer defnyddio ymarferoldeb Arti mewn cymwysiadau eraill hefyd wedi'i sefydlogi. Mae'r cod yn cael ei ddosbarthu o dan y trwyddedau Apache 2.0 a MIT.

Yn wahanol i weithrediad C, a ddyluniwyd yn gyntaf fel dirprwy SOCKS ac yna wedi'i deilwra i anghenion eraill, datblygir Arti i ddechrau ar ffurf llyfrgell mewnosodadwy fodiwlaidd y gellir ei defnyddio gan amrywiol gymwysiadau. Yn ogystal, wrth ddatblygu prosiect newydd, mae holl brofiad datblygu Tor yn y gorffennol yn cael ei ystyried, sy'n osgoi problemau pensaernïol hysbys ac yn gwneud y prosiect yn fwy modiwlaidd ac effeithlon.

Y rheswm dros ailysgrifennu Tor yn Rust oedd yr awydd i gyflawni lefel uwch o ddiogelwch cod trwy ddefnyddio iaith cof-ddiogel. Yn ôl datblygwyr Tor, bydd o leiaf hanner yr holl wendidau sy’n cael eu monitro gan y prosiect yn cael eu dileu mewn gweithrediad Rust os nad yw’r cod yn defnyddio blociau “anniogel”. Bydd Rust hefyd yn ei gwneud hi'n bosibl cyflawni cyflymder datblygu cyflymach na defnyddio C, oherwydd mynegiant yr iaith a gwarantau llym sy'n eich galluogi i osgoi gwastraffu amser ar wirio dwbl ac ysgrifennu cod diangen.

Yn seiliedig ar ganlyniadau datblygiad y fersiwn gyntaf, roedd y defnydd o'r iaith Rust yn cyfiawnhau ei hun. Er enghraifft, sylwyd bod llai o wallau wedi'u gwneud yn y cod Rust ar bob cam nag mewn datblygiad tebyg yn C - roedd y gwallau a ddaeth i'r amlwg yn ystod y broses ddatblygu yn ymwneud yn bennaf â rhesymeg a semanteg. Mewn gwirionedd daeth y casglwr rustc rhy feichus, a nodwyd gan rai fel anfantais, yn fendith, oherwydd os bydd y cod yn llunio ac yn pasio'r profion, mae'r tebygolrwydd o'i gywirdeb yn cynyddu'n sylweddol.

Cadarnhaodd gweithio ar yr amrywiad newydd hefyd gynnydd mewn cyflymder datblygu, sy'n ganlyniad nid yn unig i'r ffaith bod ymarferoldeb wedi'i ail-greu yn seiliedig ar dempled presennol, ond hefyd i semanteg mwy mynegiannol Rust, llyfrgelloedd swyddogaeth cyfleus, a'r defnydd o ddiogelwch cod Rust. galluoedd. Un o'r anfanteision yw maint mawr y cynulliadau canlyniadol - gan nad yw'r llyfrgell Rust safonol yn cael ei gyflenwi ar systemau yn ddiofyn, rhaid ei gynnwys yn y pecynnau a gynigir i'w lawrlwytho.

Mae'r datganiad 1.0 yn canolbwyntio'n bennaf ar waith sylfaenol yn rôl y cleient. Yn fersiwn 1.1 bwriedir gweithredu cymorth ar gyfer trafnidiaeth plygio i mewn a phontydd i osgoi blocio. Disgwylir i fersiwn 1.2 gefnogi gwasanaethau nionyn a nodweddion cysylltiedig, megis y protocol rheoli tagfeydd (Rheoli Tagfeydd RTT) ac amddiffyniad rhag ymosodiadau DDoS. Bwriedir cyflawni cydraddoldeb gyda'r cleient C ar gyfer y gangen 2.0, a fydd hefyd yn cynnig rhwymiadau ar gyfer defnyddio Arti mewn cod mewn amrywiol ieithoedd rhaglennu.

Dros yr ychydig flynyddoedd nesaf, bydd y gwaith yn canolbwyntio ar weithredu'r swyddogaethau sydd eu hangen i redeg trosglwyddyddion a gweinyddwyr cyfeiriadur. Pan fydd y cod Rust yn cyrraedd lefel a all ddisodli'r fersiwn C yn llwyr, mae'r datblygwyr yn bwriadu rhoi statws prif weithrediad Tor i Arti a rhoi'r gorau i gynnal gweithrediad C. Bydd y fersiwn C yn cael ei dirwyn i ben yn raddol er mwyn caniatáu ar gyfer mudo llyfn.

Ffynhonnell: opennet.ru

Ychwanegu sylw