La computación cuántica ya no es ciencia ficción. En 2024, Google presentó Willow, su chip de 105 qubits con corrección de errores. IBM tiene Condor con más de 1.000 qubits. China ha demostrado supremacía cuántica con Jiuzhang. La pregunta ya no es si los ordenadores cuánticos romperán el cifrado actual, sino cuándo. Y la respuesta, según el NIST, podría ser antes de 2030.
El problema: RSA y AES tienen fecha de caducidad
El cifrado que protege hoy el 99% de las comunicaciones web — RSA-2048, ECDSA, Diffie-Hellman — se basa en problemas matemáticos que un ordenador clásico tardaría miles de años en resolver. Factorizar números primos enormes o calcular logaritmos discretos es computacionalmente inviable con la tecnología actual.
Pero un ordenador cuántico con suficientes qubits estables puede ejecutar el algoritmo de Shor, que resuelve estos problemas en tiempo polinómico. En la práctica, esto significa que RSA-2048 podría romperse en horas. ECDSA-256, que protege tu certificado TLS, en minutos.
El ataque 'harvest now, decrypt later' ya está en marcha. Actores estatales están almacenando tráfico cifrado hoy para descifrarlo cuando tengan acceso a ordenadores cuánticos. Si tus datos tienen valor a largo plazo, ya llegas tarde. — Informe ENISA 2025
Qué es el cifrado post-cuántico (PQC)
El cifrado post-cuántico utiliza problemas matemáticos que ni los ordenadores cuánticos pueden resolver eficientemente. En agosto de 2024, el NIST publicó los primeros tres estándares PQC finales: FIPS 203 (ML-KEM, antes Kyber), FIPS 204 (ML-DSA, antes Dilithium) y FIPS 205 (SLH-DSA, antes SPHINCS+).
Estos algoritmos se basan en problemas de retículos (lattice-based cryptography), específicamente en el problema Module Learning With Errors (MLWE). A diferencia de RSA, no existe ningún algoritmo cuántico conocido que pueda resolver MLWE en tiempo polinómico.
ML-KEM-768: el estándar que ya puedes usar
ML-KEM-768 (antes CRYSTALS-Kyber) es un mecanismo de encapsulación de claves (KEM). No cifra datos directamente, sino que permite a dos partes acordar una clave compartida de forma segura, incluso frente a un adversario cuántico. Con esa clave compartida, se cifran los datos con AES-256-GCM o ChaCha20-Poly1305.
Los tamaños de clave son mayores que RSA pero manejables: la clave pública de ML-KEM-768 ocupa 1.184 bytes, la clave privada 2.400 bytes, y el texto cifrado encapsulado 1.088 bytes. Estas cifras son perfectamente viables para comunicaciones web.
Cifrado multicapa: la defensa en profundidad
Confiar en un solo algoritmo — por muy robusto que sea — siempre es un riesgo. El enfoque correcto es el cifrado multicapa (defense in depth), donde los datos atraviesan múltiples capas de cifrado independientes. Si una capa se compromete, las demás siguen protegiendo.
Cuántica, el motor de cifrado de PWR.es, implementa exactamente este enfoque con 6 capas independientes:
- Capa 1 — AES-256-GCM: cifrado simétrico estándar con autenticación integrada (AEAD)
- Capa 2 — ChaCha20-Poly1305: cifrado de flujo con autenticación, resistente a ataques de canal lateral en software
- Capa 3 — XChaCha20-Poly1305 con clave derivada: nonce extendido de 192 bits, derivación HKDF independiente
- Capa 4 — AES-256-CBC + HMAC-SHA512: capa clásica con MAC separado para defensa en profundidad
- Capa 5 — XOR con SHA3-512 iterativo: ofuscación adicional con 50.000 iteraciones de hashing
- Capa 6 — ML-KEM-768 (Kyber): encapsulación post-cuántica, protección contra adversarios con acceso a computación cuántica
Implementación práctica en PHP
Una de las barreras de adopción del PQC es la complejidad de implementación. La mayoría de soluciones requieren compilar librerías C, configurar extensiones PHP o depender de servicios cloud externos. Cuántica resuelve esto con múltiples arquitecturas de despliegue:
<?php
// Cifrar datos con protección post-cuántica
require_once 'cuantica.php';
$datos = 'Información confidencial del paciente';
$clave = 'mi-clave-segura-de-al-menos-32-chars';
// Cifrado con 6 capas (PQC incluido por defecto)
$cifrado = cuantica_cifrar($datos, $clave);
// Descifrado — misma interfaz simple
$original = cuantica_descifrar($cifrado, $clave);
// Verificar integridad
echo $original === $datos ? 'OK' : 'Error';Con cuatro líneas de PHP tienes cifrado de 6 capas con protección post-cuántica. Sin Composer, sin extensiones adicionales, sin dependencias externas. La librería liboqs se incluye como binario precompilado y se carga vía FFI.
Cumplimiento normativo: el ENS ya lo exige
El Real Decreto 311/2022 (Esquema Nacional de Seguridad) y las guías CCN-STIC establecen que los sistemas de categoría ALTA deben implementar medidas de cifrado actualizadas. La guía CCN-STIC-221 sobre criptografía ya menciona la necesidad de prepararse para la amenaza cuántica.
Para las administraciones públicas españolas y sus proveedores, implementar PQC no es una opción futurista: es una necesidad regulatoria inminente. El reglamento europeo eIDAS 2.0, que entra en vigor progresivamente hasta 2027, incluye requisitos específicos de resistencia cuántica para firma electrónica cualificada.
Cuándo migrar: la respuesta es ahora
La migración a PQC no es un interruptor que se activa de golpe. Es un proceso gradual que debe empezar cuanto antes. El enfoque recomendado es la criptografía híbrida: combinar algoritmos clásicos (AES, RSA) con algoritmos post-cuánticos (ML-KEM, ML-DSA). Así mantienes compatibilidad con sistemas actuales mientras añades protección futura.
Cuántica implementa este enfoque híbrido de serie. Las 5 primeras capas usan criptografía clásica probada, y la capa 6 añade PQC. Si mañana se descubriera una vulnerabilidad en ML-KEM (improbable pero posible), las 5 capas clásicas siguen protegiendo tus datos. Si se rompe AES con un ordenador cuántico, la capa PQC sigue intacta.
La transición al cifrado post-cuántico no es una cuestión técnica compleja si usas las herramientas adecuadas. Con Cuántica, la migración es transparente: un require_once y dos funciones. El resto — selección de algoritmos, gestión de claves, capas de protección — ya está resuelto.