
El campo de la computación cuántica avanza rápidamente, convirtiendo en posibles problemas que antes eran computacionalmente inviables. Sin embargo, al igual que con cualquier tecnología disruptiva, la computación cuántica introduce nuevas preocupaciones de seguridad. Una de ellas es la amenaza de los ataques por canales laterales, que explotan la información filtrada durante la computación en lugar de atacar directamente debilidades matemáticas o criptográficas.
Este artículo explora a fondo un área de investigación pionera: los Ataques por Canales Laterales de Potencia en Computadoras Cuánticas, basados en datos reales a nivel de pulsos disponibles mediante plataformas de computación cuántica en la nube (arXiv:2304.03315). Desglosaremos cómo funcionan estos ataques, presentaremos cinco nuevos tipos de ataques descubiertos en 2023, evaluaremos sus implicaciones y recorreremos contramedidas, desde defensas físicas hasta estrategias a nivel de protocolo. La discusión abarca desde conceptos fundamentales hasta técnicas prácticas avanzadas, incluyendo casos de uso reales y ejemplos de código para escanear, parsear y analizar datos de bajo nivel.
Tanto si eres nuevo en la computación cuántica, un profesional avanzado de ciberseguridad, como si simplemente te intriga la intersección entre cuántica y criptografía, esta guía pretende ofrecer un recurso completo y optimizado para SEO sobre uno de los temas más candentes en ciberseguridad.
Un ataque por canal lateral (SCA, por sus siglas en inglés) es un exploit de seguridad que aprovecha características de implementación de un sistema de cómputo, en lugar de debilidades en sus algoritmos. Los SCAs extraen información sensible (por ejemplo, claves criptográficas) observando fenómenos físicos tales como:
Estos ataques han sido especialmente problemáticos en hardware como tarjetas inteligentes o sistemas embebidos, pero ahora también amenazan el hardware cuántico de vanguardia.
Las computadoras cuánticas se basan en principios de la mecánica cuántica, manipulando bits cuánticos (qubits) para realizar operaciones en estados de superposición o entrelazados, lo que permite aceleraciones exponenciales en tareas específicas (por ejemplo, factorización de grandes números, simulación de sistemas cuánticos). Existen varias arquitecturas (qubits superconductores, iones atrapados, etc.) y hoy día las computadoras cuánticas pueden accederse mediante plataformas en la nube como IBM Quantum Experience y Amazon Braket.
El proceso de cómputo implica:
Estos pulsos de control manipulan físicamente los qubits y contienen información detallada sobre la secuencia de operaciones cuánticas.
Los SCAs se estudiaron primero en contextos clásicos (Kocher, 1996), a menudo dirigidos a tarjetas inteligentes que ejecutaban algoritmos de cifrado:
Históricamente, estos métodos han permitido romper implementaciones de criptosistemas como DES/AES.
Los dispositivos cuánticos, aunque fundamentalmente distintos en su cómputo, también operan usando pulsos de control electrónicos o láser. La investigación en arXiv:2304.03315 demuestra una amenaza clara: la información sobre la computación cuántica puede filtrarse a través de canales laterales observables en los pulsos de control de bajo nivel.
Según Pandey et al., 2023, se demostraron cinco ataques novedosos utilizando datos disponibles en servicios de computación cuántica en línea:
Plataformas líderes, incluido Qiskit de IBM, permiten a los desarrolladores descargar horarios de pulsos generados para un circuito cuántico dado. Ejemplo de código para obtenerlos:
from qiskit import IBMQ, transpile
from qiskit.providers.aer import PulseSimulator
provider = IBMQ.load_account()
backend = provider.get_backend('ibmq_armonk')
circuit = ... # tu QuantumCircuit aquí
transpiled = transpile(circuit, backend)
schedule = transpiled.qobj().to_instruction_schedule_map()
Los investigadores crean distintos circuitos cuánticos con varias combinaciones de puertas y los ejecutan, extrayendo los horarios de pulsos cada vez.
Paso a paso:
Ejemplo: descargar y parsear un archivo JSON de horario de pulsos.
# Descargar todos los archivos de datos de pulsos desde el directorio del experimento
scp user@quantum.cloud:/results/experiment_*/pulse_data.json ./pulsos/
# Listar los archivos descargados
ls ./pulsos/*.json
import json
def parse_pulse_schedule(file_path):
with open(file_path, 'r') as f:
schedule_data = json.load(f)
for entry in schedule_data['instructions']:
print(f"CANAL: {entry['ch']}\tTIEMPO: {entry['t0']}\tPULSO: {entry['pulse']}")
# Añade más análisis (por ejemplo, amplitud, duración, inferencia de tipo de puerta)
parse_pulse_schedule('./pulsos/pulse_data.json')
Luego los investigadores calculan similitudes de señal (por ejemplo, usando distancia euclidiana o “dynamic time warping”) para vincular los datos de pulsos observados con el circuito o secuencia de puertas subyacente.
Imagina que una organización implementa un algoritmo cuántico propietario en una computadora cuántica pública en la nube. Un atacante con acceso a los registros de pulsos (ya sea un interno malicioso o por aislamiento insuficiente entre inquilinos) puede reconstruir el algoritmo que se está ejecutando, lo que conduce a:
Algunos protocolos cuánticos codifican secretos clásicos (como claves criptográficas) en estados de qubit. Si la implementación cuántica es sensible a la entrada, los atacantes que analizan trazas de potencia pueden:
Supongamos que los participantes ejecutan BB84. Si los pulsos de control difieren para distintas bases de preparación, un atacante que espionara los canales de potencia podría aprender qué bases se están preparando, invalidando las garantías teóricas del protocolo.
Tras comprender la superficie de ataque, el siguiente desafío es la mitigación. Las defensas deben abarcar desde la ingeniería de hardware hasta protocolos criptográficos robustos.
Las computadoras cuánticas amenazan la criptografía asimétrica (RSA, ECC) y, en menor medida, la simétrica mediante algoritmos como los de Shor y Grover. Los ataques por canal lateral proporcionan una superficie de ataque ortogonal, relevante ahora, incluso antes de que la criptografía cuántica a gran escala sea práctica.
El proyecto de estandarización de NIST sobre Criptografía Post-Cuántica se centra en las matemáticas, pero los despliegues prácticos enfrentan desafíos de canal lateral. Incluso un esquema matemáticamente robusto puede fracasar si su implementación cuántica o post-cuántica filtra secretos mediante potencia, plástico o canales fotónicos.
Ya sea para investigación, pruebas de penetración o evaluación de hardware, el análisis práctico es crucial. A continuación se presentan enfoques prácticos para trabajar con datos de canales laterales cuánticos.
Supongamos que necesitas comprobar regularmente cambios en los horarios de pulsos generados por varios circuitos cuánticos.
# Listar archivos YAML/JSON de horarios de pulsos para un lote de experimentos
ls /quantum_results/pulse_logs/*.json
# Escanear pulsos de alta amplitud que indiquen posibles operaciones sensibles
for file in /quantum_results/pulse_logs/*.json; do
echo "Revisando $file"
grep "amplitude" "$file" | awk -F ':' '{ if($2 > 0.9) print $0; }'
done
Descarga los datos de pulsos y usa Python para parsearlos y realizar análisis más sofisticados.
import glob
import json
def extract_high_amplitude(file_path, threshold=0.9):
with open(file_path, 'r') as f:
data = json.load(f)
for inst in data.get('instructions', []):
pulse = inst.get('pulse', {})
amplitude = pulse.get('amplitude', 0)
if amplitude > threshold:
print(f"Archivo: {file_path} -- Amplitud: {amplitude} en Canal: {inst.get('ch')} en t={inst.get('t0')}")
# Procesar en lote todos los registros de pulsos
for file_path in glob.glob('/quantum_results/pulse_logs/*.json'):
extract_high_amplitude(file_path)
Para similitud de secuencias (p. ej., emparejar “huellas” de horarios de pulsos):
import numpy as np
from scipy.spatial.distance import euclidean
# Supongamos que 'signal1' y 'signal2' son arrays numpy de amplitudes de pulsos
distance = euclidean(signal1, signal2)
print(f"Similitud de señal: {1/(1+distance)}")
Mientras las computadoras cuánticas prometen revolucionar la criptografía, también introducen nuevas y sutiles vulnerabilidades por canales laterales accesibles incluso en los ecosistemas en la nube actuales. Como se ha demostrado, los atacantes pueden inferir no solo algoritmos de alto nivel, sino en algunos casos entradas sensibles y secretos criptográficos, usando datos de potencia y pulsos como canal lateral.
Una defensa integral requerirá acción coordinada:
A medida que la integración cuántica se profundice en sectores como gobierno, finanzas y salud, entender y mitigar la fuga por canales laterales será fundamental, tanto como prioridad de investigación como necesidad operativa de seguridad.
Pandey, A., Chang, C. N., Karalekas, P. J., Krishnamurthy, D., & Kesidis, G. (2023). “Exploration of Quantum Computer Power Side-Channels.”
arXiv:2304.03315
Saab Chartouni, H. (2025). "Quantum and side-channel attacks."
Tesis HAL
Secure-IC. "Mitigating Side-Channel Attacks in Post Quantum ... - Secure-IC."
Artículo Secure-IC
Documentación de Qiskit: Horarios de Pulsos
Qiskit Pulse
Proyecto de Criptografía Post-Cuántica de NIST
NIST PQC
Broadbent, Fitzsimons, & Kashefi. "Universal Blind Quantum Computation." (2009)
arXiv:0807.4154
Se anima a los lectores interesados a profundizar en los artículos originales y seguir la investigación en curso sobre criptografía cuántica segura y consciente de la implementación. ¡Suscríbete para recibir actualizaciones sobre avances en ciberseguridad cuántica!
Si encontraste este contenido valioso, imagina lo que podrías lograr con nuestro programa de capacitación élite integral de 47 semanas. Únete a más de 1.200 estudiantes que han transformado sus carreras con las técnicas de la Unidad 8200.