Arti-ren lehen bertsio egonkorra, Tor Rust-en inplementazio ofiziala

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΠΎΠΉ сСти Tor сформировали ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ выпуск (1.0.0) ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Arti, Ρ€Π°Π·Π²ΠΈΠ²Π°ΡŽΡ‰Π΅Π³ΠΎ Tor-ΠΊΠ»ΠΈΠ΅Π½Ρ‚, написанный Π½Π° языкС Rust. Выпуск 1.0 ΠΎΡ‚ΠΌΠ΅Ρ‡Π΅Π½ ΠΊΠ°ΠΊ ΠΏΡ€ΠΈΠ³ΠΎΠ΄Π½Ρ‹ΠΉ для использования ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ Ρ‚ΠΎΡ‚ ΠΆΠ΅ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, ΡŽΠ·Π°Π±ΠΈΠ»ΠΈΡ‚ΠΈ ΠΈ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Ρ‡Ρ‚ΠΎ ΠΈ основная рСализация Π½Π° языкС Π‘ΠΈ. Π‘Ρ‚Π°Π±ΠΈΠ»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½ Ρ‚Π°ΠΊΠΆΠ΅ API, ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌΡ‹ΠΉ для использования Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Arti Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… прилоТСниях. Код распространяСтся ΠΏΠΎΠ΄ лицСнзиями Apache 2.0 ΠΈ MIT.

C inplementazioa ez bezala, lehen SOCKS proxy gisa diseinatu zena eta gero beste beharretara egokitutakoa, Arti hasieran hainbat aplikaziok erabil dezaketen kapsulatutako liburutegi modular baten moduan garatzen da. Horrez gain, proiektu berri bat garatzean, iraganeko Tor garapenaren esperientzia guztia hartzen da kontuan, eta horrek ezagutzen diren arazo arkitektonikoak saihesten ditu eta proiektua modularagoa eta eraginkorragoa bihurtzen du.

Π’ качСствС ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹ пСрСписывания Tor Π½Π° Rust Π±Ρ‹Π»ΠΎ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ Π±ΠΎΠ»Π΅Π΅ высокого уровня защищённости ΠΊΠΎΠ΄Π° Π·Π° счёт использования языка, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰Π΅Π³ΠΎ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ с ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ. По ΠΎΡ†Π΅Π½ΠΊΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Tor, ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π° всСх отслСТиваСмых ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ уязвимостСй Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½Π° Π² Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° Rust, Ссли Π² ΠΊΠΎΠ΄Π΅ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π±Π»ΠΎΠΊΠΈ Β«unsafeΒ». Rust Ρ‚Π°ΠΊΠΆΠ΅ даст Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ Π±ΠΎΠ»Π΅Π΅ высокой скорости Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Ρ‡Π΅ΠΌ ΠΏΡ€ΠΈ использовании Π‘ΠΈ, Π·Π° счёт Π²Ρ‹Ρ€Π°Π·ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ языка ΠΈ строгих Π³Π°Ρ€Π°Π½Ρ‚ΠΈΠΉ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΡ… Π½Π΅ Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ врСмя Π½Π° Π΄Π²ΠΎΠΉΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΈ написаниС лишнСго ΠΊΠΎΠ΄Π°.

