<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Quantum Computing on kenji.blog</title><link>http://kenji.blog/es/tags/quantum-computing/</link><description>Recent content in Quantum Computing on kenji.blog</description><generator>Hugo -- gohugo.io</generator><language>es</language><copyright>kenjinote</copyright><lastBuildDate>Fri, 11 Sep 2026 20:00:00 +0900</lastBuildDate><atom:link href="http://kenji.blog/es/tags/quantum-computing/index.xml" rel="self" type="application/rss+xml"/><item><title>Súper introducción a la programación cuántica usando Qiskit</title><link>http://kenji.blog/es/p/qiskit-quantum-programming-intro/</link><pubDate>Fri, 11 Sep 2026 20:00:00 +0900</pubDate><guid>http://kenji.blog/es/p/qiskit-quantum-programming-intro/</guid><description>&lt;img src="http://kenji.blog/p/qiskit-quantum-programming-intro/img/eyecatch.jpg" alt="Featured image of post Súper introducción a la programación cuántica usando Qiskit" />&lt;h2 id="1-introducción">1. Introducción
&lt;/h2>&lt;p>Las computadoras modernas (computadoras clásicas) han cambiado drásticamente nuestras vidas, apoyando todos los aspectos de la sociedad a través de su alta capacidad de cálculo. Sin embargo, para ciertos problemas específicos (por ejemplo, la factorización de números primos gigantescos, la simulación de estructuras moleculares complejas, problemas de optimización, etc.), se sabe que incluso las supercomputadoras más avanzadas de la actualidad necesitarían más tiempo que la edad del universo.&lt;/p>
&lt;p>Lo que tiene el potencial de romper estos &amp;ldquo;límites de las computadoras clásicas&amp;rdquo; es la &lt;strong>computadora cuántica (Quantum Computer)&lt;/strong>. Al aprovechar las extrañas propiedades de la mecánica cuántica (superposición y entrelazamiento cuántico) como recursos de cálculo, se cree que es posible acelerar drásticamente la resolución de problemas específicos.&lt;/p>
&lt;p>En este artículo, daremos el primer paso en el mundo de la programación cuántica utilizando &lt;strong>Qiskit&lt;/strong>, el framework de computación cuántica de código abierto proporcionado por IBM. Esta es una guía introductoria muy detallada que explica cuidadosamente desde los fundamentos de la física y las matemáticas, hasta el proceso de escribir código real en Python y ejecutar circuitos cuánticos en un simulador.&lt;/p>
&lt;hr>
&lt;h2 id="2-fundamentos-físicos-y-matemáticos-que-sustentan-la-computación-cuántica">2. Fundamentos físicos y matemáticos que sustentan la computación cuántica
&lt;/h2>&lt;p>Para entender la programación cuántica, primero es necesario comprender los conceptos básicos de la mecánica cuántica. Aquí explicaremos los tres pilares importantes: cúbit, superposición y entrelazamiento cuántico.&lt;/p>
&lt;h3 id="21-bit-clásico-y-cúbit-qubit">2.1 Bit clásico y cúbit (Qubit)
&lt;/h3>&lt;p>La unidad de información de una computadora clásica es el &amp;ldquo;bit (Bit)&amp;rdquo;. Un bit siempre toma uno de los dos estados: &lt;code>0&lt;/code> o &lt;code>1&lt;/code>.&lt;/p>
&lt;p>Por otro lado, la unidad mínima de información en una computadora cuántica se llama &lt;strong>cúbit (Qubit: Quantum bit)&lt;/strong>. Los cúbits no solo pueden tomar los estados &lt;code>0&lt;/code> y &lt;code>1&lt;/code>, sino que también pueden &lt;strong>mantener ambos estados simultáneamente&lt;/strong>.&lt;/p>
&lt;p>Matemáticamente, el estado de un cúbit $|\psi\rangle$ se expresa como una combinación lineal (superposición) de los estados base $|0\rangle$ y $|1\rangle$.&lt;/p>
$$
|\psi\rangle = \alpha|0\rangle + \beta|1\rangle
$$
&lt;p>Aquí, $\alpha$ y $\beta$ son números complejos que representan las amplitudes de probabilidad de observar los estados $|0\rangle$ y $|1\rangle$, respectivamente. Basado en los principios básicos de la mecánica cuántica, dado que la suma de las probabilidades debe ser 1, se cumple la siguiente condición de normalización:&lt;/p>
$$
|\alpha|^2 + |\beta|^2 = 1
$$
&lt;p>Es decir, cuando &amp;ldquo;medimos (observamos)&amp;rdquo; este cúbit, la probabilidad de obtener $|0\rangle$ es $|\alpha|^2$ y la probabilidad de obtener $|1\rangle$ es $|\beta|^2$. El hecho de que el estado solo se determine probabilísticamente antes de la medición es una diferencia crucial con respecto a los bits clásicos.&lt;/p>
&lt;div class="mermaid">graph LR
A["Bit clásico (Classical Bit)"] --> B["Estado determinado: 0 o 1"]
C["Cúbit (Qubit)"] --> D["Superposición: Ambos 0 y 1"]
D --> E["El estado se determina probabilísticamente mediante la medición"]&lt;/div>
&lt;h3 id="22-superposición-superposition">2.2 Superposición (Superposition)
&lt;/h3>&lt;p>Como se mencionó anteriormente, el estado en el que se mezclan $|0\rangle$ y $|1\rangle$ se llama &lt;strong>superposición (Superposition)&lt;/strong>.&lt;/p>
&lt;p>Por ejemplo, cuando un cúbit está en un estado de superposición completamente uniforme, $\alpha = \frac{1}{\sqrt{2}}$ y $\beta = \frac{1}{\sqrt{2}}$.&lt;/p>
$$
|\psi\rangle = \frac{1}{\sqrt{2}}|0\rangle + \frac{1}{\sqrt{2}}|1\rangle
$$
&lt;p>Al medir este estado, se observa $|0\rangle$ y $|1\rangle$ con un 50% de probabilidad cada uno.
Si tenemos 2 cúbits, podemos crear una superposición de 4 estados: $|00\rangle, |01\rangle, |10\rangle, |11\rangle$. Si tenemos $n$ cúbits, podemos representar $2^n$ estados simultáneamente, y esta es una de las fuentes del poder de procesamiento paralelo de las computadoras cuánticas.&lt;/p>
&lt;h3 id="23-entrelazamiento-cuántico-entanglement">2.3 Entrelazamiento cuántico (Entanglement)
&lt;/h3>&lt;p>La propiedad más poderosa y misteriosa en la computación cuántica es el &lt;strong>entrelazamiento cuántico (Entanglement)&lt;/strong>. Este fenómeno, que Einstein llamó &amp;ldquo;acción fantasmal a distancia&amp;rdquo;, es una propiedad donde dos o más cúbits están fuertemente conectados entre sí, y cuando se determina el estado de uno de ellos, el estado del otro se determina instantáneamente, sin importar cuán lejos estén físicamente.&lt;/p>
&lt;p>Uno de los estados entrelazados más famosos, el estado $\Phi^+$ de los &amp;ldquo;estados de Bell (Bell State)&amp;rdquo;, se expresa de la siguiente manera:&lt;/p>
$$
|\Phi^+\rangle = \frac{|00\rangle + |11\rangle}{\sqrt{2}}
$$
&lt;p>En este estado, los estados $|01\rangle$ y $|10\rangle$ no existen. Por lo tanto, si medimos el primer cúbit y es $|0\rangle$, sin siquiera medir el segundo, sabemos con certeza que es $|0\rangle$. Por el contrario, si el primero es $|1\rangle$, el segundo obligatoriamente será $|1\rangle$.&lt;/p>
&lt;hr>
&lt;h2 id="3-puertas-lógicas-cuánticas-quantum-logic-gates">3. Puertas lógicas cuánticas (Quantum Logic Gates)
&lt;/h2>&lt;p>Al igual que las computadoras clásicas realizan cálculos utilizando puertas lógicas como AND, OR y NOT, las computadoras cuánticas manipulan el estado de los cúbits utilizando &lt;strong>puertas cuánticas&lt;/strong>. Dado que los estados cuánticos son vectores, las puertas cuánticas se representan como &amp;ldquo;matrices unitarias&amp;rdquo; que actúan sobre esos vectores.&lt;/p>
&lt;h3 id="31-puertas-de-pauli-pauli-x-y-z">3.1 Puertas de Pauli (Pauli-X, Y, Z)
&lt;/h3>&lt;p>Las puertas de Pauli son operaciones básicas sobre 1 cúbit.&lt;/p>
&lt;p>&lt;strong>・Puerta Pauli-X (Puerta NOT)&lt;/strong>
Equivale a la puerta NOT clásica. Invierte $|0\rangle$ a $|1\rangle$, y $|1\rangle$ a $|0\rangle$. (Rotación de 180 grados alrededor del eje X en la esfera de Bloch).&lt;/p>
$$
X = \begin{pmatrix} 0 &amp; 1 \\ 1 &amp; 0 \end{pmatrix}
$$
&lt;p>&lt;strong>・Puerta Pauli-Y&lt;/strong>
Realiza una rotación de 180 grados alrededor del eje Y. Tiene el efecto de invertir tanto la fase como el bit.&lt;/p>
$$
Y = \begin{pmatrix} 0 &amp; -i \\ i &amp; 0 \end{pmatrix}
$$
&lt;p>&lt;strong>・Puerta Pauli-Z (Puerta de inversión de fase)&lt;/strong>
Mantiene el estado $|0\rangle$ tal como está, e invierte la fase del estado $|1\rangle$ (multiplica por $-1$). (Rotación de 180 grados alrededor del eje Z).&lt;/p>
$$
Z = \begin{pmatrix} 1 &amp; 0 \\ 0 &amp; -1 \end{pmatrix}
$$
&lt;h3 id="32-puerta-de-hadamard-hadamard-gate">3.2 Puerta de Hadamard (Hadamard Gate)
&lt;/h3>&lt;p>La puerta de Hadamard (Puerta H) es una puerta extremadamente importante que convierte un estado determinado ($|0\rangle$ o $|1\rangle$) en un estado de superposición.&lt;/p>
$$
H = \frac{1}{\sqrt{2}}
\begin{pmatrix}
1 &amp; 1 \\
1 &amp; -1
\end{pmatrix}
$$
&lt;p>Al aplicar la puerta H a $|0\rangle$, obtenemos el estado $|+\rangle$, que es un estado de superposición uniforme.&lt;/p>
$$
H|0\rangle = \frac{1}{\sqrt{2}}|0\rangle + \frac{1}{\sqrt{2}}|1\rangle = |+\rangle
$$
&lt;h3 id="33-puertas-de-fase-phase-gates">3.3 Puertas de fase (Phase Gates)
&lt;/h3>&lt;p>Las puertas de fase generalizan la puerta Z, rotando la fase del estado $|1\rangle$ un ángulo específico $\theta$.&lt;/p>
$$
P(\theta) = \begin{pmatrix} 1 &amp; 0 \\ 0 &amp; e^{i\theta} \end{pmatrix}
$$
&lt;p>Ejemplos típicos son la puerta S ($\theta = \pi/2$) y la puerta T ($\theta = \pi/4$).&lt;/p>
&lt;h3 id="34-puerta-cnot-controlled-not-gate">3.4 Puerta CNOT (Controlled-NOT Gate)
&lt;/h3>&lt;p>La puerta CNOT (Puerta CX) es una puerta que opera entre 2 cúbits y es indispensable para generar entrelazamiento cuántico. Consiste en un &amp;ldquo;bit de control (Control)&amp;rdquo; y un &amp;ldquo;bit objetivo (Target)&amp;rdquo;.&lt;/p>
&lt;p>Solo cuando el bit de control es $|1\rangle$, se aplica una puerta X (operación NOT) al bit objetivo. Si el bit de control es $|0\rangle$, no hace nada.&lt;/p>
$$
CNOT = \begin{pmatrix}
1 &amp; 0 &amp; 0 &amp; 0 \\
0 &amp; 1 &amp; 0 &amp; 0 \\
0 &amp; 0 &amp; 0 &amp; 1 \\
0 &amp; 0 &amp; 1 &amp; 0
\end{pmatrix}
$$
&lt;hr>
&lt;h2 id="4-conceptos-básicos-de-qiskit-y-configuración-del-entorno">4. Conceptos básicos de Qiskit y configuración del entorno
&lt;/h2>&lt;p>A partir de aquí, utilizaremos Python y Qiskit en la práctica para escribir un programa cuántico.&lt;/p>
&lt;h3 id="41-qué-es-qiskit">4.1 ¿Qué es Qiskit?
&lt;/h3>&lt;p>&lt;strong>Qiskit&lt;/strong> es un kit de desarrollo de software (SDK) de código abierto para computación cuántica desarrollado por IBM Quantum. Permite construir circuitos cuánticos de forma intuitiva utilizando Python y ejecutarlos en simuladores locales o en hardware cuántico real de IBM a través de la nube.&lt;/p>
&lt;h3 id="42-método-de-instalación">4.2 Método de instalación
&lt;/h3>&lt;p>Para utilizar Qiskit, necesitas un entorno de Python. Instala Qiskit y los paquetes relacionados (simuladores y bibliotecas de dibujo) con el siguiente comando.&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">pip install qiskit qiskit-aer qiskit-ibm-runtime matplotlib pylatexenc
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h3 id="43-flujo-básico-de-programación">4.3 Flujo básico de programación
&lt;/h3>&lt;p>La programación cuántica utilizando Qiskit procede principalmente en los siguientes pasos.&lt;/p>
&lt;div class="mermaid">graph TD
A["1. Construcción del circuito (Build)"] --> B["2. Compilación/Transpilación (Compile)"]
B --> C["3. Ejecución (Execute)"]
C --> D["4. Análisis y visualización de resultados (Analyze)"]&lt;/div>
&lt;ol>
&lt;li>&lt;strong>Construcción del circuito&lt;/strong>: Se crea un objeto &lt;code>QuantumCircuit&lt;/code> y se van agregando puertas.&lt;/li>
&lt;li>&lt;strong>Compilación&lt;/strong>: Se optimiza el circuito de acuerdo al backend de ejecución (hardware real o simulador).&lt;/li>
&lt;li>&lt;strong>Ejecución&lt;/strong>: Se envía el trabajo al backend y se obtienen los resultados.&lt;/li>
&lt;li>&lt;strong>Análisis&lt;/strong>: Se grafica un histograma de los resultados de la medición.&lt;/li>
&lt;/ol>
&lt;hr>
&lt;h2 id="5-práctica-construcción-de-un-circuito-que-crea-el-estado-de-bell-entrelazamiento-cuántico">5. Práctica: Construcción de un circuito que crea el estado de Bell (Entrelazamiento cuántico)
&lt;/h2>&lt;p>Intentemos crear el &amp;ldquo;entrelazamiento cuántico (estado de Bell)&amp;rdquo; que aprendimos en la teoría, en la práctica con Qiskit. El estado objetivo es $|\Phi^+\rangle = \frac{|00\rangle + |11\rangle}{\sqrt{2}}$.&lt;/p>
&lt;h3 id="51-diseño-del-circuito">5.1 Diseño del circuito
&lt;/h3>&lt;p>Para crear el estado de Bell, seguiremos los siguientes pasos:&lt;/p>
&lt;ol>
&lt;li>Preparar 2 cúbits (el estado inicial de ambos es $|0\rangle$).&lt;/li>
&lt;li>Aplicar una puerta de Hadamard (H) al primer cúbit para ponerlo en un estado de superposición.&lt;/li>
&lt;li>Aplicar una puerta CNOT utilizando el primer cúbit como &amp;ldquo;bit de control&amp;rdquo; y el segundo cúbit como &amp;ldquo;bit objetivo&amp;rdquo;.&lt;/li>
&lt;li>Realizar una medición (Measure) para leer el resultado.&lt;/li>
&lt;/ol>
&lt;h3 id="52-implementación-del-código-en-pythonqiskit">5.2 Implementación del código en Python/Qiskit
&lt;/h3>&lt;p>Veamos el código real.&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;span class="lnt">17
&lt;/span>&lt;span class="lnt">18
&lt;/span>&lt;span class="lnt">19
&lt;/span>&lt;span class="lnt">20
&lt;/span>&lt;span class="lnt">21
&lt;/span>&lt;span class="lnt">22
&lt;/span>&lt;span class="lnt">23
&lt;/span>&lt;span class="lnt">24
&lt;/span>&lt;span class="lnt">25
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-python" data-lang="python">&lt;span class="line">&lt;span class="cl">&lt;span class="kn">import&lt;/span> &lt;span class="nn">numpy&lt;/span> &lt;span class="k">as&lt;/span> &lt;span class="nn">np&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kn">from&lt;/span> &lt;span class="nn">qiskit&lt;/span> &lt;span class="kn">import&lt;/span> &lt;span class="n">QuantumCircuit&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">transpile&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kn">from&lt;/span> &lt;span class="nn">qiskit_aer&lt;/span> &lt;span class="kn">import&lt;/span> &lt;span class="n">Aer&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kn">from&lt;/span> &lt;span class="nn">qiskit.visualization&lt;/span> &lt;span class="kn">import&lt;/span> &lt;span class="n">plot_histogram&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kn">import&lt;/span> &lt;span class="nn">matplotlib.pyplot&lt;/span> &lt;span class="k">as&lt;/span> &lt;span class="nn">plt&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># 1. Inicialización del circuito&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># Crear un circuito cuántico con 2 cúbits y 2 bits clásicos&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">qc&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">QuantumCircuit&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">2&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">2&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># 2. Aplicación de la puerta H&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># Aplicar la puerta de Hadamard al cúbit 0 (q0)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">qc&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">h&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># 3. Aplicación de la puerta CNOT&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># Aplicar CNOT con q0 como bit de control y q1 como bit objetivo&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">qc&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">cx&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># 4. Medición&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># Medir los cúbits 0 y 1 y escribir en los bits clásicos 0 y 1 respectivamente&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">qc&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">measure&lt;/span>&lt;span class="p">([&lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">],&lt;/span> &lt;span class="p">[&lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">])&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># Dibujar el diagrama del circuito (usando matplotlib)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># qc.draw(&amp;#39;mpl&amp;#39;)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">print&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">qc&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">draw&lt;/span>&lt;span class="p">())&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>Al ejecutar este código, se mostrará el siguiente diagrama de circuito cuántico en arte ASCII en la consola.&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;span class="lnt">6
&lt;/span>&lt;span class="lnt">7
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-text" data-lang="text">&lt;span class="line">&lt;span class="cl"> ┌───┐ ┌─┐
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">q_0: ┤ H ├──■──┤M├───
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> └───┘┌─┴─┐└╥┘┌─┐
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">q_1: ─────┤ X ├─╫─┤M├
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> └───┘ ║ └╥┘
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">c: 2/═══════════╩══╩═
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> 0 1
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>&lt;code>H&lt;/code> representa la puerta de Hadamard, la combinación de &lt;code>■&lt;/code> y &lt;code>X&lt;/code> es la puerta CNOT, y &lt;code>M&lt;/code> representa la medición.&lt;/p>
&lt;h3 id="53-ejecución-en-el-simulador-e-interpretación-de-los-resultados">5.3 Ejecución en el simulador e interpretación de los resultados
&lt;/h3>&lt;p>A continuación, ejecutaremos este circuito en el simulador de alto rendimiento &lt;code>Aer&lt;/code> de IBM y verificaremos los resultados.&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;span class="lnt">17
&lt;/span>&lt;span class="lnt">18
&lt;/span>&lt;span class="lnt">19
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-python" data-lang="python">&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># Obtener el backend del simulador Aer&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">simulator&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">Aer&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">get_backend&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s1">&amp;#39;qasm_simulator&amp;#39;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># Transpilar (optimizar) el circuito para el simulador&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">compiled_circuit&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">transpile&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">qc&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">simulator&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># Ejecutar el circuito (aquí ejecutamos 1000 disparos)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">job&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">simulator&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">run&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">compiled_circuit&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">shots&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="mi">1000&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># Obtener los resultados&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">result&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">job&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">result&lt;/span>&lt;span class="p">()&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># Obtener el recuento de observaciones del estado&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">counts&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">result&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">get_counts&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">compiled_circuit&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">print&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s2">&amp;#34;&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">Resultados de medición:&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">counts&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># Graficar el histograma&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># plot_histogram(counts)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># plt.show()&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>&lt;strong>Interpretación de los resultados&lt;/strong>&lt;/p>
&lt;p>La salida en la consola debería verse así:
&lt;code>Resultados de medición: {'00': 495, '11': 505}&lt;/code>
(*Como la probabilidad es aleatoria, los números variarán ligeramente en cada ejecución).&lt;/p>
&lt;p>En un entorno de simulación ideal, los resultados de la medición mostrarán &lt;code>00&lt;/code> y &lt;code>11&lt;/code> con aproximadamente un 50% de probabilidad cada uno, y &lt;code>01&lt;/code> y &lt;code>10&lt;/code> no se observarán en absoluto.
Esto coincide perfectamente con la predicción teórica del estado de Bell $|\Phi^+\rangle = \frac{|00\rangle + |11\rangle}{\sqrt{2}}$ que hemos creado. Si el primer cúbit es 0, el segundo siempre será 0, y si es 1, siempre será 1, simulando con precisión este &amp;ldquo;entrelazamiento cuántico&amp;rdquo;.&lt;/p>
&lt;p>Cabe señalar que al ejecutarlo en una computadora cuántica real (IBM Quantum Hardware), los estados &lt;code>01&lt;/code> y &lt;code>10&lt;/code> pueden ser observados ligeramente debido al impacto del ruido (decoherencia cuántica y errores de puerta). Reducir este ruido (corrección de errores cuánticos) es uno de los mayores desafíos en el desarrollo actual de las computadoras cuánticas.&lt;/p>
&lt;hr>
&lt;h2 id="6-escalando-a-algoritmos-más-avanzados">6. Escalando a algoritmos más avanzados
&lt;/h2>&lt;p>La creación del estado de Bell puede considerarse el &amp;ldquo;Hello World&amp;rdquo; de la programación cuántica. Al desarrollarlo aún más, es posible construir poderosos algoritmos que superan a las computadoras clásicas.&lt;/p>
&lt;h3 id="61-algoritmo-de-deutsch-jozsa-deutsch-jozsa-algorithm">6.1 Algoritmo de Deutsch-Jozsa (Deutsch-Jozsa Algorithm)
&lt;/h3>&lt;p>Este es un problema en el que se determina si una función dada $f(x)$ es una &amp;ldquo;función constante&amp;rdquo; (siempre devuelve 0 o siempre devuelve 1 independientemente de la entrada) o una &amp;ldquo;función equilibrada&amp;rdquo; (devuelve 0 para la mitad de las entradas y 1 para la otra mitad).
En una computadora clásica, en el peor de los casos, se requerirían $2^{n-1} + 1$ evaluaciones de la función, pero utilizando el algoritmo de Deutsch-Jozsa, se puede determinar con &lt;strong>solo 1 evaluación&lt;/strong> utilizando el paralelismo cuántico. Esto muestra el patrón básico de los algoritmos cuánticos, donde se introduce un estado de superposición, se utiliza la interferencia (Interference) para cancelar los estados innecesarios y se amplifica la respuesta deseada.&lt;/p>
&lt;h3 id="62-algoritmo-de-grover-grovers-algorithm">6.2 Algoritmo de Grover (Grover&amp;rsquo;s Algorithm)
&lt;/h3>&lt;p>En el problema de buscar datos específicos en una base de datos de $N$ elementos no ordenados, mientras que un algoritmo clásico requiere un promedio de $N/2$ cálculos, el algoritmo de Grover puede encontrar los datos deseados en $\sqrt{N}$ cálculos.
Este algoritmo utiliza una caja negra llamada &amp;ldquo;oráculo (Oracle)&amp;rdquo; para invertir la fase de la solución objetivo, y luego realiza una &amp;ldquo;amplificación de amplitud (Amplitude Amplification)&amp;rdquo; para aumentar drásticamente la probabilidad de observar la solución deseada.&lt;/p>
&lt;div class="mermaid">graph TD
A["Inicialización (Superposición de todos los estados)"] --> B["Oráculo (Invierte la fase de la respuesta correcta)"]
B --> C["Operador de difusión (Amplificación de amplitud por inversión en torno a la media)"]
C --> D{"¿Se alcanzó una probabilidad suficiente?"}
D -- "No" --> B
D -- "Yes" --> E["Medición"]&lt;/div>
&lt;hr>
&lt;h2 id="7-conclusión-y-próximos-pasos-en-el-aprendizaje">7. Conclusión y próximos pasos en el aprendizaje
&lt;/h2>&lt;p>En este artículo, comenzamos desde conceptos fundamentales de la computación cuántica como la superposición y el entrelazamiento cuántico, y explicamos detalladamente hasta la manipulación de puertas lógicas cuánticas utilizando Qiskit, así como la construcción real, simulación e interpretación de resultados del estado de Bell.&lt;/p>
&lt;p>Dado que Qiskit se puede escribir en un lenguaje familiar como Python, es una herramienta poderosa que te permite superar las barreras matemáticas y físicas, y concentrarte en la construcción de algoritmos. Aunque actualmente las computadoras cuánticas están en la era de los dispositivos cuánticos ruidosos de escala intermedia (NISQ: Noisy Intermediate-Scale Quantum), la investigación aplicada está avanzando rápidamente en todo el mundo en muchos campos como el aprendizaje automático cuántico (Quantum Machine Learning), la simulación química (Quantum Chemistry) y la criptografía.&lt;/p>
&lt;p>Aprovecha esta oportunidad para construir varios circuitos cuánticos por ti mismo utilizando Qiskit y ejecútalos en procesadores reales de IBM Quantum. Seguramente podrás experimentar con tus propias manos el paradigma computacional del futuro.&lt;/p>
&lt;h3 id="referencias">Referencias
&lt;/h3>&lt;ul>
&lt;li>&lt;a class="link" href="https://qiskit.org/documentation/" target="_blank" rel="noopener"
>Documentación oficial de Qiskit&lt;/a>&lt;/li>
&lt;li>&lt;a class="link" href="https://qiskit.org/textbook/ja/preface.html" target="_blank" rel="noopener"
>Qiskit Textbook&lt;/a> - Texto oficial recomendado para aquellos que deseen profundizar en los antecedentes matemáticos y algorítmicos.&lt;/li>
&lt;li>IBM Quantum Learning&lt;/li>
&lt;/ul>
&lt;p>¡Bienvenido al mundo cuántico!&lt;/p></description></item><item><title>¿Qué es la supremacía cuántica? Las últimas tendencias de Google e IBM</title><link>http://kenji.blog/es/p/what-is-quantum-supremacy-google-ibm/</link><pubDate>Fri, 11 Sep 2026 18:00:00 +0900</pubDate><guid>http://kenji.blog/es/p/what-is-quantum-supremacy-google-ibm/</guid><description>&lt;img src="http://kenji.blog/p/what-is-quantum-supremacy-google-ibm/img/eyecatch.jpg" alt="Featured image of post ¿Qué es la supremacía cuántica? Las últimas tendencias de Google e IBM" />&lt;h2 id="1-introducción-el-amanecer-de-la-computación-cuántica-y-la-supremacía-cuántica">1. Introducción: El amanecer de la computación cuántica y la &amp;ldquo;supremacía cuántica&amp;rdquo;
&lt;/h2>&lt;p>La computación cuántica tiene el potencial de resolver problemas complejos que los ordenadores clásicos (los PC y superordenadores que usamos habitualmente en la actualidad) no pueden resolver en un tiempo realista, aplicando la mecánica cuántica, el principio fundamental de la física, al procesamiento de información. Este campo ha sido principalmente de investigación teórica durante mucho tiempo, pero en los últimos años, con el rápido avance del hardware, la competencia por la aplicación práctica se ha intensificado.&lt;/p>
&lt;p>Una de las palabras clave que más atención ha atraído es la &amp;ldquo;supremacía cuántica&amp;rdquo; (Quantum Supremacy). Esto se refiere al momento en que un ordenador cuántico demuestra una capacidad de cálculo que abruma a los ordenadores clásicos en una tarea computacional específica. En este artículo, explicaremos detalladamente y con profundidad técnica y matemática desde la definición estricta de supremacía cuántica, los detalles del experimento del procesador &amp;ldquo;Sycamore&amp;rdquo; de Google que anunció haber alcanzado este hito mundial en 2019, la refutación y el enfoque propio de IBM al respecto, hasta las últimas hojas de ruta hacia la &amp;ldquo;corrección de errores cuánticos&amp;rdquo; (Quantum Error Correction: QEC) y la &amp;ldquo;computación cuántica tolerante a fallos&amp;rdquo; (Fault-Tolerant Quantum Computing: FTQC), que son el mayor obstáculo para su verdadera aplicación práctica.&lt;/p>
&lt;hr>
&lt;h2 id="2-antecedentes-teóricos-fundamentos-de-la-computación-cuántica-y-clases-de-complejidad">2. Antecedentes teóricos: Fundamentos de la computación cuántica y clases de complejidad
&lt;/h2>&lt;p>Para entender la supremacía cuántica, primero es necesario comprender los fundamentos matemáticos de la computación cuántica y su posición en la teoría de la complejidad computacional.&lt;/p>
&lt;h3 id="cúbits-qubits-y-superposición">Cúbits (Qubits) y superposición
&lt;/h3>&lt;p>La unidad mínima de información en un ordenador clásico es el bit (0 o 1), pero en un ordenador cuántico se utiliza el cúbit (Qubit). El estado $|\psi\rangle$ de un cúbit se representa como una combinación lineal compleja de los estados base $|0\rangle$ y $|1\rangle$.&lt;/p>
$$
|\psi\rangle = \alpha|0\rangle + \beta|1\rangle
$$
&lt;p>Donde $\alpha, \beta \in \mathbb{C}$, y cumplen con la condición de normalización $|\alpha|^2 + |\beta|^2 = 1$. A esta propiedad se le llama &amp;ldquo;superposición&amp;rdquo; (Superposition).&lt;/p>
&lt;h3 id="entrelazamiento-entanglement-y-producto-tensorial">Entrelazamiento (Entanglement) y producto tensorial
&lt;/h3>&lt;p>Cuando hay varios cúbits, el estado de todo el sistema se representa por el producto tensorial del espacio de estados de cada cúbit individual. Un sistema de $n$ cúbits es un vector en el espacio de Hilbert de $2^n$ dimensiones $\mathcal{H}^{\otimes n}$.&lt;/p>
$$
|\Psi\rangle = \sum_{x \in \{0, 1\}^n} c_x |x\rangle
$$
&lt;p>Donde $\sum |c_x|^2 = 1$. El estado en el que los cúbits no son independientes entre sí y el estado de uno depende del otro se llama &amp;ldquo;entrelazamiento cuántico&amp;rdquo; (Quantum Entanglement). Esto le da a los ordenadores cuánticos el potencial de procesar simultáneamente un espacio de estados exponencialmente vasto.&lt;/p>
&lt;h3 id="definición-teórica-de-la-complejidad-computacional-de-la-supremacía-cuántica">Definición teórica de la complejidad computacional de la supremacía cuántica
&lt;/h3>&lt;p>En la teoría de la complejidad computacional, la clase de problemas que un ordenador clásico puede resolver eficientemente (en tiempo polinómico) se llama &lt;strong>BPP&lt;/strong> (Bounded-error Probabilistic Polynomial time). Por otro lado, la clase de problemas que un ordenador cuántico puede resolver eficientemente es &lt;strong>BQP&lt;/strong> (Bounded-error Quantum Polynomial time).&lt;/p>
&lt;p>Demostrar la supremacía cuántica significa &amp;ldquo;ejecutar en hardware cuántico real una tarea específica que está incluida en BQP pero no en BPP (o es muy probable que no lo esté), y superar la simulación por superordenadores clásicos en términos de tiempo y recursos&amp;rdquo;. Se puede decir que es un intento histórico de refutar mediante experimentos físicos la tesis extendida de Church-Turing (&amp;ldquo;todo modelo de computación físicamente realizable puede ser simulado en tiempo polinómico por una máquina de Turing probabilística&amp;rdquo;).&lt;/p>
&lt;hr>
&lt;h2 id="3-2019-demostración-de-la-supremacía-cuántica-por-google">3. 2019: Demostración de la supremacía cuántica por Google
&lt;/h2>&lt;p>En octubre de 2019, el equipo de Google Quantum AI anunció en la revista científica &amp;ldquo;Nature&amp;rdquo; que habían logrado la supremacía cuántica utilizando un procesador superconductor de 53 cúbits llamado &amp;ldquo;Sycamore&amp;rdquo;.&lt;/p>
&lt;h3 id="arquitectura-del-procesador-sycamore">Arquitectura del procesador Sycamore
&lt;/h3>&lt;p>El procesador Sycamore está compuesto por 54 cúbits superconductores tipo Transmon dispuestos en una cuadrícula bidimensional (se usaron 53 porque uno de ellos falló durante el experimento). Se colocaron acopladores ajustables (Tunable Couplers) entre los cúbits adyacentes para realizar puertas de dos cúbits (un híbrido de puerta iSWAP y puerta Z controlada) de alta velocidad y alta precisión.&lt;/p>
&lt;div class="mermaid">graph TD
A["Entrada del Algoritmo Cuántico"] --> B["Procesador Sycamore (53 Cúbits)"]
B --> C["Aplicar Puertas Cuánticas Aleatorias"]
C --> D["Medir Estados Cuánticos (Cadenas de Bits)"]
D --> E["Evaluación Comparativa de Entropía Cruzada (XEB)"]
E --> F["Verificar la Supremacía Cuántica"]&lt;/div>
&lt;h3 id="muestreo-de-circuitos-cuánticos-aleatorios-random-circuit-sampling-rcs">Muestreo de circuitos cuánticos aleatorios (Random Circuit Sampling: RCS)
&lt;/h3>&lt;p>La tarea elegida por Google fue el &amp;ldquo;muestreo de circuitos cuánticos aleatorios&amp;rdquo;. Consiste en aplicar puertas de un solo cúbit y de dos cúbits elegidas al azar durante múltiples ciclos (profundidad $m$), y luego medir el estado final para muestrear a partir de la distribución de probabilidad de las cadenas de bits obtenidas.&lt;/p>
&lt;p>La probabilidad de la cadena de bits $x$ que sale de un circuito cuántico aleatorio ideal (sin ruido) no es una distribución uniforme, sino que muestra un patrón similar a un patrón de interferencia llamado distribución de Porter-Thomas (Porter-Thomas distribution). Para muestrear a partir de esta distribución en un ordenador clásico se requiere la simulación de todo el vector de estado, y la complejidad computacional aumenta exponencialmente con el número de cúbits $n$ y la profundidad del circuito $m$.&lt;/p>
&lt;h3 id="evaluación-de-la-fidelidad-fidelity-evaluación-comparativa-de-entropía-cruzada-lineal-xeb">Evaluación de la fidelidad (Fidelity): Evaluación comparativa de entropía cruzada lineal (XEB)
&lt;/h3>&lt;p>Para demostrar que los resultados del experimento no eran mero ruido, sino los resultados de un cálculo cuántico real, Google utilizó la evaluación comparativa de entropía cruzada lineal (Linear Cross-Entropy Benchmarking: XEB). Se calcula la probabilidad ideal $P(x_i)$ del circuito para la cadena de bits $x_i$ obtenida en el experimento con un ordenador clásico, y la fidelidad $\mathcal{F}_{\text{XEB}}$ se calcula con la siguiente fórmula:&lt;/p>
$$
\mathcal{F}_{\text{XEB}} = 2^n \langle P(x_i) \rangle_{i} - 1
$$
&lt;p>Si $\mathcal{F}_{\text{XEB}}$ es 0, significa ruido puro; si es 1, significa un procesador cuántico ideal sin ruido. El procesador Sycamore logró $\mathcal{F}_{\text{XEB}} \approx 0.002$ (0,2%) en un circuito de profundidad 20. Aunque parece bajo a primera vista, fue un valor estadísticamente significativo mayor que cero y un logro asombroso al controlar un espacio de estados de $2^{53} \approx 9 \times 10^{15}$.&lt;/p>
&lt;p>La tasa de error global se modeló aproximadamente como el producto de los errores individuales de las puertas, errores de medición, etc.&lt;/p>
$$
\mathcal{F} \approx (1 - e_1)^{N_1}(1 - e_2)^{N_2} \cdots \approx \prod_{g \in 1Q} (1 - e_g) \prod_{g \in 2Q} (1 - e_g) \prod_{q} (1 - e_{RO})
$$
&lt;p>(* $e_g$ es el error de la puerta, $e_{RO}$ es el error de medición)&lt;/p>
&lt;p>Google afirmó que a un superordenador clásico (Summit) le llevaría unos 10.000 años simular este circuito. En contraste, Sycamore completó el muestreo en solo 200 segundos.&lt;/p>
&lt;hr>
&lt;h2 id="4-la-refutación-de-ibm-de-la-supremacía-a-la-utilidad-utility">4. La refutación de IBM: De la &amp;ldquo;supremacía&amp;rdquo; a la &amp;ldquo;utilidad&amp;rdquo; (Utility)
&lt;/h2>&lt;p>El anuncio de Google sorprendió al mundo entero, pero IBM, quien desarrolló el superordenador más grande del mundo &amp;ldquo;Summit&amp;rdquo; y es también líder en el desarrollo de ordenadores cuánticos, publicó de inmediato un documento refutando esta afirmación.&lt;/p>
&lt;h3 id="mejora-de-la-simulación-clásica-mediante-la-contracción-de-redes-tensoriales">Mejora de la simulación clásica mediante la contracción de redes tensoriales
&lt;/h3>&lt;p>El núcleo de la refutación de IBM fue que &amp;ldquo;la optimización del algoritmo y los recursos del lado del ordenador clásico eran insuficientes&amp;rdquo;. Google basó su estimación de 10.000 años asumiendo un simulador de vector de estado que calcula directamente la evolución temporal de la ecuación de Schrödinger, pero IBM señaló que al usar una técnica llamada &amp;ldquo;redes tensoriales&amp;rdquo; (Tensor Network), el tiempo de simulación podría reducirse drásticamente.&lt;/p>
&lt;p>En las redes tensoriales, las operaciones de puertas de los circuitos cuánticos se representan como cálculos de matrices multidimensionales (tensores), y se optimiza el orden de la &amp;ldquo;contracción&amp;rdquo; (Contraction) de la red. Además, afirmaron que al utilizar plenamente el enorme almacenamiento de 250 PB de Summit (estratificación de disco y memoria), era posible retener todo el vector de estado y realizar una simulación de mayor precisión en solo &amp;ldquo;dos días y medio&amp;rdquo;.&lt;/p>
&lt;h3 id="ventaja-cuántica-quantum-advantage-y-utilidad-cuántica-quantum-utility">Ventaja cuántica (Quantum Advantage) y utilidad cuántica (Quantum Utility)
&lt;/h3>&lt;p>Con este debate como punto de inflexión, la tendencia de toda la industria pasó de aferrarse simplemente a &amp;ldquo;ejecutar tareas artificiales que son imposibles clásicamente (Supremacy)&amp;rdquo;, a demostrar una &amp;ldquo;ventaja sustancial sobre los enfoques clásicos en problemas útiles del mundo real (Quantum Advantage)&amp;rdquo;, y más aún a la fase en la que &amp;ldquo;el ordenador cuántico funciona como una nueva herramienta para el descubrimiento científico (Quantum Utility)&amp;rdquo;.&lt;/p>
&lt;p>La propia IBM evita el término &amp;ldquo;supremacía&amp;rdquo; y aboga por el &amp;ldquo;volumen cuántico&amp;rdquo; (Quantum Volume) y los &amp;ldquo;CLOPS (Circuit Layer Operations Per Second)&amp;rdquo; como indicadores integrales de rendimiento de los procesadores cuánticos, avanzando en un desarrollo que enfatiza el equilibrio entre la escala y la calidad del hardware.&lt;/p>
&lt;div class="mermaid">timeline
title "La evolución de los hitos cuánticos"
2019 : "Google Sycamore (53Q)" : "Anuncio de la Supremacía Cuántica"
2019 : "Refutación de IBM" : "Simulación del superordenador Summit en 2,5 días"
2021 : "IBM Eagle (127Q)" : "Rompiendo la barrera de los 100 cúbits"
2022 : "IBM Osprey (433Q)" : "Avanzando en la escala del procesador"
2023 : "Código de Superficie de Google" : "Escalando la corrección de errores (d=3 a d=5)"
2023 : "Utilidad Cuántica de IBM" : "Simulación de modelo de espín complejo en 127Q"
2024 : "Más allá" : "Era de Cúbits Lógicos y Mitigación de Errores"&lt;/div>
&lt;hr>
&lt;h2 id="5-la-próxima-frontera-mitigación-de-errores-error-mitigation-y-corrección-de-errores-cuánticos-qec">5. La próxima frontera: Mitigación de errores (Error Mitigation) y corrección de errores cuánticos (QEC)
&lt;/h2>&lt;p>Los ordenadores cuánticos actuales se denominan &amp;ldquo;NISQ (Noisy Intermediate-Scale Quantum)&amp;rdquo; y son susceptibles a los efectos del ruido (errores debidos a la interacción con el entorno externo y la imperfección del control), y cuando realizan cálculos largos, los resultados quedan enterrados en el ruido. Los enfoques para superar este problema se dividen a grandes rasgos en dos: &amp;ldquo;mitigación de errores&amp;rdquo; (Error Mitigation) y &amp;ldquo;corrección de errores cuánticos&amp;rdquo; (Quantum Error Correction).&lt;/p>
&lt;h3 id="mitigación-de-errores-error-mitigation">Mitigación de errores (Error Mitigation)
&lt;/h3>&lt;p>La mitigación de errores es una técnica que elimina los efectos del ruido de los valores esperados de los resultados computacionales mediante el posprocesamiento clásico, sin alterar el hardware cuántico. En 2023, IBM logró la &amp;ldquo;utilidad cuántica&amp;rdquo; (Quantum Utility) combinando el procesador &amp;ldquo;Eagle&amp;rdquo; de 127 cúbits con técnicas de mitigación de errores como la &amp;ldquo;extrapolación de ruido cero&amp;rdquo; (Zero-Noise Extrapolation: ZNE), superando la precisión de los métodos de redes tensoriales aproximadas de última generación en la simulación de la evolución temporal de modelos de Ising complejos.&lt;/p>
&lt;h3 id="corrección-de-errores-cuánticos-qec-y-cúbits-lógicos">Corrección de errores cuánticos (QEC) y cúbits lógicos
&lt;/h3>&lt;p>Sin embargo, en última instancia, para ejecutar algoritmos complejos arbitrarios (por ejemplo, el algoritmo de factorización de Shor o cálculos químicos cuánticos complejos), la mitigación de errores por sí sola es insuficiente, y es indispensable la &amp;ldquo;corrección de errores cuánticos&amp;rdquo; (QEC) que detecta y corrige errores dinámicamente.&lt;/p>
&lt;p>El enfoque principal de QEC es el &amp;ldquo;código de superficie&amp;rdquo; (Surface Code). Este es un método que organiza múltiples cúbits físicos (cúbits de datos) en una cuadrícula bidimensional, coloca cúbits para medición (cúbits ancilla) entre ellos, y realiza verificaciones de paridad continuas llamadas &amp;ldquo;estabilizadores&amp;rdquo; (Stabilizers).&lt;/p>
&lt;div class="mermaid">graph LR
Q1["Cúbit de Datos (Data)"] --- M1["Medir Estabilizador X (Ancilla)"]
Q2["Cúbit de Datos (Data)"] --- M1
Q3["Cúbit de Datos (Data)"] --- M2["Medir Estabilizador Z (Ancilla)"]
Q4["Cúbit de Datos (Data)"] --- M2
M1 --> EC["Decodificación del Síndrome de Error (Clásico)"]
M2 --> EC
EC --> LQ["Actualización del Estado del Cúbit Lógico"]&lt;/div>
&lt;h4 id="teorema-del-umbral-threshold-theorem-y-distancia-d">Teorema del umbral (Threshold Theorem) y distancia $d$
&lt;/h4>&lt;p>Existe un &amp;ldquo;teorema del umbral&amp;rdquo; para la corrección de errores cuánticos. Si la tasa de error $p$ de los cúbits físicos está por debajo de un cierto umbral $p_{th}$ (alrededor del 1% en el caso de los códigos de superficie), se puede reducir la tasa de error lógico $p_L$ de manera exponencial al aumentar la distancia del código (Distance) $d$ (asignando más cúbits físicos a un cúbit lógico).&lt;/p>
&lt;p>La fórmula aproximada de la tasa de error lógico se expresa de la siguiente manera:&lt;/p>
$$
p_L \approx \Lambda \left( \frac{p}{p_{th}} \right)^{\frac{d+1}{2}}
$$
&lt;p>Donde $\Lambda$ es una constante. Si $p &lt; p_{th}$, cuanto mayor sea $d$, menor será $p_L$. Sin embargo, si $p > p_{th}$, cuantos más cúbits físicos se añadan, más ruido se acumulará, empeorando la tasa de error lógico.&lt;/p>
&lt;h4 id="hito-de-google-en-2023-demostración-de-la-reducción-de-errores-ampliando-la-distancia">Hito de Google en 2023: Demostración de la reducción de errores ampliando la distancia
&lt;/h4>&lt;p>En febrero de 2023, Google publicó un artículo monumental en &amp;ldquo;Nature&amp;rdquo;. Utilizando el procesador Sycamore de tercera generación, demostraron por primera vez en el mundo que al ampliar la distancia del código de superficie de $d=3$ (usando 17 cúbits físicos) a $d=5$ (usando 49 cúbits físicos), la tasa de error lógico disminuyó ligeramente del 3,028% al 2,914%.&lt;/p>
&lt;p>Esto significa que entraron en la región de $p &lt; p_{th}$, indicando que se ha completado la prueba de concepto (Proof of Concept) más importante hacia la FTQC: que el rendimiento mejora cuantos más cúbits físicos se añadan.&lt;/p>
&lt;hr>
&lt;h2 id="6-hoja-de-ruta-y-perspectivas-hacia-la-ftqc-computación-cuántica-tolerante-a-fallos">6. Hoja de ruta y perspectivas hacia la FTQC (Computación cuántica tolerante a fallos)
&lt;/h2>&lt;p>Google e IBM están inmersos en una feroz competencia de desarrollo hacia el objetivo final de la FTQC (Fault-Tolerant Quantum Computing), adoptando arquitecturas y enfoques diferentes respectivamente.&lt;/p>
&lt;h3 id="el-enfoque-de-ibm-modularización-y-celosía-heavy-hex">El enfoque de IBM: Modularización y celosía Heavy-Hex
&lt;/h3>&lt;p>IBM se está centrando en ampliar el procesador al mismo tiempo que reduce drásticamente las tasas de error. Mientras desafían los límites de un solo chip con &amp;ldquo;Eagle (127Q)&amp;rdquo;, &amp;ldquo;Osprey (433Q)&amp;rdquo; y &amp;ldquo;Condor (1121Q)&amp;rdquo;, han anunciado una arquitectura modular llamada &amp;ldquo;Quantum System Two&amp;rdquo;. Además, para la topología de conexión de los cúbits, han adoptado la &amp;ldquo;celosía Heavy-Hex&amp;rdquo; para reducir la diafonía (crosstalk) innecesaria y aumentar la estabilidad. La estrategia de IBM es un enfoque híbrido que persigue la utilidad con mitigación de errores avanzada a corto plazo, introduciendo gradualmente la QEC.&lt;/p>
&lt;h3 id="el-enfoque-de-google-mejora-de-la-calidad-de-los-cúbits-lógicos">El enfoque de Google: Mejora de la calidad de los cúbits lógicos
&lt;/h3>&lt;p>La estrategia de Google pone el énfasis en reducir la tasa de error de un solo cúbit lógico al extremo (por ejemplo, reducirla a $10^{-6}$) más que en aumentar rápidamente el número de cúbits físicos. Sobre esa base, tienen como objetivo establecer una tecnología para transferir estados cuánticos entre módulos (Quantum Interconnects) y construir un sistema a gran escala que opere desde miles hasta decenas de miles de cúbits físicos en paralelo.&lt;/p>
&lt;p>La implementación de protocolos para ejecutar puertas no de Clifford con tolerancia a fallos, como la destilación de estados mágicos (Magic State Distillation), también será un gran obstáculo técnico en el futuro. Para ejecutar el algoritmo práctico de Shor y descifrar la criptografía RSA de 2048 bits, se dice que se necesitarán miles de cúbits lógicos con una tasa de error inferior a $10^{-8}$, lo que equivale a entre millones y decenas de millones de cúbits físicos, por lo que el camino aún es largo.&lt;/p>
&lt;hr>
&lt;h2 id="7-conclusión">7. Conclusión
&lt;/h2>&lt;p>La &amp;ldquo;supremacía cuántica&amp;rdquo; fue un hito importante en la historia de los ordenadores cuánticos que demostró físicamente el potencial teórico de la computación. La demostración de Google en 2019 y la refutación constructiva de IBM impulsaron a toda la industria desde una mera prueba teórica hacia la búsqueda de la utilidad (Utility) real, y finalmente hacia una era de ingeniería a gran escala para la computación cuántica tolerante a fallos (FTQC).&lt;/p>
&lt;p>Actualmente somos testigos del período de transición desde los dispositivos NISQ plagados de ruido hasta los dispositivos de cúbits lógicos equipados con corrección de errores. En los próximos años o décadas, los nuevos descubrimientos en la ciencia de los materiales, las revoluciones en el proceso de descubrimiento de fármacos y los avances en los problemas de optimización se harán realidad junto con la evolución de este hardware cuántico.&lt;/p>
&lt;p>No podemos perder de vista las tendencias de Google, IBM y los investigadores de todo el mundo que están dando forma al futuro de la informática.&lt;/p></description></item><item><title>¿Cómo cambiarán el blockchain y las criptomonedas en la era post-cuántica?</title><link>http://kenji.blog/es/p/post-quantum-blockchain-and-crypto/</link><pubDate>Fri, 11 Sep 2026 17:00:00 +0900</pubDate><guid>http://kenji.blog/es/p/post-quantum-blockchain-and-crypto/</guid><description>&lt;img src="http://kenji.blog/p/post-quantum-blockchain-and-crypto/img/eyecatch.jpg" alt="Featured image of post ¿Cómo cambiarán el blockchain y las criptomonedas en la era post-cuántica?" />&lt;h2 id="1-introducción-los-pasos-de-la-era-post-cuántica-y-la-crisis-del-blockchain">1. Introducción: Los pasos de la era post-cuántica y la crisis del blockchain
&lt;/h2>&lt;p>Desde el nacimiento de Bitcoin en 2009 por Satoshi Nakamoto, la tecnología blockchain ha crecido hasta convertirse en la base de sistemas financieros y aplicaciones en todo el mundo como un &amp;ldquo;libro mayor descentralizado e inalterable&amp;rdquo;. Esta robusta seguridad está respaldada por tecnologías criptográficas modernas: &lt;strong>Criptografía de Clave Pública (Public Key Cryptography)&lt;/strong> y &lt;strong>Funciones Hash Criptográficas (Cryptographic Hash Functions)&lt;/strong>.&lt;/p>
&lt;p>Estas tecnologías criptográficas garantizan la seguridad basándose en la &amp;ldquo;dificultad computacional&amp;rdquo; matemática, lo que significa que una computadora clásica (como las PC o supercomputadoras que usamos hoy en día) tardaría la edad del universo en descifrarlas.&lt;/p>
&lt;p>Sin embargo, esta premisa está a punto de ser anulada desde su raíz debido al rápido desarrollo y aplicación práctica de las &lt;strong>Computadoras Cuánticas (Quantum Computers)&lt;/strong>, la frontera de la física y las ciencias de la información. Aprovechando propiedades únicas de la mecánica cuántica como la &amp;ldquo;Superposición (Superposition)&amp;rdquo; y el &amp;ldquo;Entrelazamiento (Entanglement)&amp;rdquo;, las computadoras cuánticas exhiben un poder computacional en ciertos problemas matemáticos que abruma abrumadoramente a las computadoras clásicas convencionales, lo que se conoce como &amp;ldquo;Supremacía Cuántica (Quantum Supremacy)&amp;rdquo;.&lt;/p>
&lt;p>En este artículo, exploraremos en profundidad, desde un punto de vista técnico y matemático, las amenazas específicas que la tecnología blockchain enfrenta debido a las computadoras cuánticas, así como las últimas tendencias en la &lt;strong>Criptografía Post-Cuántica (PQC: Post-Quantum Cryptography)&lt;/strong> como solución, y los escenarios de transición para las redes de criptoactivos.&lt;/p>
&lt;hr>
&lt;h2 id="2-fundamentos-de-las-computadoras-cuánticas-y-dos-grandes-amenazas-para-el-blockchain">2. Fundamentos de las computadoras cuánticas y dos grandes amenazas para el blockchain
&lt;/h2>&lt;p>Los sistemas de blockchain actuales consisten principalmente en los siguientes dos elementos criptográficos, y cada uno está expuesto a diferentes amenazas por algoritmos cuánticos.&lt;/p>
&lt;div class="mermaid">graph TD
A["El increíble poder computacional de las computadoras cuánticas"] --> B["Algoritmo de Shor (Shor's Algorithm)"]
A --> C["Algoritmo de Grover (Grover's Algorithm)"]
B --> D["Colapso de la criptografía de clave pública (ECDSA/RSA/DSA)"]
C --> E["Impacto en las funciones hash criptográficas (SHA-256)"]
D --> F["Identificación de claves privadas ajenas y falsificación de transacciones"]
E --> G["Ventaja en la minería PoW y ataques a ciertas direcciones"]
F --> H["Amenaza letal y directa en la cadena de bloques"]
G --> I["Amenazas manejables con ajustes de algoritmos (por ejemplo, extensión de longitud de clave)"]
style H fill:#ff9999,stroke:#cc0000,stroke-width:2px;
style I fill:#ffff99,stroke:#cccc00,stroke-width:2px;&lt;/div>
&lt;h3 id="21-fundamentos-y-dificultad-computacional-de-la-criptografía-de-curva-elíptica-ecdsa">2.1. Fundamentos y dificultad computacional de la Criptografía de Curva Elíptica (ECDSA)
&lt;/h3>&lt;p>Muchas blockchains, incluidas Bitcoin y Ethereum, adoptan el &lt;strong>Algoritmo de Firma Digital de Curva Elíptica (ECDSA: Elliptic Curve Digital Signature Algorithm)&lt;/strong> como su algoritmo de firma digital. Específicamente, Bitcoin utiliza la curva elíptica con el parámetro &lt;code>secp256k1&lt;/code>.&lt;/p>
&lt;p>La seguridad de la criptografía de curva elíptica se basa en la dificultad computacional del &lt;strong>Problema del Logaritmo Discreto de Curva Elíptica (ECDLP: Elliptic Curve Discrete Logarithm Problem)&lt;/strong>.
Una curva elíptica se define por una ecuación en la forma normal de Weierstrass de la siguiente manera:&lt;/p>
$$
y^2 \equiv x^3 + ax + b \pmod{p}
$$
&lt;p>En la &lt;code>secp256k1&lt;/code> de Bitcoin, $a = 0, b = 7$, y $p$ es un número primo muy grande.
Sea $G$ el punto base (punto de referencia) en esta curva, y $k$ una clave privada, que es un número entero aleatorio masivo de 256 bits. Entonces, la clave pública $K$ se obtiene mediante la suma (multiplicación escalar) del punto base $k$ veces.&lt;/p>
$$
K = k \times G = \underbrace{G + G + \dots + G}_{k \text{ veces}}
$$
&lt;p>Usando una computadora clásica, calcular inversamente la clave privada $k$ (encontrar el logaritmo discreto) a partir de la clave pública expuesta $K$ y el punto base $G$ requiere un tiempo computacional exponencial de $\mathcal{O}(\sqrt{p})$ incluso usando los mejores algoritmos clásicos como el método de factorización rho de Pollard. Para una clave de 256 bits, se requieren aproximadamente $2^{128}$ operaciones, un nivel que no podría resolverse ni operando supercomputadoras actuales durante miles de millones de años.&lt;/p>
&lt;h3 id="22-colapso-por-el-algoritmo-de-shor-shors-algorithm">2.2. Colapso por el Algoritmo de Shor (Shor&amp;rsquo;s Algorithm)
&lt;/h3>&lt;p>Sin embargo, el &lt;strong>Algoritmo de Shor&lt;/strong>, publicado por Peter Shor en 1994, destruyó por completo esta premisa. El algoritmo de Shor fue propuesto originalmente para resolver el problema de factorización de enteros (la base del cifrado RSA) en tiempo polinómico, pero también es aplicable al problema del logaritmo discreto y al problema del logaritmo discreto de curva elíptica.&lt;/p>
&lt;p>El núcleo del algoritmo de Shor radica en el uso de la &lt;strong>Transformada de Fourier Cuántica (QFT: Quantum Fourier Transform)&lt;/strong> para encontrar rápidamente el &amp;ldquo;período (Period)&amp;rdquo; de una función.&lt;/p>
$$
\text{Complejidad clásica} = \mathcal{O}(2^{n/2}) \quad (n\text{ es la longitud en bits})
$$
$$
\text{Complejidad del algoritmo cuántico} = \mathcal{O}(n^3)
$$
&lt;p>De esta manera, el algoritmo de Shor reduce drásticamente el tiempo exponencial a un &lt;strong>tiempo polinómico (Polynomial Time)&lt;/strong>. Si se completa una computadora cuántica con suficientes cúbits lógicos, será posible determinar la clave privada $k$ a partir de la clave pública $K$ expuesta en la red en minutos o segundos. Esto permitiría a los atacantes obtener fácilmente las claves privadas de las carteras de otras personas y tomar control total de los fondos.&lt;/p>
&lt;h4 id="221-paso-a-paso-del-descifrado-de-ecdlp-mediante-el-algoritmo-de-shor">2.2.1 Paso a paso del descifrado de ECDLP mediante el algoritmo de Shor
&lt;/h4>&lt;p>Veamos paso a paso los procesos internos mediante los cuales una computadora cuántica resuelve el problema del logaritmo discreto de curva elíptica (ECDLP).&lt;/p>
&lt;p>Planteamiento del problema: En $K = k \times G$, dado que se conocen $G$ y $K$, se desea encontrar el entero desconocido $k$ (clave privada). Supongamos que el orden de la curva elíptica es $N$.&lt;/p>
&lt;p>&lt;strong>Paso 1: Creación de un estado de superposición&lt;/strong>
Primero, se preparan dos registros cuánticos, y se aplica una compuerta de Hadamard (Hadamard Gate) a cada uno para crear un estado de superposición de todas las posibles combinaciones de números enteros.
&lt;/p>
$$
|\psi_1\rangle = \frac{1}{N} \sum_{x=0}^{N-1} \sum_{y=0}^{N-1} |x\rangle |y\rangle |0\rangle
$$
&lt;p>&lt;strong>Paso 2: Aplicación del oráculo cuántico (evaluación de la función)&lt;/strong>
A continuación, utilizando un circuito cuántico (oráculo) que realiza adición de puntos en la curva elíptica, la función $f(x, y) = x \times G + y \times K$ se calcula en el tercer registro.
&lt;/p>
$$
|\psi_2\rangle = \frac{1}{N} \sum_{x=0}^{N-1} \sum_{y=0}^{N-1} |x\rangle |y\rangle |x \times G + y \times K\rangle
$$
&lt;p>
Aquí lo importante es que, como $K = k \times G$, se puede reescribir como $f(x, y) = (x + y \cdot k) \times G$.&lt;/p>
&lt;p>&lt;strong>Paso 3: Medición del tercer registro&lt;/strong>
Al medir el tercer registro, este colapsa en algún punto $R$ sobre la curva elíptica. En consecuencia, el primer y el segundo registro colapsan en un estado de superposición de pares $(x, y)$ que satisfacen $x + y \cdot k \equiv c \pmod{N}$ (donde $c$ es una constante).
&lt;/p>
$$
|\psi_3\rangle = \frac{1}{\sqrt{N}} \sum_{y=0}^{N-1} |c - y \cdot k \pmod{N}\rangle |y\rangle
$$
&lt;p>&lt;strong>Paso 4: Aplicación de la Transformada de Fourier Cuántica (QFT)&lt;/strong>
Este estado tiene una periodicidad relacionada con el período $k$. Al aplicar aquí la Transformada de Fourier Cuántica Inversa (Inverse QFT), se causa una interferencia de fase, convirtiendo la información del período en amplitud.&lt;/p>
&lt;p>&lt;strong>Paso 5: Medición y posprocesamiento clásico&lt;/strong>
Al medir el primer y segundo registros, se obtiene con alta probabilidad un valor que contiene información sobre $k$. Aplicando algoritmos clásicos de teoría de números, como las fracciones continuas (Continued Fractions), al valor medido, se puede determinar completamente la clave privada desconocida $k$.&lt;/p>
&lt;p>El número de compuertas cuánticas necesarias para todo este proceso es $\mathcal{O}(\log^3 N)$, lo que desvela la clave privada a una velocidad increíblemente más alta que la búsqueda $\mathcal{O}(\sqrt{N})$ con una computadora clásica.&lt;/p>
&lt;h3 id="23-algoritmo-de-grover-grovers-algorithm-y-su-impacto-en-las-funciones-hash">2.3. Algoritmo de Grover (Grover&amp;rsquo;s Algorithm) y su impacto en las funciones hash
&lt;/h3>&lt;p>Otra amenaza es el &lt;strong>Algoritmo de Grover&lt;/strong>, propuesto por Lov Grover en 1996. Esto tiene un impacto importante en las funciones hash (por ejemplo: SHA-256).&lt;/p>
&lt;p>En blockchain, las funciones hash se utilizan para garantizar la integridad de los datos, generar direcciones y como base para la minería &lt;strong>PoW (Proof of Work)&lt;/strong> en Bitcoin. Calcular a la inversa una función hash (cálculo de preimagen) puede considerarse como un &amp;ldquo;problema de búsqueda en base de datos no estructurada&amp;rdquo; donde, dado un valor de salida específico $y$, se busca un valor de entrada $x$ tal que $H(x) = y$.&lt;/p>
&lt;p>En una computadora clásica, para encontrar la respuesta correcta entre $N$ posibilidades, se requieren en promedio $\frac{N}{2}$ intentos, y en el peor de los casos, $N$ intentos. Es decir, la complejidad computacional es $\mathcal{O}(N)$.
Sin embargo, el algoritmo de Grover utiliza una técnica cuántica llamada &amp;ldquo;Amplificación de Amplitud (Amplitude Amplification)&amp;rdquo;. Al amplificar iterativamente la amplitud de probabilidad del estado que es la respuesta correcta entre todas las posibilidades en estado de superposición, se reduce el tiempo de búsqueda a la raíz cuadrada.&lt;/p>
$$
\text{Complejidad del algoritmo de Grover} = \mathcal{O}(\sqrt{N})
$$
&lt;p>En el caso de SHA-256, como $N = 2^{256}$, una búsqueda exhaustiva clásica requeriría aproximadamente $2^{256}$ intentos. Pero si se usa el algoritmo de Grover, bastaría con $\sqrt{2^{256}} = 2^{128}$ intentos. Esto significa que, para una computadora cuántica, una función hash de 256 bits &lt;strong>se reduce a la mitad de su nivel de seguridad, efectivamente a 128 bits&lt;/strong>.&lt;/p>
&lt;h4 id="231-sobrevivirá-sha-256-quantum-supremacy-in-hashing">2.3.1. ¿Sobrevivirá SHA-256? (Quantum Supremacy in Hashing)
&lt;/h4>&lt;p>Aunque la seguridad se reduce a la mitad, una &amp;ldquo;seguridad de 128 bits&amp;rdquo; sigue siendo extremadamente sólida. $2^{128}$ operaciones es una cifra astronómica desde el nivel tecnológico actual y requeriría una escala de tiempo de la edad del universo.
Por lo tanto, se cree ampliamente que &lt;strong>&amp;ldquo;SHA-256 mantendrá una seguridad práctica incluso frente a computadoras cuánticas&amp;rdquo;&lt;/strong>. Si en el futuro es necesario aumentar el margen de seguridad, duplicando simplemente la longitud de salida del hash (por ejemplo, pasando de SHA-256 a SHA-512), se puede mantener la seguridad clásica de 256 bits en el mundo cuántico.&lt;/p>
&lt;p>En conclusión, la amenaza cuántica a las funciones hash se puede considerar &amp;ldquo;leve y manejable&amp;rdquo;, mientras que la amenaza a la criptografía de clave pública (ECDSA) se puede considerar &amp;ldquo;letal&amp;rdquo;.&lt;/p>
&lt;hr>
&lt;h2 id="3-análisis-detallado-del-impacto-en-criptoactivos-actuales-bitcoin-ethereum">3. Análisis detallado del impacto en criptoactivos actuales (Bitcoin, Ethereum)
&lt;/h2>&lt;p>En un mundo donde es posible descifrar ECDSA con computadoras cuánticas, ¿a qué vulnerabilidades específicas se enfrentan las redes de criptoactivos? Aquí haremos un análisis detallado, tomando el mecanismo de Bitcoin como ejemplo, desde la perspectiva del &lt;strong>&amp;ldquo;momento de la exposición de la clave pública&amp;rdquo;&lt;/strong>.&lt;/p>
&lt;h3 id="31-generación-de-direcciones-y-privacidad-de-las-claves-públicas">3.1. Generación de direcciones y &amp;ldquo;privacidad&amp;rdquo; de las claves públicas
&lt;/h3>&lt;p>Las direcciones de Bitcoin (P2PKH: Pay-to-Public-Key-Hash o P2WPKH: Pay-to-Witness-Public-Key-Hash) no utilizan la clave pública directamente, sino un hash repetido de la clave pública.&lt;/p>
$$
\text{Bitcoin Address} = \text{Base58Check}(\text{RIPEMD160}(\text{SHA256}(\text{Public Key})))
$$
&lt;p>Como se mencionó anteriormente, debido a que las funciones hash son resistentes a los ataques cuánticos (algoritmo de Grover), deducir a la inversa la &amp;ldquo;clave pública&amp;rdquo; original a partir de la &amp;ldquo;dirección&amp;rdquo; (valor hash) es imposible incluso con una computadora cuántica.
En otras palabras, para una &lt;strong>&amp;ldquo;dirección no utilizada (una desde la que nunca se han enviado fondos)&amp;rdquo;&lt;/strong>, la clave pública no se ha expuesto en la cadena de bloques en absoluto, y solo está registrado el valor hash. Por lo tanto, dado que se desconoce la clave pública, no hay un objetivo sobre el cual ejecutar el algoritmo de Shor y es imposible determinar la clave privada. Las carteras en este estado pueden considerarse cuánticamente seguras (Quantum-safe).&lt;/p>
&lt;h3 id="32-vulnerabilidad-letal-al-enviar-transacciones-ataque-front-running">3.2. Vulnerabilidad letal al enviar transacciones (Ataque Front-running)
&lt;/h3>&lt;p>El problema surge en el momento en que un usuario transfiere fondos.
Al transmitir una transacción a la red, junto con la firma digital, el usuario debe &lt;strong>incluir su propia clave pública dentro de los datos de la transacción para su verificación y exponerla a toda la red&lt;/strong>.&lt;/p>
&lt;div class="mermaid">sequenceDiagram
participant User as "Usuario (Alice)"
participant Mempool as "Mempool (Grupo de transacciones no confirmadas)"
participant QuantumAttacker as "Atacante Cuántico"
participant Miner as "Minero (Generación de bloques)"
User->>Mempool: Enviar transacción (incluye clave pública + firma)
Mempool-->>QuantumAttacker: Interceptar la clave pública en la red
note right of QuantumAttacker: Ejecutar el algoritmo de Shor en minutos&lt;br/>(Calcular clave privada desde la pública)
QuantumAttacker->>QuantumAttacker: Generar nueva firma con la clave privada de Alice
QuantumAttacker->>Mempool: Transmitir transferencia fraudulenta con tarifas mineras más altas
Miner->>Miner: Priorizar la transacción fraudulenta con tarifas (Gas) más altas e incluirla en el bloque
Miner-->>User: Registrar en la cadena de bloques (Alice pierde sus fondos)&lt;/div>
&lt;p>Una vez que se envía la clave pública a la Mempool (la sala de espera de transacciones no confirmadas), esos datos se comparten con nodos en todo el mundo. Si un atacante poseyera una computadora cuántica ultrarrápida, podría robar los fondos mediante el siguiente proceso:&lt;/p>
&lt;ol>
&lt;li>Interceptar la transacción de un usuario legítimo (Alice) desde la Mempool y &lt;strong>extraer la clave pública&lt;/strong>.&lt;/li>
&lt;li>Ejecutar el algoritmo de Shor para &lt;strong>calcular la clave privada a partir de la clave pública en cuestión de minutos (antes de que se apruebe el bloque)&lt;/strong>.&lt;/li>
&lt;li>Usar la clave privada obtenida para &lt;strong>crear una transacción falsa&lt;/strong> que envíe los fondos de Alice a la dirección del atacante.&lt;/li>
&lt;li>Enviar esta transacción falsa a la red con una &lt;strong>tarifa minera (Fee) mucho más alta&lt;/strong> que la de la transacción original de Alice.&lt;/li>
&lt;/ol>
&lt;p>Guiados por los incentivos económicos, los mineros priorizan incluir transacciones con altas tarifas en los bloques. Como resultado, la transferencia fraudulenta del atacante es confirmada (Confirm) primero, y la transferencia legítima de Alice se descarta por &amp;ldquo;fondos insuficientes (Double Spend)&amp;rdquo;.
Esta serie de eventos se conoce como &lt;strong>Ataque Front-running (Front-running Attack)&lt;/strong>, y en un mundo con computadoras cuánticas prácticas, causaría una situación aterradora donde los fondos son robados por un hacker en el mismo momento en que alguien presiona el botón de enviar.&lt;/p>
&lt;h3 id="33-peligros-de-la-reutilización-de-direcciones-y-direcciones-antiguas-p2pk">3.3. Peligros de la reutilización de direcciones y direcciones antiguas (P2PK)
&lt;/h3>&lt;p>Un problema aún más grave es que en direcciones desde las que se han transferido fondos al menos una vez en el pasado (por ejemplo, si se reutilizan como direcciones de cambio), la clave pública ya está registrada de forma permanente en la cadena de bloques. Sin siquiera esperar a enviar una transacción, estas corren un peligro constante de que su clave privada sea calculada y se roben sus saldos.&lt;/p>
&lt;p>Además, en el formato dominante &lt;strong>P2PK (Pay-to-Public-Key)&lt;/strong> de los años 2009-2010, que incluye las recompensas de minería tempranas de Satoshi Nakamoto (más de 1 millón de BTC), la clave pública en sí se registraba directamente en la cadena de bloques como dirección en lugar del hash. Estos enormes volúmenes de bitcoins inactivos son los blancos más fáciles para las computadoras cuánticas y podrían ser robados de golpe para un &amp;ldquo;dumping&amp;rdquo; masivo en el mercado, potencialmente causando un desplome colosal del precio.&lt;/p>
&lt;hr>
&lt;h2 id="4-escenario-de-transición-a-la-criptografía-post-cuántica-pqc-post-quantum-cryptography">4. Escenario de transición a la Criptografía Post-Cuántica (PQC: Post-Quantum Cryptography)
&lt;/h2>&lt;p>Para evitar la catástrofe del &amp;ldquo;Q-Day (el día de la vulneración criptográfica por computadoras cuánticas)&amp;rdquo;, la comunidad de blockchain y criptografía planea migrar a una &lt;strong>Criptografía Post-Cuántica (PQC)&lt;/strong> que sea difícil de descifrar incluso mediante algoritmos cuánticos.
El Instituto Nacional de Estándares y Tecnología de los EE. UU. (NIST) ha estado avanzando en el proceso de estandarización de PQC durante años y, tras varias rondas de rigurosas evaluaciones, se han seleccionado algunos prometedores métodos criptográficos como estándares finales.&lt;/p>
&lt;p>Explicaremos detalladamente los principales algoritmos PQC, que están ganando atención como alternativas a las firmas digitales en blockchain, junto con sus mecanismos matemáticos.&lt;/p>
&lt;h3 id="41-firmas-basadas-en-hash-hash-based-signatures">4.1. Firmas basadas en Hash (Hash-Based Signatures)
&lt;/h3>&lt;p>Las firmas basadas en hash son un método criptográfico cuya seguridad se basa exclusivamente en una base muy simple y sólida: &amp;ldquo;la resistencia a colisiones de las funciones hash&amp;rdquo;. Dado que la seguridad de las funciones hash contra las computadoras cuánticas ya está comprobada (como mencionamos, tener un margen de seguridad de 128 bits es suficiente), es un enfoque extremadamente confiable.
Los ejemplos representativos incluyen las &lt;strong>Firmas de Lamport (Lamport Signatures)&lt;/strong>, su versión extendida WOTS (Winternitz One-Time Signature) y la candidata estandarizada por el NIST &lt;strong>SPHINCS+&lt;/strong> (ahora llamada SLH-DSA como FIPS 205).&lt;/p>
&lt;h4 id="411-detalles-matemáticos-de-las-firmas-de-lamport-one-time-signature">4.1.1. Detalles matemáticos de las firmas de Lamport (One-Time Signature)
&lt;/h4>&lt;p>Echemos un vistazo más detallado al mecanismo matemático de las firmas de Lamport.
Asumamos una función hash $H: \{0, 1\}^* \to \{0, 1\}^{256}$.&lt;/p>
&lt;p>&lt;strong>[Generación de claves]&lt;/strong>
Alice (la emisora) genera 256 pares de claves privadas utilizando un generador de números aleatorios verdadero (TRNG).
&lt;/p>
$$
\text{sk}_{i,0} \in \{0, 1\}^{256}, \quad \text{sk}_{i,1} \in \{0, 1\}^{256} \quad (1 \le i \le 256)
$$
&lt;p>
Con esto, la clave privada $\text{sk}$ consta de un total de 512 cadenas de 256 bits (tamaño: $512 \times 32 = 16,384$ bytes).&lt;/p>
&lt;p>A continuación, se calcula la clave pública $\text{pk}$. Cada componente de la clave privada es hasheado individualmente.
&lt;/p>
$$
\text{pk}_{i,0} = H(\text{sk}_{i,0}), \quad \text{pk}_{i,1} = H(\text{sk}_{i,1})
$$
&lt;p>
La clave pública es, del mismo modo, de $16,384$ bytes. Esta se expone a la red de blockchain.&lt;/p>
&lt;p>&lt;strong>[Generación de firmas]&lt;/strong>
Para firmar los datos de transacción $M$, Alice primero calcula su valor hash.
&lt;/p>
$$
h = H(M) \in \{0, 1\}^{256}
$$
&lt;p>
Sea el $i$-ésimo bit del valor hash $h$ $h_i \in \{0, 1\}$.
La firma $\sigma$ de Alice es el conjunto de los componentes de la clave privada que corresponden a cada bit $h_i$.
&lt;/p>
$$
\sigma = (\text{sk}_{1, h_1}, \text{sk}_{2, h_2}, \dots, \text{sk}_{256, h_{256}})
$$
&lt;p>
Es decir, si el bit del hash del mensaje es &lt;code>0&lt;/code>, se expone $\text{sk}_{i,0}$, y si es &lt;code>1&lt;/code>, se expone $\text{sk}_{i,1}$. El tamaño de la firma será $256 \times 32 = 8,192$ bytes.&lt;/p>
&lt;p>&lt;strong>[Verificación de firmas]&lt;/strong>
El minero (verificador) realiza la verificación usando la transacción recibida $M$, la firma $\sigma = (s_1, s_2, \dots, s_{256})$ y la clave pública $\text{pk}$.
Recalcula el hash de la transacción $h = H(M)$ y comprueba si el hash de cada $s_i$ coincide con el correspondiente elemento de la clave pública $\text{pk}_{i, h_i}$.
&lt;/p>
$$
H(s_i) \overset{?}{=} \text{pk}_{i, h_i} \quad (\text{para todo } 1 \le i \le 256)
$$
&lt;p>Este proceso es matemáticamente extremadamente simple, y es imposible falsificar una firma a menos que una computadora cuántica pueda invertir $H$. Sin embargo, una vez que se realiza una firma, la mitad de la clave privada se expone a la red. Si se firma otro mensaje con el mismo par de claves, las claves privadas expuestas se combinan, dejando espacio para la falsificación por parte de los atacantes, de ahí la fuerte restricción de que &amp;ldquo;solo se puede usar una vez (One-Time)&amp;rdquo;.
Para hacer esto práctico, se desarrollaron tecnologías como &lt;strong>XMSS&lt;/strong>, que agrupa múltiples claves de un solo uso en una sola clave pública raíz utilizando árboles de Merkle, y la firma sin estado &lt;strong>SPHINCS+&lt;/strong>, pero tienen la desventaja de que el tamaño de la firma alcanza decenas de kilobytes.&lt;/p>
&lt;h3 id="42-criptografía-basada-en-retículos-lattice-based-cryptography">4.2. Criptografía basada en retículos (Lattice-Based Cryptography)
&lt;/h3>&lt;p>Actualmente, la corriente principal y más esperada en PQC, y la adoptada como principal estándar del NIST (FIPS 204: ML-DSA / anteriormente CRYSTALS-Dilithium y Falcon, etc.), es la &lt;strong>Criptografía basada en retículos&lt;/strong>.&lt;/p>
&lt;p>La seguridad de la criptografía basada en retículos depende de problemas matemáticamente probados como el &amp;ldquo;Problema del Vector Más Corto en retículos multidimensionales (SVP: Shortest Vector Problem)&amp;rdquo; y el &amp;ldquo;Problema del Aprendizaje con Errores (LWE: Learning With Errors)&amp;rdquo;. No se han encontrado algoritmos que resuelvan eficientemente problemas de retículos incluso con computadoras cuánticas.&lt;/p>
&lt;p>&lt;strong>Modelo matemático del LWE (Learning With Errors):&lt;/strong>
La idea básica del problema LWE es hacer que un sistema de ecuaciones lineales sea drásticamente más difícil de resolver al agregar intencionalmente un &amp;ldquo;pequeño ruido (error)&amp;rdquo;.
Sea el vector secreto $\mathbf{s} \in \mathbb{Z}_q^n$.
Se toma una matriz pública masiva $\mathbf{A} \in \mathbb{Z}_q^{m \times n}$ elegida al azar, y un vector de ruido pequeño agregado intencionalmente $\mathbf{e} \in \mathbb{Z}_q^m$.
La clave pública $\mathbf{b}$ se calcula de la siguiente manera:&lt;/p>
$$
\mathbf{b} = \mathbf{A}\mathbf{s} + \mathbf{e} \pmod{q}
$$
&lt;p>Aun cuando la matriz $\mathbf{A}$ y el vector $\mathbf{b}$ (clave pública) sean públicos, calcular inversamente la clave secreta $\mathbf{s}$ a partir de ellos es muy difícil debido a la presencia del ruido $\mathbf{e}$. Sin ruido, podría resolverse con simple eliminación de Gauss, pero el ruido provoca que el espacio de búsqueda en todas las dimensiones aumente explosivamente, lo que proporciona una seguridad sólida frente a computadoras clásicas y cuánticas.
En algoritmos reales utilizados en blockchain, etc. (como Dilithium), se utiliza &lt;strong>Ring-LWE (o Module-LWE)&lt;/strong> expandido sobre anillos polinómicos para reducir el tamaño de las claves y acelerar los cálculos.&lt;/p>
&lt;ul>
&lt;li>&lt;strong>Ventajas&lt;/strong>: Comparado con las firmas basadas en hash, los tamaños de las claves públicas y las firmas son relativamente pequeños (alrededor de unos pocos kilobytes), y la velocidad de cálculo para la generación y verificación de firmas es muy rápida (igual o mayor a ECDSA).&lt;/li>
&lt;li>&lt;strong>Desventajas&lt;/strong>: Debido a que la estructura matemática es compleja y el período histórico de validación es corto, el riesgo de que se descubran nuevos algoritmos de descifrado en el futuro no es cero.&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h2 id="5-retos-técnicos-en-la-transición-a-pqc-del-blockchain">5. Retos técnicos en la transición a PQC del blockchain
&lt;/h2>&lt;p>El mero hecho de que existan los algoritmos PQC (como Dilithium o SPHINCS+) no significa que se puedan implementar mañana en Bitcoin o Ethereum. Existen varios desafíos importantes específicos de los sistemas descentralizados.&lt;/p>
&lt;h3 id="51-aumento-en-el-tamaño-de-firmas-y-el-colapso-de-la-escalabilidad">5.1. Aumento en el tamaño de firmas y el colapso de la escalabilidad
&lt;/h3>&lt;p>La mayor barrera para la introducción de PQC es el crecimiento drástico del tamaño de datos.
Mientras que el tamaño de las firmas ECDSA actuales es de unos 70 bytes, en Dilithium (ML-DSA), de criptografía basada en retículos, el tamaño de la firma oscila entre unos 2,420 y 4,595 bytes (dependiendo del nivel de seguridad), y la clave pública supera los 1,300 bytes. Las firmas basadas en hash SPHINCS+ llegan a decenas de miles de bytes tan solo para la firma.&lt;/p>
&lt;p>Si Bitcoin introdujera PQC manteniendo el límite actual de tamaño de bloque (aproximadamente 4 MB de peso incluyendo SegWit), el número de transacciones que podrían incluirse en un bloque disminuiría drásticamente. El rendimiento de la red (TPS: Transactions Per Second) caería de manera devastadora y la congestión en los pagos se volvería la norma.
Resolver esto requiere aumentar masivamente el tamaño del bloque, pero esto a su vez elevaría los requerimientos de almacenamiento y ancho de banda de los nodos completos, dificultaría que las personas ejecuten nodos por sí mismas y, en consecuencia, resultaría en el dilema de propiciar &lt;strong>la centralización de la red&lt;/strong>.&lt;/p>
&lt;div class="mermaid">pie title "Comparación del tamaño de datos de firmas en blockchain (Diagrama conceptual)"
"ECDSA (Aprox. 70 Bytes)" : 2
"Dilithium ML-DSA (Aprox. 2,500 Bytes)" : 58
"SPHINCS+ (Aprox. 17,000 Bytes)" : 40&lt;/div>
&lt;p>&lt;em>(※ El abultamiento de datos en las transacciones debido a la introducción de PQC es un cuello de botella letal para la escalabilidad)&lt;/em>&lt;/p>
&lt;h3 id="52-impacto-en-la-ethereum-virtual-machine-evm-y-contratos-precompilados">5.2. Impacto en la Ethereum Virtual Machine (EVM) y contratos precompilados
&lt;/h3>&lt;p>En plataformas de contratos inteligentes Turing-completos como Ethereum, la adopción de PQC exige una actualización fundamental de la EVM (Ethereum Virtual Machine).
La EVM actual provee un contrato precompilado (Precompiled Contract) llamado &lt;code>ecrecover&lt;/code> (dirección: &lt;code>0x01&lt;/code>) para la verificación de firmas ECDSA, que está optimizado para realizar verificaciones de firmas con un coste de gas muy bajo (3000 Gas).&lt;/p>
&lt;p>No obstante, los nuevos algoritmos de criptografía de retículo como Dilithium y Falcon involucran cálculos polinómicos y matriciales complejos. Si se implementan usando solamente los códigos de operación (Opcodes) actuales de la EVM, una simple verificación de firma podría consumir desde millones hasta decenas de millones de gas. A este nivel, el límite de gas por bloque (actualmente de unos 30 millones de Gas) se agotaría en una sola transacción.&lt;/p>
&lt;p>Para eludir esto, la red deberá llevar a cabo un &amp;ldquo;Hard Fork&amp;rdquo; (Bifurcación dura) para integrar un nuevo Precompiled Contract dedicado a la verificación PQC (por ejemplo, asignar &lt;code>0x10&lt;/code> para DilithiumVerify) directamente en la EVM. Esto requiere un proceso de largo plazo donde los desarrolladores principales de cada cliente de Ethereum (Geth, Nethermind, Erigon, etc.) colaboren en implementaciones optimizadas de lógicas de verificación criptográfica de retículos a nivel de lenguajes como C++, Go, y Rust, así como ejecutar auditorías de seguridad.&lt;/p>
&lt;h3 id="53-dificultad-para-lograr-consensos-a-través-de-hard-forks">5.3. Dificultad para lograr consensos a través de Hard Forks
&lt;/h3>&lt;p>Cambiar el algoritmo de firma subyacente requiere una actualización de todo el protocolo de la red, un &lt;strong>Hard Fork (Bifurcación dura)&lt;/strong>. Sin embargo, en comunidades que valoran mucho los principios de &amp;ldquo;no cambiar las reglas y mantenerse descentralizados&amp;rdquo;, como Bitcoin, el proceso para alcanzar un consenso es políticamente muy desafiante. Desde la proposición inicial de un BIP (Bitcoin Improvement Proposal) para migrar a PQC hasta su implementación definitiva, se requerirán años de debates y pruebas rigurosas.&lt;/p>
&lt;hr>
&lt;h2 id="6-cuándo-llegará-el-q-day-hoja-de-ruta-hacia-la-transición">6. ¿Cuándo llegará el &amp;ldquo;Q-Day&amp;rdquo;? Hoja de ruta hacia la transición
&lt;/h2>&lt;p>¿Cuándo llegará el &amp;ldquo;Q-Day&amp;rdquo;, el día en que las computadoras cuánticas logren descifrar completamente la criptografía de curva elíptica de 256 bits?
Aunque las opiniones difieren entre investigadores, muchos expertos prevén que será &lt;strong>&amp;ldquo;entre mediados de la década de 2030 y 2040&amp;rdquo;&lt;/strong>, cuando podrían aparecer computadoras cuánticas a gran escala con al menos miles o decenas de miles de cúbits lógicos estables (cúbits que toleran el ruido con corrección de errores). Sin embargo, dependiendo de descubrimientos disruptivos en arquitecturas de hardware o el hallazgo de algoritmos cuánticos más eficientes, no se descarta la posibilidad de que se adelante (alrededor del 2030).&lt;/p>
&lt;p>La hoja de ruta que debería seguir el ecosistema de criptoactivos antes de que sea demasiado tarde es la siguiente:&lt;/p>
&lt;h3 id="fase-1-firmas-híbridas-y-abstracción-de-cuentas-ahora-a-2028">Fase 1: Firmas híbridas y abstracción de cuentas (Ahora a ~2028)
&lt;/h3>&lt;p>En los círculos actuales de desarrollo de blockchain, especialmente entre los desarrolladores de Ethereum (como Vitalik Buterin), se están estudiando las &lt;strong>&amp;ldquo;firmas híbridas&amp;rdquo;&lt;/strong> que combinan ECDSA con PQC (firmas basadas en hash o criptografía basada en retículos). Este enfoque implica adjuntar en la transacción ambas firmas: la de ECDSA existente (que hoy es segura) y la firma PQC. Así, si una de las dos falla, la seguridad se mantiene íntegra.
Además, aprovechando la abstracción de cuentas (Account Abstraction, ERC-4337), se avanza en iniciativas que permiten integrar firmas PQC como opción de consentimiento (opt-in para los usuarios) mediante carteras de contratos inteligentes sin necesidad de esperar un hard fork en el nivel del protocolo base.&lt;/p>
&lt;h3 id="fase-2-uso-de-pruebas-de-conocimiento-cero-zk-rollups-2025-en-adelante">Fase 2: Uso de Pruebas de Conocimiento Cero (ZK-Rollups) (2025 en adelante)
&lt;/h3>&lt;p>La carta clave que se espera para resolver la mayor debilidad de la PQC, el &amp;ldquo;abultamiento del tamaño de los datos de firmas&amp;rdquo;, es el uso de tecnologías de Capa 2 (Layer 2) conocidas como &lt;strong>ZK-Rollups (Pruebas de Conocimiento Cero)&lt;/strong>.
En lugar de registrar directamente las enormes firmas PQC en la Layer 1 (cadena principal), innumerables transacciones PQC se agrupan y verifican en la Layer 2. A continuación, mediante pruebas como ZK-SNARKs o ZK-STARKs, se comprimen todas en una diminuta pieza de &amp;ldquo;datos de prueba (Proof)&amp;rdquo; para grabarse en la Layer 1.
Cabe señalar que algunas configuraciones de SNARKs (como Groth16) son inherentemente vulnerables frente a computadoras cuánticas, por lo que la adopción de &lt;strong>ZK-STARKs&lt;/strong>, dependientes de funciones hash que poseen resistencia cuántica, se vuelve esencial.&lt;/p>
&lt;h3 id="fase-3-hard-fork-a-nivel-del-protocolo-alrededor-de-2030">Fase 3: Hard Fork a Nivel del Protocolo (Alrededor de 2030)
&lt;/h3>&lt;p>En una etapa donde la estandarización PQC del NIST esté totalmente asimilada, se desarrollen librerías consolidadas en el sector, y el software haya sido suficientemente probado, es previsible que cadenas principales como Bitcoin y Ethereum implementen un Hard Fork para cambiar sus firmas por defecto al ecosistema PQC de manera definitiva. Durante este período de transición, presenciaríamos inmensas campañas de anuncios animando a los usuarios a &amp;ldquo;transferir fondos de carteras antiguas a carteras nuevas y compatibles con PQC&amp;rdquo;.&lt;/p>
&lt;h3 id="ejemplos-de-proyectos-pioneros">Ejemplos de Proyectos Pioneros
&lt;/h3>&lt;p>Algunos proyectos de blockchain han sido proactivos ante esta amenaza cuántica y afirman poseer resistencia cuántica desde sus etapas de desarrollo tempranas.&lt;/p>
&lt;ul>
&lt;li>&lt;strong>QRL (Quantum Resistant Ledger)&lt;/strong>: Una de las primeras blockchains que implementó nativamente PQC en la capa de protocolo base utilizando XMSS (Esquema Extendido de Firma de Merkle), un esquema PQC basado en hashes.&lt;/li>
&lt;li>&lt;strong>Algorand / Cellframe&lt;/strong>: Proyectos con una arquitectura modular para su capa criptográfica con vistas a facilitar las actualizaciones de PQC en el futuro, investigando activamente la integración de la criptografía basada en retículos.&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h2 id="7-conclusión-el-futuro-de-los-criptoactivos-y-la-protección-de-nuestros-activos">7. Conclusión: El futuro de los criptoactivos y la protección de nuestros activos
&lt;/h2>&lt;p>La llegada de la &amp;ldquo;era post-cuántica&amp;rdquo; ya ha rebasado los dominios imaginarios de la ciencia ficción para transformarse en un desafío técnico concreto y una amenaza inminente frente a nuestros sistemas criptográficos del mundo real.&lt;/p>
&lt;p>Las dos grandes espadas computacionales del mundo cuántico —el Algoritmo de Shor y el Algoritmo de Grover— amenazan los pilares de la criptografía de clave pública y las funciones hash de las blockchains modernas. En particular, la debilidad de ECDSA es letal, haciendo que la migración hacia Criptografía Post-Cuántica (PQC) sea el único camino ineludible para eludir el hurto masivo de fondos vía ataques front-running.&lt;/p>
&lt;p>Sin embargo, ni el ámbito tecnológico ni la comunidad de blockchain observan esto sin accionar. La selección y normalización de algoritmos PQC, como la criptografía basada en retículos y las firmas fundamentadas en hashes, están evolucionando con certidumbre; además, ya comienzan a dibujarse las formas en que superaremos la gran barrera del &amp;ldquo;aumento colosal de volumen de datos&amp;rdquo;, haciendo uso de ZK-STARKs (Pruebas de Conocimiento Cero) y soluciones de escalado en Capa 2.&lt;/p>
&lt;p>No existe necesidad de que los inversores o usuarios comunes de criptoactivos entren en pánico y liquiden todos sus fondos en estos momentos. Lo vital es cultivar un conocimiento elemental y una actitud preventiva basada en los siguientes puntos:&lt;/p>
&lt;ul>
&lt;li>&lt;strong>Evitar la reutilización de direcciones&lt;/strong>: No atesorar fondos por períodos prolongados en &amp;ldquo;direcciones usadas (que se hayan empleado alguna vez para realizar una transacción, por lo que su clave pública ha sido expuesta permanentemente en la cadena)&amp;rdquo;. Una regla esencial no solo para resguardar la privacidad, sino también por pura seguridad cuántica.&lt;/li>
&lt;li>&lt;strong>Atención a las tendencias tecnológicas&lt;/strong>: Permanecer sintonizados a discusiones vitales (por ej. los BIP de Bitcoin y EIP de Ethereum) respecto a la transición PQC o los posibles Hard Forks, a fin de ser capaces de migrar nuestras carteras correctamente cuando llegue el instante apropiado.&lt;/li>
&lt;/ul>
&lt;p>La historia del blockchain consiste, en gran medida, en una evolución constante propiciada por su resiliencia contra amenazas tecnológicas inéditas. Tal como se superaron las crisis de la escalabilidad o el impacto medioambiental (con el salto del PoW al PoS), es más que seguro que el ecosistema completo investigará y se ajustará a este inédito peligro cuántico.
Nuestra expectación se deposita en visualizar un porvenir donde el nacimiento de la computación cuántica —el nuevo apogeo del ingenio humano— y el blockchain (la tecnología de la confianza descentralizada) logren amoldarse armoniosamente para constituir sistemas invulnerables de orden superior, lejos de sucumbir en un colapso.&lt;/p>
&lt;hr>
&lt;p>&lt;em>Referencias y enlaces relacionados:&lt;/em>&lt;/p>
&lt;ul>
&lt;li>National Institute of Standards and Technology (NIST) - Post-Quantum Cryptography Standardization Project&lt;/li>
&lt;li>Shor, P. W. (1994). Algorithms for quantum computation: discrete logarithms and factoring.&lt;/li>
&lt;li>Grover, L. K. (1996). A fast quantum mechanical algorithm for database search.&lt;/li>
&lt;li>Buterin, V. (2024). How to hard-fork to save most users&amp;rsquo; funds in a quantum emergency.&lt;/li>
&lt;/ul></description></item></channel></rss>