Volver al blog
Explicaciones·16 min de lectura

WireGuard vs OpenVPN — qué cambió realmente con el cambio de protocolo

OpenVPN ha sido el protocolo VPN de código abierto por defecto desde 2001. WireGuard se lanzó en 2016 y lo ha ido reemplazando silenciosamente en todos los ámbitos: Linux lo integró en su núcleo, todos los principales proveedores de VPN lo ofrecen, y la comunidad académica de seguridad le dio su visto bueno. Esto es lo que cambió, lo que no cambió y dónde OpenVPN sigue llevando ventaja.

Por Casper's Cloak Security Team

La versión corta: OpenVPN funciona. Ha sido auditado, desplegado y sometido a pruebas de estrés durante más de dos décadas. WireGuard hace el mismo trabajo —túnel cifrado y autenticado entre dos extremos— con una base de código más pequeña, primitivas criptográficas modernas y un rendimiento significativamente mejor en dispositivos móviles. Para la gran mayoría de los casos de uso de consumidores y la mayoría de los empresariales, WireGuard es la mejor opción de ingeniería en 2026. OpenVPN sigue ganando en escenarios específicos y concretos: redes restrictivas donde el tráfico en modo TCP debe parecerse a HTTPS, integraciones de PKI basadas en certificados y entornos con un largo historial de cumplimiento que todavía no ha certificado WireGuard. El resto de este artículo explica los detalles técnicos detrás de ese resumen.

Qué es cada protocolo

OpenVPN, lanzado en 2001 por James Yonan, es un protocolo VPN basado en SSL/TLS. Se ejecuta en espacio de usuario en la mayoría de las plataformas. Utiliza la biblioteca OpenSSL o mbedTLS para la criptografía. Su canal de datos puede usar cualquier cifrado compatible con OpenSSL —AES-256-GCM es el predeterminado moderno. Su canal de control usa TLS, lo que significa que puede aprovechar todo el ecosistema de certificados X.509 para la autenticación. Admite tanto UDP (el predeterminado, menor sobrecarga) como TCP (más lento, pero funciona en cortafuegos restrictivos). El modelo de configuración es rico y flexible: se pueden configurar rutas, DNS, asignación dinámica de IP, políticas push y docenas de otros parámetros.

WireGuard, diseñado por Jason Donenfeld y lanzado en 2016, es un diseño mucho más pequeño y con más criterio. Las primitivas criptográficas son fijas: no hay negociación ni lista de conjuntos de cifrado. El protocolo se ejecuta en espacio de kernel en Linux, macOS y Windows (y en una implementación en espacio de usuario en iOS). Solo admite UDP —sin modo de reserva TCP. La autenticación es únicamente mediante pares de claves pública/privada estáticas: sin ecosistema de certificados, sin usuario y contraseña, sin PKI. El modelo de configuración es mínimo: una lista de pares, cada uno con una clave pública y un rango de IP permitido. La simplicidad es el objetivo.

La simplificación no es «eliminar funciones por capricho». Es un intercambio deliberado: renunciar a la flexibilidad del espacio de configuración completo de OpenVPN a cambio de una superficie de ataque mucho menor, una base de código mucho más reducida y un rendimiento significativamente mayor. El artículo original de WireGuard lo deja claro: el diseño consiste en hacer una sola cosa bien, no en ser una navaja suiza.

Tamaño del código y superficie de auditoría

Esta es la diferencia más citada y más subestimada. La implementación de referencia de WireGuard tiene aproximadamente 4.000 líneas de código. La base de código de OpenVPN supera con creces las 100.000 líneas, más todo OpenSSL, que en sí mismo tiene unas 500.000 líneas de código. La superficie de auditoría —la cantidad de código que hay que revisar para tener la certeza de que no existen vulnerabilidades— difiere en dos órdenes de magnitud.

