Durante los últimos meses, Proton VPN ha estado trabajando en Proton protocols, una nueva base de código de protocolo VPN para el cliente. Conocida internamente con el nombre en clave de ProTUN, esta nueva arquitectura de código está escrita en Rust. Aunque bifurcamos el código de criptografía del proyecto BoringTun(ventana nueva) de Cloudflare, la arquitectura completamente rediseñada es de Proton.

Por qué necesitamos un nuevo núcleo de VPN

WireGuard® es un protocolo VPN de última generación que es tan seguro como OpenVPN, pero más rápido y potente. Por eso estamos empezando a eliminar el soporte para OpenVPN de nuestras aplicaciones oficiales, para centrarnos en su lugar en WireGuard.

Sin embargo, nuestras aplicaciones utilizan actualmente la implementación oficial wireguard-go de WireGuard. Y es una gran implementación, con un diseño elegantemente minimalista que la hace rápida, segura y más fácil de auditar que los protocolos VPN tradicionales.

Sin embargo, wireguard-go no se integra bien con los lenguajes que utilizamos de forma nativa para desarrollar Proton VPN en las múltiples plataformas para las que ofrecemos soporte (como Kotlin en Android y Swift en iOS). Esto ralentiza el desarrollo, complica la depuración e introduce problemas de estabilidad.

Proton protocols resuelve estos problemas.

Proton protocols es un nuevo framework de VPN para el cliente basado en WireGuard. Al estar escrito en Rust y diseñado como un núcleo compartido y extensible, ProTUN se puede desplegar de forma coherente en todas las plataformas y adaptar a diferentes entornos de red. Esto nos permitirá diagnosticar problemas más rápido, mejorar la estabilidad e integrar funciones avanzadas directamente en el stack de la VPN.

Lo más importante es que Proton protocols nos da la flexibilidad necesaria para responder rápidamente a la censura y a las interferencias de la red, un ámbito en el que esperamos obtener los mayores beneficios a largo plazo.

Bajo el capó

Cifrado del tráfico con un nuevo núcleo de WireGuard

En el corazón del proyecto Proton protocols se encuentra libpvpnclient, una implementación limpia e independiente del protocolo WireGuard escrita en Rust. Su tarea es sencilla pero fundamental: cifrar tu tráfico de internet y mantener segura tu conexión.

Lo que lo diferencia de wireguard-go es cómo está construido. Mientras que wireguard-go es un simple cliente de WireGuard, libpvpnclient es un framework completamente nuevo sobre el que podemos desarrollar nuevas funciones y características avanzadas.

Y en lugar de estar estrechamente vinculado a un sistema operativo específico, libpvpnclient está diseñado como un núcleo puro e independiente de la plataforma. Esto nos permite reutilizar la misma implementación de alta calidad en todas partes: en ordenadores de sobremesa, dispositivos móviles y más allá. Esta separación marca una gran diferencia entre bastidores. Nos permite:

  • Probar y depurar casos extremos complejos en entornos controlados y reproducibles
  • Implementar mejoras de forma más rápida y coherente en todas las plataformas
  • Experimentar con nuevas técnicas para resistir la censura y el bloqueo del tráfico

Para ti, esto se traduce en actualizaciones más rápidas, menos problemas específicos de cada plataforma y una VPN que se adapta más rápido a medida que cambian las condiciones de la red y los métodos de censura. ProTUN es el nombre de nuestra capa de adaptación para libpvpnclient que adapta la biblioteca basada en Rust a cada sistema operativo para el que ofrecemos soporte.

Funciona mano a mano con LocalAgent. Este es nuestro canal de control propio que nos permite implementar la autenticación basada en certificados, y que también acabamos de optimizar y reescribir en Rust.

Este nuevo núcleo de VPN ya está disponible para probarlo como una función beta (de acceso anticipado) en las siguientes plataformas:

  • Windows
  • Android
  • iOS e iPadOS (que añaden soporte para el Kill Switch avanzado)
  • Aplicación con interfaz gráfica de usuario para Linux (que aporta compatibilidad con nuestro protocolo Stealth resistente a la censura)

Facilitar el acceso a los servidores de Proton VPN

También estamos trabajando en la fase dos de Proton protocols. Con el nombre en clave de muon, se trata de una capa de red flexible que conecta de forma segura nuestras aplicaciones con la API de la VPN de Proton, incluso en situaciones en las que la propia API de Proton está siendo censurada.

Antes de que una VPN pueda proteger tu tráfico, primero tiene que conectarse de forma segura a la API de Proton. Y eso es cada vez más difícil. En algunos países y redes, las conexiones a la API se bloquean o supervisan a nivel de DNS o se identifican inspeccionando los nombres de los servidores (una técnica conocida como espionaje de SNI).

Para solucionar esto, estamos creando muon, una nueva puerta de enlace entre nuestras aplicaciones y la API de Proton. Escrito también en Rust para garantizar la seguridad y el rendimiento, muon gestiona las primeras solicitudes de red que realiza tu aplicación y luego las enruta de forma segura a través del protocolo WireGuard de Proton VPN (a largo plazo, esta funcionalidad sustituirá a nuestra solución anticensura de enrutamiento alternativo(ventana nueva) actual).

En la práctica, esto significa que desde el momento en que abras la aplicación de Proton VPN en un país donde se sabe que el acceso está censurado, tu comunicación con la API de Proton ya estará protegida (incluso antes de que se establezca por completo una conexión VPN a nivel de sistema). And in restrictive countries, your proveedor de servicios de internet ni siquiera sabrá que te estás conectando a las API de Proton.

Esta protección será automática e invisible para ti, lo que significa que es más probable que consigas una conexión activa en países con censura. De hecho, muon es tan útil para burlar la censura que vamos a utilizarlo en todas las aplicaciones de Proton (no solo en la VPN), ofreciéndote protección anticensura integrada en todo nuestro ecosistema desde el primer momento. Lo implementaremos pronto, así que no te pierdas las novedades.

Una base sólida para lo que está por venir

libpvpnclient (con la capa de adaptación de Proton protocols) y muon forman juntos una nueva plataforma que ofrece mucha más flexibilidad a nuestros ingenieros. Esto nos permite experimentar de forma segura con mejoras en la estabilidad de la conexión, el uso de la batería y la resiliencia, y sienta las bases para tecnologías futuras, como técnicas anticensura más potentes y criptografía poscuántica.

Consideramos que se trata de un gran paso adelante para que internet sea más accesible, fiable y privado para todos. Y esto es solo el principio. Nos entusiasma ver a dónde llevará esta nueva base a Proton VPN en 2026 y más allá.

“WireGuard” es una marca registrada(ventana nueva) de Jason A. Donenfeld.