Tor Browser será más seguro gracias al lenguaje Rust

Share this…

Tor Browser es un navegador web basado en Firefox utilizado especialmente para conectarnos a la red Tor y poder navegar de forma totalmente segura y anónima por esta red. Debido a la naturaleza de este navegador (navegar seguros y mantener el anonimato en esta red distribuida), es de vital importancia mantenerlo libre de todo tipo de fallos, algo que, en ocasiones, puede llegar a resultar complicado debido a que la mayoría de este navegador está escrito en C++.

En 2014 se propuso cambiar todo el núcleo del navegador dejando de lado C++ a favor de otro lenguaje de programación más seguro y robusto. Aunque entonces esta propuesta pasó a segundo plano y ha sido ignorada durante varios años, ahora parece que los responsables de Tor Browser quieren reforzar por completo el núcleo del navegador para acabar con posibles errores de corrupción de memoria que puedan aparecer y, para ello, deben cambiar el lenguaje de programación del núcleo por otro, siendo los dos principales candidatos Go, el lenguaje de programación de Google y Rust.

Finalmente, parece que el lenguaje favorito será Rust. Este es un lenguaje de programación creado por Mozilla para ofrecer a los desarrolladores una alternativa a C++ mucho más segura que ayude a los desarrolladores a evitar cometer fallos de corrupción de memoria en el código.

Tor Browser 6.0.6

Firefox cada vez está más escrito en Rust, y Tor Browser es Firefox

Aunque Go también era una excelente alternativa, finalmente los responsables del proyecto Tor han decidido dar el salto a Rust, principalmente, porque Firefox cada vez tiene más partes de código escritas en Rust y, al estar basado principalmente en Firefox, es mucho más cómodo adaptar el navegador a este navegador en vez de a otro.

En verano del año pasado, Mozilla empezó a enviar a los usuarios los primeros componentes del navegador escritos ya en este lenguaje de programación, y los resultados fueron más que satisfactorios. Por ello, poco a poco se han ido convirtiendo más componentes de manera que, a medida que pase el tiempo, cada vez mayor porcentaje de Firefox pase a este nuevo lenguaje de programación.

Aunque el proceso de cambio de lenguaje es largo (los desarrolladores de Tor Browser deben familiarizarse con este lenguaje), poco a poco se van a ir migrando más partes del código de este navegador al nuevo lenguaje de programación, siguiendo un proceso como el siguiente:

  • Definir los elementos que se van a convertir de C++ a Rust en orden de prioridad.
  • Habilitar el uso opcional de la API escrita en Rust para los usuarios que quieran.
  • Aprender de proyectos similares.
  • Añadir herramientas de conversión y depuración para Rust.

Desde luego era necesario dar el salto a un lenguaje de programación más moderno y seguro que C, donde el más mínimo fallo al programar podía tener repercusiones reales en los usuarios, especialmente cuando hablamos de un software tan crítico y, sobre todo, atacado por piratas informáticos y organizaciones gubernamentales como este navegador.

Por el momento aún tendremos que esperar para poder probar este navegador web, aunque todo va por el buen camino y, sin duda, dará lugar a un navegador más seguro y robusto, tal como debería ser.

Fuente: https://www.redeszone.net/