Esto importa porque las vulnerabilidades de seguridad reales en los protocolos VPN han provenido históricamente de errores de implementación, no de fallos en el diseño del protocolo. El error Heartbleed de 2014 en OpenSSL afectó a todos los despliegues de OpenVPN. Los ataques Lucky Thirteen y de oracle de relleno CBC afectaron a la capa TLS en la que OpenVPN se basa. Ninguno de estos fue un error del protocolo OpenVPN como tal, sino vulnerabilidades en las capas subyacentes. Un protocolo con una implementación de 4.000 líneas tiene dramáticamente menos lugares donde puedan ocultarse esos errores.

Esta no es una ventaja hipotética. Los responsables de mantenimiento del kernel de Linux —notoriamente escépticos a la hora de incorporar código nuevo— aceptaron WireGuard en el kernel principal en 2020, en parte porque la base de código era lo suficientemente pequeña como para ser revisada de principio a fin. Linus Torvalds lo describió públicamente como «una obra de arte» comparado con otras implementaciones de VPN. OpenVPN nunca ha sido incorporado al kernel porque su complejidad lo hace inviable.

Primitivas criptográficas

OpenVPN es ágil en cuanto a cifrado: se configuran los algoritmos de cifrado, MAC e intercambio de claves que utiliza, eligiendo entre lo que OpenSSL admite. Los valores predeterminados modernos son AES-256-GCM para los datos, SHA-256 para el HMAC y RSA o ECDSA para la autenticación basada en certificados. Esta agilidad fue una ventaja históricamente: cuando se descubría que un algoritmo era débil, se podía sustituir sin cambiar el protocolo. También es una desventaja: la mayoría de las vulnerabilidades de TLS durante la última década han estado relacionadas con la lógica de negociación (ataques de degradación, manipulación de conjuntos de cifrado, apretones de manos de reserva) más que con las propias primitivas.

WireGuard fija sus primitivas. Usa ChaCha20 para el cifrado simétrico, Poly1305 para la autenticación (combinados como ChaCha20-Poly1305 AEAD), Curve25519 para el intercambio de claves de Diffie-Hellman de curva elíptica, BLAKE2s para el hash y HKDF para la derivación de claves. Ninguna de ellas puede negociarse. Si se encuentra una vulnerabilidad en alguna, se incrementa la versión del protocolo: no existe una ruta de degradación en banda que un atacante pueda explotar. La elección de las primitivas está respaldada por la criptoanálisis moderna: ChaCha20 es más eficiente que AES en dispositivos sin aceleración hardware de AES (la mayoría de los teléfonos ARM más antiguos), Curve25519 es la curva elíptica más auditada en uso, y BLAKE2s es más rápido que SHA-256 con la misma seguridad.

El compromiso: si alguna de las primitivas elegidas por WireGuard se rompe, todos los despliegues deben actualizarse de forma sincronizada. Con la agilidad de cifrado de OpenVPN, cada servidor puede moverse a su propio ritmo. La apuesta de WireGuard es que las primitivas elegidas son lo suficientemente robustas como para que esto no sea necesario en la práctica durante muchos años. Hasta ahora ha sido así; si seguirá siéndolo depende de los avances en criptoanálisis que nadie puede predecir.

Modelo de conexión — sin estado vs con estado

OpenVPN mantiene una sesión con estado: hay un apretón de manos al conectarse, la conexión persiste y la desconexión es un evento deliberado. El servidor registra el estado por cliente, incluidas las claves de sesión negociadas, los números de secuencia actuales y la IP virtual asignada. Si el servidor se reinicia o la conexión se interrumpe, la sesión debe restablecerse con un apretón de manos completo.

WireGuard es conceptualmente sin estado desde la perspectiva de red. Cada par se identifica por su clave pública, no por un ID de sesión. No hay «conexión» en el sentido tradicional: los paquetes entre pares se autentican contra la clave pública conocida o no. La rotación de claves ocurre cada dos minutos (o cuando se supera un recuento de bytes configurable), pero no requiere un nuevo apretón de manos desde la perspectiva del usuario. Si un servidor se reinicia, el siguiente paquete del cliente desencadena un apretón de manos automático; el usuario no experimenta ninguna interrupción más allá del tiempo de ida y vuelta de un apretón de manos.

