Primeira versión beta de Arti, unha implementación de Tor en Rust

Os desenvolvedores da rede anónima Tor presentaron a primeira versión beta (0.1.0) do proxecto Arti, que desenvolve un cliente Tor escrito en Rust. O proxecto ten o estado de desenvolvemento experimental, queda atrás da funcionalidade do cliente principal Tor en C e aínda non está preparado para substituílo completamente. En setembro está previsto crear a versión 1.0 con estabilización da API, a CLI e a configuración, que será adecuada para o seu uso inicial por parte dos usuarios comúns. Nun futuro máis afastado, cando o código Rust alcance un nivel que pode substituír completamente a versión C, os desenvolvedores pretenden darlle a Arti o estado da implementación principal de Tor e deixar de manter a implementación C.

A diferenza da implementación C, que foi deseñada primeiro como un proxy SOCKS e despois adaptada a outras necesidades, Arti desenvólvese inicialmente en forma dunha biblioteca integrable modular que pode ser utilizada por varias aplicacións. Ademais, á hora de desenvolver un novo proxecto, téñense en conta toda a experiencia anterior de desenvolvemento de Tor, o que evitará problemas arquitectónicos coñecidos e fará que o proxecto sexa máis modular e eficiente. O código distribúese baixo as licenzas Apache 2.0 e MIT.

Os motivos para reescribir Tor en Rust son o desexo de acadar un maior nivel de seguridade do código mediante o uso dunha linguaxe que garanta un funcionamento seguro coa memoria. Segundo os desenvolvedores de Tor, polo menos a metade de todas as vulnerabilidades monitorizadas polo proxecto eliminaranse nunha implementación de Rust se o código non usa bloques "inseguros". Rust tamén permitirá acadar velocidades de desenvolvemento máis rápidas que o uso de C, debido á expresividade da linguaxe e ás estritas garantías que permiten evitar perder o tempo en comprobación dobre e escribir códigos innecesarios.

Entre os cambios na versión 0.1.0, hai unha estabilización básica das API de alto nivel e a preparación da biblioteca para a integración experimental con outros proxectos. Entre os cambios, menciónase a adición dunha API para crear instancias de TorClient, incluíndo a capacidade de construír e inicializar (bootstrap) en segundo plano no primeiro uso. Ademais, engadiuse unha nova API de alto nivel para o tratamento de erros.

Antes da publicación da versión 1.0.0, os desenvolvedores pretenden proporcionar a Arti un soporte total para traballar como cliente Tor que proporciona acceso a Internet (a implementación do soporte para os servizos onion aprázase para o futuro). Isto inclúe lograr a paridade coa implementación C mainstream en áreas como o rendemento da rede, a carga da CPU e a fiabilidade, así como ofrecer soporte para todas as funcións relacionadas coa seguridade.

Fonte: opennet.ru

Engadir un comentario