По ΠΈΡ‚ΠΎΠ³Π°ΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠΉ вСрсии использованиС языка Rust ΠΎΠΏΡ€Π°Π²Π΄Π°Π»ΠΎ сСбя. НапримСр, Π·Π°ΠΌΠ΅Ρ‡Π΅Π½ΠΎ, Ρ‡Ρ‚ΠΎ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ этапС Π² ΠΊΠΎΠ΄Π΅ Π½Π° Rust ΡΠΎΠ²Π΅Ρ€ΡˆΠ°Π»ΠΎΡΡŒ мСньшС ошибок, Ρ‡Π΅ΠΌ ΠΏΡ€ΠΈ сопоставимой Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π½Π° Π‘ΠΈ β€” Π²ΡΠΏΠ»Ρ‹Π²ΡˆΠΈΠ΅ Π² процСссС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ошибки Π² основном Π±Ρ‹Π»ΠΈ связаны с Π»ΠΎΠ³ΠΈΠΊΠΎΠΉ ΠΈ сСмантикой. Излишняя Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ компилятора rustc, отмСчаСмая Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΊΠ°ΠΊ нСдостаток, Π½Π° Π΄Π΅Π»Π΅ оказалась Π±Π»Π°Π³ΠΎΠΌ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Ссли ΠΊΠΎΠ΄ компилируСтся ΠΈ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ тСсты, Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ²Ρ‹ΡˆΠ°Π΅Ρ‚ΡΡ Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ Π΅Π³ΠΎ коррСктности.

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ Π½Π°Π΄ Π½ΠΎΠ²Ρ‹ΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠΌ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€Π΄ΠΈΠ»ΠΎΡΡŒ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ скорости Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Ρ‡Ρ‚ΠΎ связано Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ воссоздавалась Π½Π° основС ΠΈΠΌΠ΅ΡŽΡ‰Π΅Π³ΠΎΡΡ шаблона, Π½ΠΎ ΠΈ с Π±ΠΎΠ»Π΅Π΅ Π²Ρ‹Ρ€Π°Π·ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ сСмантикой Rust, ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΌΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ возмоТностСй Rust ΠΏΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½ΠΈΡŽ бСзопасности ΠΊΠΎΠ΄Π°. Из нСдостатков выдСляСтся большой Ρ€Π°Π·ΠΌΠ΅Ρ€ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… сборок β€” Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ стандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Rust Π½Π΅ поставляСтся Π² систСмах ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, Π΅Ρ‘ приходится Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π² ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌΡ‹Π΅ для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹.

Выпуск 1.0 Π² основном сосрСдоточСн Π½Π° Π±Π°Π·ΠΎΠ²ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅ Π² Ρ€ΠΎΠ»ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π’ вСрсии 1.1 планируСтся Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌΠΎΠ³ΠΎ транспорта ΠΈ Π±Ρ€ΠΈΠ΄ΠΆΠ΅ΠΉ для ΠΎΠ±Ρ…ΠΎΠ΄Π° Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ. Π’ вСрсии 1.2 оТидаСтся ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° onion-сСрвисов ΠΈ ΡΠΎΠΏΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… возмоТностСй, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» управлСния ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ (RTT Congestion Control) ΠΈ срСдства Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ DDoS-Π°Ρ‚Π°ΠΊ. ДостиТСниС ΠΏΠ°Ρ€ΠΈΡ‚Π΅Ρ‚Π° с ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ Π½Π° языкС Π‘ΠΈ Π½Π°ΠΌΠ΅Ρ‡Π΅Π½ΠΎ Π² Π²Π΅Ρ‚ΠΊΠ΅ 2.0, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Ρ‚Π°ΠΊΠΆΠ΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Ρ‹ привязки для использования Arti Π² ΠΊΠΎΠ΄Π΅ Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… языках программирования.

Π’ Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π»Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π° Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π° Π½Π° Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠΉ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ€Π΅Π»Π΅Π΅Π² ΠΈ сСрвСров Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ. Когда ΠΊΠΎΠ΄ Π½Π° Rust достигнСт уровня, способного ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Π½Π° Π‘ΠΈ, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π½Π°ΠΌΠ΅Ρ€Π΅Π½Ρ‹ ΠΏΡ€ΠΈΠ΄Π°Ρ‚ΡŒ Arti статус основной Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Tor ΠΈ ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ сопровоТдСниС Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° Π‘ΠΈ. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° вСрсии Π½Π° языкС Π‘ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‰Π΅Π½Π° постСпСнно с прСдоставлСниСм возмоТности ΠΏΠ»Π°Π²Π½ΠΎΠΉ ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΠΈ.

Iturria: opennet.ru

Gehitu iruzkin berria