Computación
La física cuántica logra proteger una cadena de bloques frente a un ordenador cuántico
Por muy segura que sea la tecnología blockchain ahora mismo, sus garantías desaparecerán en cuanto se encienda el primer ordenador cuántico. Un experimento a pequeña escala ha logrado hacerla resistente a esta amenaza gracias a las propias leyes de la física
Actualmente, el interés en las criptomonedas no podría ser mayor. Y los bancos, las empresas y los gobiernos corren para entender la tecnología y aprender cómo beneficiarse de ella. Como resultado, el mercado de las monedas criptográficas ha empezado a aumentar exponencialmente, y el mes pasado alcanzó una asombrosa valoración de mercado de casi 80.000 millones de euros. Así que parece que las criptomonedas van a jugar un papel cada vez más importante en el sistema financiero mundial.
Pero hay un problema. El gran desafío del efectivo digital consiste en garantizar que todo el mundo lo utilice con honestidad. Y parece que la tecnología de cadenas de bloques, o blockchain, puede ofrecer una buena solución, ya que garantiza la honestidad mediante técnicas criptográficas irrompibles, excepto por ataques de fuerza bruta.
Y ahí radica el problema. A los ordenadores convencionales les cuesta mucho hacer un ataque de fuerza bruta, pero esto será pan comido para los futuros ordenadores cuánticos. Gracias a su gran potencia de cálculo, las criptomonedas se volverán más vulnerables a los ataques.
Así que es necesario encontrar una forma de asegurar las cadenas de bloques frente a la potencia de los ordenadores cuánticos. Y eso es justo lo que está intentando el investigador del Centro Cuántico Ruso en Moscú Evgeny Kiktenko. Junto a su equipo, ha diseñado, construido y probado un sistema cuántico de cadenas de bloque en el que la seguridad está garantizada por medio de la mecánica cuántica. Lo han desarrollado con un sistema estándar de criptografía cuántica que ya está disponible comercialmente.
Primero algunos antecedentes. Las cadenas de bloques registran una lista de transacciones que evita el uso fraudulento, como la manipulación o el uso doble. Permiten que cualquier ordenador haga un seguimiento de esta lista al agregarla en forma de bloque, el cual se encripta en forma de número hash.
El proceso de encriptación es importante, ya que consiste en un algoritmo fácil de calcular pero difícil de ejecutar en sentido inverso (como la factorización). El valor de hash que genera es una propiedad única del bloque, y cualquier manipulación de los registros resultaría obvia de inmediato porque esto modificaría el hash.
Después, las nuevas transacciones se agrupan en nuevo bloque y son añadidas al valor del hash existente, que se encripta para generar un nuevo hash para el nuevo bloque, el cual se agrega a la lista de transacciones cuando es encriptada, y así sucesivamente. El resultado es una cadena de bloques que contiene los valores de hash de todos los bloques anteriores, de allí el término cadena de bloques.
Todos los ordenadores que almacenan estos bloques comparan regularmente sus valores de hash para asegurarse de que todos concuerden. Cualquier equipo que no concuerde con el resto de la red descarta los registros problemáticos.
Este enfoque es bueno, pero no es perfecto. Una manera de burlar a este sistema es modificar la lista de transacciones dejando inctacto el hash original. Esto se puede hacer por fuerza bruta, en otras palabras cambiando un registro, encriptando el resultado, y comprobando si el valor del hash sigue igual. Y si no, se intenta una y otra vez hasta encontrar un hash que coincida.
La seguridad de las cadenas de bloques estriba en la idea de que los ordenadores convencionales necesitarían una escala de tiempo equiparable a la de la edad del universo para realizar este tipo de ataque. En cambio, los ordenadores cuánticos son mucho más rápidos y por lo tanto representan una amenaza mucho mayor.
El equipo de Kiktenko tiene una solución que podría evitarlos. Su tecnología de cadena de bloque es sutilmente diferente. Una transacción entre dos personas contiene la información sobre el remitente, el receptor, el momento de la creación, el importe a transferir y una lista de transacciones de referencia que justifica que el remitente tiene fondos suficientes para la operación.
Esta transacción se envía a todos los ordenadores de la red monetaria que la almacenan hasta que, pasado cierto tiempo predefinido, digamos 10 minutos, las transacciones se agrupan en un bloque. La siguiente etapa utiliza un algoritmo que permite a todas las partes confirmar que la lista de transacciones es honesta. Está basada en la prueba de la década de 1980 en la que todos comparten su información con todos los demás. A continuación, comunican la información que han recibido de las otras partes de la red, lo que permite a todos ver quién ha dicho qué. Por último, todas las partes comparten esta información en otra ronda y así sucesivamente hasta que hayan confirmado que todos los ordenadores tienen la misma información.
La prueba es que siempre se puede llegar a un consenso en menos rondas que las partes que participan, siempre que al menos dos tercios de las partes actúen de forma honesta. Pero con un sistema así, ¿cómo podría Ana estar segura de estar recibiendo información de Pedro y viceversa? Sin esta certeza, a un usuario despiadado no le costaría nada timar al sistema haciéndose pasar por muchos usuarios diferentes.
Aquí es donde entra en juego la mecánica cuántica. Ana y Pedro pueden verificar las identidades de los demás mediante una técnica llamada distribución de clave cuántica. Envía información mediante partículas cuánticas como fotones, que no pueden ser copiados sin ser destruídas. Así, tanto Ana como Pedro están seguros de la identidad del otro.
Por tanto, la piedra angular del sistema del equipo de Kiktenko es un sistema de identificación cuántica en el que cada parte puede verificar la identidad del resto con la seguridad que ofrecen las leyes de la física. Esta firma cuántica se adjunta a todas las transacciones, lo que impide que sean manipuladas. El equipo de Kiktenko afirma haber desarrollado este sistema utilizando una criptografía cuántica de la empresa suiza ID Quantique. Los investigadores detallan: "Hemos desarrollado un protocolo de cadena de bloques con informaciones teóricamente seguras y una autenticación basada en una red en la que cada par de nodos está conectado por un enlace de distribución de clave cuántica", escriben.
Y lo han probado en una red de cuatro usuarios, uno de los cuales intentaba burlar al sistema usando dos veces el mismo dinero. "Este protocolo elimina [la] transacción de gasto doble después de la segunda ronda de comunicación y permite crear un bloque que contiene solo transacciones legítimas", afirma el equipo de Kiktenko.
Se trata de un experimento interesante que demuestra que las técnicas cuánticas sirven para proteger las tecnologías de cadena de bloque. Pero no es perfecto, ya que da por sentado que menos de un tercio de las partes son deshonestas. Así que si más de un tercio de los usuarios se pone de acuerdo para timar al sistema, se vuelve trivial.
También existen importantes obstáculos tecnológicos para aplicar el sistema a mayor escala. Uno es la creación de un internet cuántico que permita estas transacciones a larga distancia. Este desafío debería superarse, ya que ya hay varios grupos de investigación que lo están abordando.
La amenaza de los ordenadores cuánticos desde luego es real, y no solo para la tecnología de cadenas de bloques. Cualquier información almacenada actualmente con criptografía convencional se volverá insegura en cuanto se encienda el primer ordenador cuántico de gran potencia. Y dada la repentina urgencia por las criptomonedas, sería muy útil poner la tecnología a prueba de esta futura amenaza cuántica.
Ref: arxiv.org/abs/1705.09258 : Quantum-Secured Blockchain