El doble gasto puede erosionar toda la confianza en una criptomoneda, razón por la cual se ha hecho tanto esfuerzo para asegurarse de que este tipo de fraude no suceda.
Las transacciones de criptomonedas son seguras y confiables gracias a la tecnología blockchain. Sin embargo, como ocurre con la mayoría de los sistemas innovadores, la cadena de bloques tiene vulnerabilidades que se pueden explotar, lo que puede llevar a duplicar el gasto. Pero, ¿qué es el doble gasto y cómo se evita?
¿Qué es el doble gasto?
El doble gasto ocurre cuando una sola entidad gasta el mismo token de criptomoneda más de una vez. Esto se debe a una falla en las monedas digitales que las hace fácilmente reproducibles.
La información en la red blockchain se puede modificar durante las transacciones, siempre que se cumplan ciertas condiciones. Cuando se cumplen estas condiciones, la modificación bloques de transacciones puede ingresar a la cadena de bloques, lo que permite al perpetrador volver a adquirir tokens criptográficos gastados previamente.
Para comprender mejor cómo sucede esto, aquí hay una descripción simplificada del proceso. Cuando se realiza una transacción en una red blockchain, digamos Bitcoin, se crea un bloque que contiene los datos de la transacción, los datos del bloque anterior y una marca de tiempo. El bloque tiene un código encriptado llamado hash.
El personas que extraen Bitcoin en la red Bitcoin luego verifique la transacción a través de un algoritmo de consenso de prueba de trabajo, cierre el bloque y cree un nuevo bloque. El nuevo bloque contiene la marca de tiempo, el hash del bloque anterior y los nuevos datos de la transacción. Luego, el minero victorioso recibe recompensas en bloque (BTC) por verificar el hash.
Para ejecutar con éxito el doble gasto, el perpetrador tiene que minar un bloque secreto que supere la creación del bloque real. Para ello, el perpetrador tiene que introducir el bloque secreto antes del nuevo bloque para que la red, engañado al pensar que es el último conjunto del bloque en crecimiento, agrega el bloque falso al cada vez mayor cadena. El perpetrador puede entonces reclamar los tokens criptográficos utilizados anteriormente.
Aunque el doble gasto es un fenómeno bien conocido en el espacio criptográfico, no hay ningún caso documentado. Esto se debe a que la verificación de transacciones es un proceso complejo que requiere un tremendo poder computacional. Falsificar o duplicar un bloque es intenso, ya que los perpetradores deben trabajar antes que cualquier otro minero en la cadena de bloques.
¿Por qué el doble gasto es un problema?
El doble gasto es un insulto a la seguridad de la red blockchain. Ocurre cuando hay una debilidad explotable.
Además, se supone que la red blockchain es segura y confiable. Si se produce un gasto doble en una red de criptomonedas, se genera desconfianza en ese criptosistema, lo que desincentiva a los inversores. Y eventualmente, el valor del token caerá.
Además, el doble gasto es un robo digital. El hacker gana mientras que otra persona en la red, generalmente un comerciante, pierde. El perpetrador retiene la propiedad de los bienes del comerciante y el token criptográfico.
Ejemplos de ataques de doble gasto
Existen diferentes formas de ataques de doble gasto que emplean los ciberdelincuentes. Éstos son algunos de ellos:
51% de ataque
El ataque del 51% es la forma de doble gasto más discutida. Ocurre cuando un minero (o un grupo de mineros) controla la mayoría (más del 50%) del poder computacional que valida las transacciones en la red.
Cuando esto sucede, pueden dictar transacciones, crear nuevos bloques, recuperar criptomonedas ya gastadas y otorgar tokens de criptomonedas. Eso les da el poder de gastar el doble de monedas digitales.
Es menos probable que el ataque del 51% ocurra en criptomonedas más establecidas, como Bitcoin. Esto se debe a la gran cantidad de mineros en la red y la dificultad de hash. Sin embargo, las criptomonedas con redes más pequeñas, como las nuevas o bifurcadas, podrían estar en riesgo.
En 2014, GHash.io, un grupo minero que operó de 2013 a 2016, superó brevemente el 51 % de la potencia computacional de Bitcoin en Bitcoin. Este desarrollo generó preocupaciones significativas sobre la seguridad de la red. Luego, Gnash.io limitó voluntariamente su poder computacional al 39,99 % para restaurar la confianza en la red.
Ataque Finney
Este tipo de ataque de doble gasto se popularizó y recibió su nombre de Hal Finney. En un ataque de Finney, un pirata informático no requiere el 51% del poder de hash. Para que tenga éxito, un comerciante debe aceptar una transacción no verificada del pirata informático, que es un minero.
El pirata informático genera un bloque en el que se acredita tokens criptográficos al iniciar una transacción desde la dirección X a la dirección Y (ambas pertenecientes a él) sin transmitirla a la red. Procede a realizar otro pago con los mismos tokens criptográficos de la dirección X a la dirección Z, que pertenece a un comerciante.
Si el comerciante acepta las transacciones no confirmadas sin la verificación de la cadena de bloques, el pirata informático libera el bloque que incluye su transacción inicial. La red invalida la transacción con el comerciante después de que el comerciante haya entregado bienes o servicios al hacker. Eso permite que el hacker gaste el doble.
Ataque de carrera
Este ataque es más fácil de lograr que el 51% y los ataques de Finney. En un ataque de carrera, existe una "carrera" entre dos transacciones.
El hacker usa diferentes máquinas para enviar el mismo token a dos comerciantes. Si el comerciante envía bienes o servicios antes de que se confirme la transacción, descubrirá que la transacción no fue aceptada durante el proceso de minería.
Cómo Blockchain evita el doble gasto
Blockchains protege contra el doble gasto a través de algoritmos de consenso, como:
Prueba de trabajo (PoW)
La prueba de trabajo es un proceso altamente competitivo que requiere una gran cantidad de energía. En este mecanismo de consenso, los mineros usan computadoras complejas para adivinar el hash de los bloques de transacciones.
Un hash es un código hexadecimal cifrado y único de 64 dígitos que posee cada transacción. Este proceso gasta poder computacional para probar la autenticidad de una transacción.
Una vez que se verifica la transacción, el minero exitoso agrega la transacción al libro mayor digital descentralizado. Al final del proceso, el minero exitoso recibe recompensas en bloque en el token digital nativo.
Bitcoin, Bitcoin Cash, Litecoin, Monero y Dogecoin son criptomonedas populares que utilizan este algoritmo de consenso.
Prueba de participación (PoS)
En la prueba de participación, los participantes en la red criptográfica autentican las transacciones en bloque y se denominan validadores. Los validadores ofrecen (o "participan") algunos de sus tokens criptográficos en un contrato inteligente para obtener el derecho de verificar las transacciones antes de agregarlas a la cadena de bloques en crecimiento.
La red selecciona un validador honesto en función de sus tokens apostados y la duración de la apuesta. Una vez seleccionado, el ganador verifica la transacción, que los demás validadores confirman.
Al igual que PoW, los validadores también reciben una recompensa en forma de ingresos después de autenticar nuevas transacciones. Si la red encuentra algún validador deshonesto, pierde parte o la totalidad de sus tokens apostados como penalización.
Este proceso es más rápido y requiere menos poder computacional y energía que PoW. Por lo tanto, los participantes en la cadena de bloques pueden actuar eficientemente como validadores.
Ethereum 2.0, Cardano, Tezos y Solana usan PoS.
Prueba de participación delegada (DPoS)
Este tipo de algoritmo de consenso PoS obliga a los usuarios de la cadena de bloques a usar sus tokens digitales para votar por honestos. validadores llamados "delegados". Se elige un delegado al azar para validar nuevas transacciones y agregarlas al cadena de bloques.
Después del pago, el delegado distribuye las recompensas del bloque a los usuarios que votaron por ellas.
Las criptomonedas que emplean el algoritmo DPoS incluyen EOS, Ark, Tron y Lisk.
Ningún caso aún, pero el doble gasto es una posibilidad
Aunque no hay casos confirmados, la aparición de criptos nuevos y bifurcados y los avances tecnológicos recientes pueden generar sorpresas de doble gasto. Por lo tanto, debe protegerse realizando transacciones en cadenas de bloques de criptomonedas seguras. Y, como regla general, espere a que los mineros confirmen las transacciones antes de liberar sus tokens, bienes o servicios.