Este modelo sin estado es la razón por la que WireGuard gestiona tan bien la itinerancia de red. En un teléfono que cambia de Wi-Fi a datos móviles, OpenVPN normalmente requiere un nuevo apretón de manos completo (que a menudo tarda 5-10 segundos y a veces falla). WireGuard sigue funcionando: el nuevo paquete desde la nueva IP se autentica correctamente, el servidor actualiza su mapeo de extremo para esa clave pública a la nueva IP y el túnel continúa. Desde la perspectiva del usuario, el cambio de red es invisible.

Rendimiento — los números que realmente importan

Los benchmarks muestran de forma consistente que WireGuard supera significativamente a OpenVPN en rendimiento, latencia y uso de CPU. Los números varían según el hardware y la configuración, pero el patrón general es consistente. En un portátil moderno típico sobre Ethernet gigabit, WireGuard alcanza un rendimiento cercano al máximo de la línea (900+ Mbps); OpenVPN con AES-256-GCM y OpenSSL moderno suele alcanzar 200-400 Mbps debido a las copias en espacio de usuario y la sobrecarga del encuadre TLS. En teléfonos ARM sin aceleración hardware de AES, la ventaja de WireGuard es mayor: ChaCha20 es mucho más rápido que AES por software, y la implementación en el kernel evita los cambios de contexto.

Las comparaciones de latencia son menos dramáticas pero favorecen consistentemente a WireGuard. Un túnel WireGuard típico añade 1-3ms de sobrecarga por ida y vuelta en una red rápida; OpenVPN añade 5-15ms según el cifrado y la plataforma. Para uso interactivo —juegos, videollamadas, sesiones de terminal— la diferencia se nota. Para transferencias masivas es secundaria frente al rendimiento.

Impacto en la batería del móvil

En los smartphones, la brecha de rendimiento se manifiesta como una brecha de batería. Se combinan dos efectos: WireGuard procesa la misma cantidad de tráfico de red con menos ciclos de CPU (porque el protocolo es más sencillo y la criptografía es más rápida en ARM), y WireGuard genera menos sobrecarga de red por byte útil transmitido (menos paquetes de mantenimiento de conexión, encuadre más pequeño, sin renegociaciones periódicas). Mediciones independientes han mostrado repetidamente que WireGuard consume aproximadamente un 20-40% menos de batería en cargas de trabajo equivalentes en iOS y Android.

El comportamiento de itinerancia sin renegociación también ayuda a la batería. Con OpenVPN, cada cambio de red puede provocar un período de retransmisiones fallidas mientras el cliente detecta que la conexión está muerta e inicia la reconexión; ese comportamiento de reintento mantiene la radio activa más tiempo del necesario. WireGuard lo evita por completo.

Comportamiento de itinerancia — cambiar de red a mitad de sesión

Esta es la mejora más visible para el usuario que ofrece WireGuard. Imagina que estás en una videollamada con la VPN conectada y tu teléfono pasa de Wi-Fi a datos móviles al salir de casa:

  • Con OpenVPN — la red móvil asigna a tu teléfono una nueva IP. Los paquetes salientes del cliente OpenVPN ahora provienen de esta nueva IP, pero el estado del servidor para tu sesión espera paquetes de la antigua IP de Wi-Fi. Los paquetes son descartados. Tras unos segundos de silencio, la lógica de mantenimiento de conexión de OpenVPN detecta el fallo y desencadena una reconexión: apretón de manos TLS completo, intercambio de claves, todo. Tu llamada se corta; te reconectas.
  • Con WireGuard — el mismo paquete desde la nueva IP llega al servidor, se autentica contra la clave pública conocida y es aceptado. El servidor actualiza de forma transparente su mapeo de extremo para esa clave pública a la nueva IP. La siguiente respuesta va a la nueva IP. La llamada no se corta. El usuario no nota nada.

