Ya fue liberada la primera versión estable de Arti, la implementación de Tor en Rust

septiembre 04, 2022 0 Comments

Arti 1.0 ya es estable y esta disponible para todos

Se mejoraron muchos aspectos en Arti 1.0 entre ellos el desempeño y la robustez

Los desarrolladores de la red anónima Tor dieron a conocer que ya fue liberada la primera versión estable del proyecto Arti, que desarrolla un cliente Tor escrito en Rust.

La versión 1.0 de Arti, está marcada como utilizable por los usuarios generales y proporciona el mismo nivel de privacidad, facilidad de uso y estabilidad que la implementación principal de C.

Cuando definimos nuestro conjunto de hitos, definimos Arti 1.0.0 como «listo para uso en producción»: debería poder usarlo en el mundo real, para obtener un grado similar de privacidad, facilidad de uso y estabilidad al que tendría. con un cliente C Tor. Las API deben ser (más o menos) estables para los integradores.

Creemos que lo hemos logrado. Ahora puede usar arti proxypara conectarse a la red Tor para anonimizar sus conexiones de red.

Tenga en cuenta que no recomendamos apuntar un navegador web convencional a arti(o, de hecho, C Tor): los navegadores web filtran mucha información privada y de identificación. Para navegar por la web de forma anónima, use Tor Browser; tenemos instrucciones para usarlo con Arti .

Sobre Arti

A diferencia de la implementación de C, que se diseñó originalmente como un proxy SOCKS y luego se personalizó para adaptarse a otras necesidades, Arti se desarrolló inicialmente como una biblioteca de complementos modulares que pueden usar varias aplicaciones.

Además, a la hora de desarrollar un nuevo proyecto se tiene en cuenta toda la experiencia pasada de desarrollo de Tor, lo que evita problemas de arquitectura conocidos, haciendo que el proyecto sea más modular y eficiente.

La razón para reescribir Tor en Rust fue lograr un mayor nivel de seguridad del código mediante el uso de un lenguaje seguro para la memoria. Según los desarrolladores de Tor, al menos la mitad de todas las vulnerabilidades rastreadas por el proyecto se excluirán en la implementación de Rust si el código no usa bloques «inseguros».

Rust también permitirá lograr una velocidad de desarrollo más rápida que con C, debido a la expresividad del lenguaje y las sólidas garantías que le permiten no perder el tiempo en verificaciones dobles y escribir código innecesario.

Principales novedades de Arti 1.0

Esta versión 1.0 Arti se centra principalmente en el trabajo básico en el rol de cliente, ya que se menciona que se ha mejorado la robustez de bootstrapping.

Así como también que se ha añadido un mecanismo sólido para informar el estado de arranque para que las aplicaciones puedan detectar y ayudar a diagnosticar problemas, así como también API que son mucho más estables y mejor analizadas que hace seis meses.

También se destaca que se ha perfilado el rendimiento a lo largo de varias métricas, ademas de que se ha trabajado para abordar aquellas que estaban fuera de línea.

Otros de los cambios que se destacan:

  • Aislamiento de circuito orientado a la propiedad.
  • Validación de permisos de archivos para garantizar que los datos se almacenen de forma segura.
  • Omisión de información sensible de los registros.
  • Borrar claves de la memoria después de usarlas.
  • Endurecimiento contra ataques basados ​​en depuradores.
  • Relleno de canal para resistir el análisis de tráfico basado en netflow
  • Mejorada la portabilidad en iOS, Android y Windows.

En la versión 1.1, está previsto implementar soporte para transporte enchufable y puentes para evitar esclusas. Se espera que la versión 1.2 sea compatible con los servicios de cebolla y funciones relacionadas, como el control de congestión RTT y la protección DDoS.

Lograr la paridad con el cliente C está programado para la rama 2.0, que también ofrecerá enlaces para usar Arti en código en varios lenguajes de programación.

Durante los próximos años, el trabajo se centrará en implementar la funcionalidad necesaria para ejecutar repetidores y servidores de directorio. Cuando el código Rust alcance un nivel que pueda reemplazar por completo la versión C, los desarrolladores tienen la intención de hacer de Arti la implementación principal de Tor y dejar de mantener la implementación C.

La compatibilidad con la versión en lenguaje C se eliminará gradualmente para permitir una migración sin problemas.

Finalmente si estás interesado en poder conocer más al respecto, puedes consultar los detalles en el siguiente enlace.


Some say he’s half man half fish, others say he’s more of a seventy/thirty split. Either way he’s a fishy bastard.