Разработчики анонимной сети Tor опубликовали выпуск проекта Arti 1.1.12, развивающего Tor-клиент, написанный на языке Rust. Ветка 1.x отмечена как пригодная для использования обычными пользователями и обеспечивающая тот же уровень конфиденциальности, юзабилити и стабильности, что и основная реализация на языке Си. Код распространяется под лицензиями Apache 2.0 и MIT.
В отличие от реализации на Си, которая вначале была спроектирована как SOCKS-прокси, а уже потом подогнана под другие потребности, Arti изначально развивается в форме модульной встраиваемой библиотеки, которую смогут использовать различные приложения. Кроме того, при разработке нового проекта учитывается весь прошлый опыт разработки Tor, что позволяет избежать известных архитектурных проблем, сделать проект более модульным и эффективным. Когда код на Rust достигнет уровня, способного полностью заменить вариант на Си, разработчики намерены придать Arti статус основной реализации Tor и прекратить сопровождение реализации на Си.
В качестве причины переписывания Tor на Rust упоминается желание добиться более высокого уровня защищённости кода за счёт использования языка, обеспечивающего безопасную работу с памятью. По оценке разработчиков Tor, как минимум половина всех отслеживаемых проектом уязвимостей будет исключена в реализации на Rust, если в коде не используются блоки “unsafe”. Rust также даст возможность добиться более высокой скорости разработки, чем при использовании Си, за счёт выразительности языка и строгих гарантий, позволяющих не тратить время на двойные проверки и написание лишнего кода.
Версия Arti 1.1.12 примечательна доведением реализации onion-сервисов до готовности тестирования и проведения экспериментов. При помощи Arti теперь можно не только подключаться к существующим onion-сервисам, но и создавать свои onion-сервисы. При этом в настоящее время ещё не готовы некоторые возможности для обеспечения приватности и защиты onion-сервисов, такие как авторизация клиентов, защита от DoS-атак и механизм предотвращения определения Guard-узлов “Vanguard”, поэтому реализация пока не рекомендована для рабочих внедрений.