Esta es la ventaja en experiencia de usuario que llevó al sector de las VPN de consumo a adoptar WireGuard. Los tickets de soporte sobre «la VPN se cae cuando paso de Wi-Fi a datos móviles» simplemente dejan de llegar una vez que un proveedor migra de OpenVPN a WireGuard.

Dónde OpenVPN sigue ganando

OpenVPN no está muerto, y hay escenarios específicos donde sigue siendo la mejor opción en 2026:

Modo TCP para redes restrictivas

WireGuard solo usa UDP. Algunas redes —cortafuegos corporativos, Wi-Fi de hoteles, ISP restrictivos en algunos países— bloquean o limitan drásticamente el tráfico UDP que no está en los puertos estándar de DNS/QUIC. El modo TCP de OpenVPN (normalmente en el puerto 443) puede atravesar estas redes haciendo que el tráfico VPN parezca HTTPS ordinario. WireGuard no tiene modo TCP nativo; o bien se necesita una capa adicional de ofuscación encima (Cloak, Shadowsocks, AmneziaWG) o hay que recurrir a OpenVPN.

Autenticación basada en certificados con PKI existente

OpenVPN se integra de forma limpia con la infraestructura de certificados X.509. Las organizaciones que ya cuentan con una PKI para otros fines (tarjetas inteligentes, S/MIME, TLS interno) pueden extenderla a la autenticación VPN sin montar nueva infraestructura. WireGuard usa claves estáticas, lo cual es operativamente más sencillo pero no se integra con los flujos de trabajo de PKI. Para organizaciones con una fuerte inversión en PKI, OpenVPN sigue siendo la opción natural.

Mayor historial de auditoría

OpenVPN lleva más de dos décadas en producción. Ha sido auditado múltiples veces por múltiples empresas independientes. El historial de WireGuard es más corto: ocho años de despliegue en producción y un número menor de auditorías formales. Ambos tienen un historial de seguridad limpio; el de OpenVPN simplemente es más largo. Para marcos de cumplimiento que requieren un largo historial de despliegue (algunos contextos FedRAMP y FIPS), OpenVPN puede seguir siendo la única opción.

Asignación dinámica de IP y envío de políticas más completas

El servidor OpenVPN puede asignar dinámicamente IPs virtuales, enviar configuraciones DNS, rutas y otras configuraciones a los clientes durante el apretón de manos. La configuración de WireGuard es mayormente estática: las IP permitidas de cada par se configuran de antemano. Para grandes despliegues empresariales con una alta rotación de extremos, el modelo dinámico de OpenVPN es operativamente más sencillo.

Comparación propiedad por propiedad

Propiedad WireGuard OpenVPN
Lanzamiento 2016 2001
Tamaño de la base de código (implementación de referencia) ~4.000 líneas ~100.000+ líneas (más OpenSSL ~500.000)
Primitivas criptográficas Fijas: ChaCha20-Poly1305, Curve25519, BLAKE2s Negociables mediante OpenSSL; predeterminado AES-256-GCM + SHA-256 + RSA/ECDSA
Puerto predeterminado 51820 UDP (configurable) 1194 UDP, 443 TCP (configurable)
Compatibilidad TCP No (solo UDP) Sí (modo TCP disponible)
Autenticación Pares de claves públicas estáticas Certificados X.509, claves precompartidas, usuario y contraseña
Integración en el kernel de Linux En el kernel principal desde la versión 5.6 (2020) Solo en espacio de usuario
Eficiencia de batería en móvil ~20-40% menos consumo en pruebas independientes Mayor consumo base; las renegociaciones periódicas añaden coste
Itinerancia (Wi-Fi a datos móviles) Transparente; no requiere nueva negociación Desencadena reconexión; interrupción visible de la sesión
Historial de auditoría ~8 años en producción; múltiples auditorías formales ~24 años en producción; extenso historial de auditorías
Resistencia a la censura (sin capas adicionales) Menor (patrón de apretón de manos distintivo) Mayor con modo TCP/443

