И это уже между нами новая версия проекта Arti 0.2.0, который был недавно представлен разработчиками анонимной сети Tor и в который были внесены различные улучшения, из которых большая часть направлена на повышение производительности.
Для тех, кто не знает о проекте Арти, они должны знать, что это новое предложение от разработчиков Tor чтобы предложить Клиент Tor написан на Rust.
В рамках проекта имеет статус опытной разработки, он отстает от основного клиента C Tor по функционалу и пока не готов полностью его заменить.
В отличие от реализации C, которая изначально была разработана как SOCKS-прокси, а затем адаптирована для других нужд, Изначально Arti разрабатывался как библиотека плагинов. модульный, который может использоваться различными приложениями.
Также при разработке нового проекта учитывается весь прошлый опыт разработки Tor, что позволит избежать известных архитектурных проблем и сделать проект более модульным и эффективным. Код распространяется под лицензиями Apache 2.0 и MIT.
Причины переписать Tor на Rust желание достичь более высокого уровня безопасности кода с помощью безопасного для памяти языка. По словам разработчиков Tor, не менее половины всех уязвимостей, отслеживаемых проектом, будут устранены в реализации Rust, если в коде не используются «небезопасные» блоки.
Rust также позволит увеличить скорость разработки. чем с C, из-за выразительности языка и сильных гарантий, позволяющих не тратить время на двойные проверки и написание ненужного кода.
Основные новинки Arti 0.2.0
В этой новой версии представленного проекта, наиболее заметные изменения в версии 0.2.0 связаны с повышением производительности и надежности..
Кроме того, отмечена улучшенная работа в сетях, поддерживающих только IPv6, а также улучшения в снижении потребления памяти для хранения данных с серверов каталогов, а также добавлена опция в dns_port, с помощью которой пользователь может настроить отправку DNS-запросов через. Тор.
Еще одно заметное изменение заключается в том, что для работы с конфигурацией был предложен новый код, в дополнение к добавлены API для определения правил изоляции потоков и включения спящего режима. (приостанавливать работу для неактивных клиентов) и что предоставляется возможность подключать альтернативные реализации кода для работы с серверами каталогов.
С точки зрения пользователя, большинство изменений в этой версии Arti направлены на повышение производительности и надежности. Мы начали экспериментировать с различными типами сетевых проблем и улучшили поведение Arti в сетях только для IPv6 и при многих типах сетевых сбоев.
Мы также теперь используем меньше памяти для хранения каталогов (порядка нескольких мегабайт на работающем клиенте).
До публикация версии 1.0.0 разработчики намерены дать Arti полную поддержку работы в качестве клиента Tor который обеспечивает доступ в Интернет (реализация поддержки onion-сервисов отложена на будущее).
Его планируется включить для достижения паритета с основной реализацией языка C в таких областях, как производительность сети, нагрузка и надежность ЦП, а также для обеспечения поддержки всех функций, связанных с безопасностью.
планируетсяверсия 1.0 за сентябрь со стабилизацией API, CLI и конфигурации, который подойдет для первоначального использования обычными пользователями. В дальнейшем, когда код Rust достигнет уровня, когда он сможет полностью заменить C-версию, разработчики намерены сделать Arti основной реализацией Tor и прекратить поддержку C-реализации.
В конце концов если вам интересно узнать об этом больше, вы можете проверить подробности в по следующей ссылке.