Arti, el cliente Tor escritorio en Rust llega a su versión 1.1.12
El equipo de desarrollo de Tor ha dado a conocer hace poco el lanzamiento de la nueva versión de Arti 1.1.12, que continúa mejorando el soporte para la ejecución de servicios onion con un progreso significativo.
Para quienes desconocen de Arti, deben saber que este es un proyecto para implementar los protocolos de anonimato Tor en el lenguaje de programación Rust. A diferencia de la implementación C, que primero se diseñó como un proxy SOCKS y luego se adaptó a otras necesidades, Arti se desarrolló inicialmente en forma de una biblioteca modular integrable que puede ser utilizada por varias aplicaciones.
Una de las características distintivas de Arti es que aprovecha toda la experiencia acumulada en el desarrollo previo de Tor. Esto significa que se evitan problemas arquitectónicos conocidos, lo que hace que el proyecto sea más modular y eficiente desde su concepción. A medida que el código Rust alcanza un nivel de madurez que puede reemplazar por completo la implementación en C, los desarrolladores tienen la intención de otorgar a Arti el estatus de implementación principal de Tor y dejar de mantener la versión en C.
Principales novedades de Arti 1.1.12
La versión Arti 1.1.12 se destaca por llevar la implementación de servicios onion al punto de estar listo para pruebas y experimentación, ya que se menciona qué se necesita más trabajo para lograr una seguridad equivalente a la implementación de C tor.
Al mismo tiempo, algunas características para garantizar la privacidad y protección de los servicios onion aún no están listas, como la autorización del cliente, la protección contra ataques DoS y el mecanismo para evitar la detección de nodos Vanguard Guard, por lo que aún no se recomienda su implementación para implementaciones de producción.
Además de ello, se destaca que se han realizado cambios importantes, como la refactorización del código del administrador de claves para prevenir la creación de especificadores de clave inválidos, se han añadido nuevas características, como la posibilidad de detener, iniciar o reconfigurar servicios onion mientras Arti está en ejecución.
El equipo también ha trabajado en mejorar la documentación, corrigiendo errores en el código y brindando una guía más clara sobre cómo ejecutar un servicio onion, se han solucionado problemas de rendimiento y se han realizado limpiezas en el código para optimizar su funcionamiento.
De los demás cambios que se destacan de esta nueva versión:
- Arti ahora admite el protocolo ntor_v3 de enlace de extensión de circuito, que permite a los clientes enviar parámetros de circuito a los relés en sus rutas.
- Se corrigió un conjunto de errores que causaban que los servicios onion cargaran demasiados descriptores.
- Se mejoraron los informes de errores en la carga de descriptores. Asi como también de la creación de un registro de reproducción de las solicitudes entrantes para evitar ataques de reproducción.
- Se implementó una API para que los servicios cebolla informen su estado.
- Se añadió documentación sobre cómo ejecutar un servicio onion en formato doc/OnionService.md.
- Esta documentación también registra áreas donde falta implementación y señala áreas donde el proceso actual tiene mala usabilidad.
- Se corrigió un error que ocurría al intentar crear un descriptor de servicio onion para un período de tiempo que aún no había comenzado.
- Varias mejoras en el manejo de errores del editor de descriptores.
- Se añadió una CLI para conocer la dirección .onion de un servicio determinado.
- Se refactorizo el código de reconfiguración de alto nivel para que envíe una configuración a cada uno de los conjuntos de módulos, en lugar de codificar una lista de funciones para llamar
Finalmente, cabe mencionar que estos avances representan un paso adelante en la implementación de servicios onion, el equipo de desarrollo sigue comprometido con la mejora continua y la incorporación de características adicionales para garantizar la seguridad y la eficiencia de la plataforma.
Por último, es importante tener en cuenta que los desarrolladores advierten que la implementación aun está catalogada como experimental y la experiencia del usuario aún no cumple con todas las expectativas.
Si estás interesado en poder conocer más al respecto, puedes consultar los detalles en el siguiente enlace.