Por qué la mayoría de los servicios modernos usa WireGuard

Todas las principales VPN de consumo —Mullvad, ProtonVPN, NordVPN, IVPN, Surfshark, ExpressVPN, Casper's Cloak— ofrecen WireGuard, y la mayoría lo ha convertido en el predeterminado. Los motivos son consistentes entre proveedores: es más rápido, consume menos batería, soporta la itinerancia de red con elegancia y es más fácil de auditar. El coste de soporte al cliente cae porque se producen menos desconexiones. Los costes del servidor disminuyen porque cada servidor puede gestionar más conexiones simultáneas (menor CPU por conexión). La experiencia del usuario mejora de forma apreciable en móvil.

La transición también ha sido validada por adoptantes institucionales serios. Mullvad explicó públicamente su migración completa a WireGuard y los motivos de ingeniería detrás de ella. Los servicios Tailscale y Cloudflare WARP están construidos sobre protocolos derivados de WireGuard. Linux lo integró en su núcleo. macOS e iOS incluyen soporte nativo. Existe un sólido consenso en el sector de que WireGuard es la base correcta para los nuevos despliegues de VPN, con OpenVPN mantenido para escenarios de compatibilidad específicos. Para el contexto más amplio sobre por qué importa una VPN de pago que use estos protocolos correctamente, nuestra guía de VPN gratuita vs de pago cubre el aspecto de la confianza y la financiación, y nuestra comparativa con ProtonVPN analiza cómo difieren los proveedores específicos en su implementación.

Qué usa Casper y por qué

Casper's Cloak ejecuta WireGuard por defecto en iOS, Android y Mac. Los motivos se corresponden directamente con la comparativa anterior: el menor consumo de batería importa en los dispositivos que nuestros usuarios llevan consigo; la itinerancia sin corte importa porque la mayoría de nuestros clientes cambian de red a diario; la menor superficie de código se alinea con nuestro modelo de amenazas (la defensa en la capa de red no debería introducir superficie adicional de ejecución de código); y las primitivas criptográficas son las mejores de su clase en la actualidad.

Combinamos WireGuard con nuestras propias capas de filtrado y detección: escudo de amenazas en el resolvedor DNS, puntuación de amenazas basada en ML para nuevos dominios y filtrado de rastreadores en la ruta de respuesta. El túnel es el transporte; el filtrado activo es lo que hace que la conexión realice un trabajo útil más allá de simplemente cambiar tu IP. Para la referencia técnica canónica sobre WireGuard en sí, el artículo original y la documentación en wireguard.com/papers siguen siendo las mejores fuentes primarias.

Conclusión

WireGuard es el predeterminado correcto en 2026 para las VPN de consumo, los despliegues empresariales modernos y la mayoría de los túneles entre servicios en la nube. Es más rápido, más eficiente en batería, más fácil de auditar y significativamente mejor gestionando la itinerancia de red en móvil. OpenVPN no está obsoleto y sigue siendo la respuesta correcta para redes restrictivas donde se necesita el modo TCP, organizaciones con flujos de trabajo PKI establecidos y entornos de cumplimiento que requieren su largo historial de auditoría.

Para un usuario típico que elige una VPN de consumo: elige un proveedor que ofrezca WireGuard, úsalo como predeterminado y conserva OpenVPN como alternativa para las pocas redes que no dejen pasar el tráfico UDP de WireGuard. Las mejoras de rendimiento y batería son reales, el modelo de seguridad es al menos igual de sólido y la experiencia de usuario —especialmente en móvil— es notablemente mejor. La transición que el sector ya ha completado es la correcta, y no muestra señales de invertirse.

Revisado por Casper's Cloak Security Team · Última actualización

Túnel WireGuard, filtrado activo, sin fugas DNS

Casper's Cloak ejecuta WireGuard por defecto en iOS, Android y Mac —con filtrado de escudo de amenazas, DNS cifrado y protección siempre activa aplicada por el sistema operativo. Protocolo moderno, refuerzo moderno.