Все указывает на то, что Rust становится фаворитом в программировании, поскольку многие разработчики приложений, независимо от того, являются ли они независимыми, группы, сообщества или компании, начали проявлять интерес и особенно принимать меры по внедрению этого языка в свои проекты.
Одной из самые популярные примеры этих моментов применительно к открытым исходным текстам - это введение драйверов в Rust внутри ядра Linux или также проект «Prossimo» который в основном направлен на координацию усилий по переводу критически важной программной инфраструктуры в безопасный код для защиты памяти ядра Linux с помощью Rust.
А теперь еще одно отличное присоединение к этой лихорадке, и это не больше и не меньше, чем Tor, с недавнего времени его разработчики представил проект Арти, в рамках которого мы работаем над созданием реализации протокола Tor на языке Rust.
В отличие от реализации C, которая изначально была разработана как прокси-сервер SOCKS и только позже адаптирована для других нужд, Arti изначально он разработан в виде интегрированной модульной библиотеки, которая может использоваться различными приложениями. Он финансируется более года за счет средств грантовой программы Zcash Open Major Grants (ZOMG).
Сегодняшний Tor написан на языке программирования C. Хотя C известен и широко распространен, он, как известно, склонен к ошибкам, связанным с удобством использования, а отсутствие в нем высокоуровневых функций делает многие задачи программирования более сложными, чем на более современном языке. .
Rust кажется наиболее очевидным выходом из нашего затруднительного положения. Это язык высокого уровня, который значительно более выразителен, чем C. Кроме того, у него есть несколько действительно инновационных функций, которые позволяют языку применять определенные свойства безопасности во время компиляции. В первом приближении, если код скомпилирован и явно не помечен как «небезопасный», то общие категории ошибок считаются невозможными.
Причины переписывания Tor в ржавчине цитируются как стремление достичь более высокого уровня безопасности кода за счет использования языка, гарантирующего безопасную работу с памятью. По словам разработчиков Tor, как минимум половина всех уязвимостей, отслеживаемых проектом, будет устранена в развертывании Rust, если в коде не используются «небезопасные» блоки.
Ржавчина это также позволит достичь более высокой скорости разработки, чем при использовании C, благодаря выразительности языка и строгим гарантиям, что вы не будете тратить время на двойные проверки и написание ненужного кода. Также при разработке нового проекта учитывается весь прошлый опыт разработки Tor, что позволит избежать известных архитектурных проблем, сделать проект более модульным и эффективным.
В текущем состоянии Arti теперь может подключаться к сети Tor., взаимодействовать с серверами каталогов и создавать анонимные соединения через Tor с предоставлением прокси на основе протокола SOCKS.
Развитие все еще не рекомендуется для использования в производственных системах, поскольку реализованы не все функции конфиденциальности, и обратная совместимость на уровне API не гарантируется. Выпуск первой версии клиента, совместимой с безопасностью, поддерживающей изоляцию потоков и защиту узлов, запланирован на октябрь.
Первая версия бета-версия ожидается в марте 2022 г. с экспериментальной реализацией встроенной библиотеки и оптимизацией производительности, а первая стабильная версия, со стабильным API, CLI и форматом конфигурации, а также запланирован аудит к середине сентября 2022 г.
Эта версия подойдет для первоначального использования обычными пользователями. Обновление 1.1 ожидается к концу октября 2022 года с поддержкой подключаемого транспорта и мостов во избежание сбоев. Поддержка onion-сервисов запланирована на версию 1.2, а паритет с клиентом C ожидается в версии 2.0, для которой расписание еще не определено.
источник: https://blog.torproject.org/
RUST - это человек будущего, это не только безопасный язык, но он позволяет лучше использовать возможности многоядерного процессора, кроме того, он также имеет особенность в том, что он настолько хорошо структурирован, что он достаточно быстр для использования для обработки.Ядро, не разочаровываясь в производительности и не умирая в попытках.