¿Qué es el doble gasto?

El doble gasto es el riesgo de que una moneda digital se pueda gastar dos veces. Es un problema potencial exclusivo de las monedas digitales porque la información digital puede ser reproducida con relativa facilidad por personas inteligentes que comprenden la red blockchain y la potencia informática necesaria para manipularla.

Las monedas físicas no tienen este problema porque no se pueden replicar fácilmente, y las partes involucradas en una transacción pueden verificar inmediatamente la autenticidad y la propiedad pasada de la moneda física. Eso, por supuesto, excluye asuntos relacionados con las transacciones en efectivo.

Con las divisas digitales, existe el riesgo de que el titular pueda hacer una copia del token digital y enviarla a un comerciante u otra parte conservando el original.

Esta fue una preocupación inicialmente con bitcoin, la moneda digital o «criptomoneda» más popular, ya que es una moneda descentralizada sin una autoridad central que se encargue de verificar que la criptomoneda se gasta solo una vez. Sin embargo, bitcoin tiene un mecanismo basado en registros de transacciones, conocido como blockchain, para verificar la autenticidad de cada transacción y evitar el doble gasto.

  • El doble gasto ocurre cuando una red blockchain sufre una disrupción y la criptomoneda es esencialmente robada. En este caso, el ladrón envía una copia de la transacción de divisas para que parezca legítima, o podría borrar la transacción por completo.
  • Aunque no es común, el doble gasto puede ocurrir en las redes blockchain menos seguras. En las redes blockchain más seguras, descentralizadas y con mayor número de nodos, como Bitcoin, el poder de cómputo requerido para ejecutar un ataque de este tipo es tan alto que hace que sea casi imposible. Lo que es mucho más probable, sin embargo, es el robo de criptomonedas de una billetera que no esté debidamente asegurada.
  • El método más común de doble gasto es cuando un hacker ataca la blockchain mediante el envío de múltiples paquetes a la red, invirtiendo las transacciones para que parezca que nunca sucedieron.

doble gasto de criptomonedas

¿Qué es la blockchain (cadena de bloques)?

La cadena de bloques que sustenta una moneda digital como bitcoin no puede evitar el doble gasto por sí sola. Más bien, todas las diferentes transacciones que involucran la criptomoneda relevante se publican en la cadena de bloques, donde se verifican y protegen por separado mediante un proceso de confirmación. En el caso de bitcoin y muchas otras criptomonedas, las transacciones que se han confirmado de esta manera se vuelven irreversibles; se publican públicamente y se mantienen a perpetuidad.

Bitcoin fue la primera moneda digital importante en resolver el problema del doble gasto. Lo hizo implementando este mecanismo de confirmación y manteniendo un sistema de contabilidad universal común. De esta manera, la cadena de bloques de bitcoin conserva registros de transacciones con sello de tiempo que se remontan a la fundación de la criptomoneda en 2009.

En términos de Bitcoin, un «bloque» es un archivo de datos registrados de forma permanente. Todas las transacciones recientes se escriben en bloques, al igual que un libro mayor de transacciones de acciones en una bolsa. La información de los bloques se agrega al libro mayor cada pocos minutos; todos los nodos de la red mantienen una copia del libro mayor de la cadena de bloques de la criptomoneda. Los usuarios pueden navegar por la cadena de bloques de bitcoin y revisar las transacciones sólo en términos de cantidad, pero no pueden modificarla. Los detalles sobre las identidades del comprador y el vendedor en cualquier transacción están protegidos por un cifrado de alto nivel, que también protege el libro mayor de la manipulación de fuentes externas. Cuando se actualiza el libro mayor de la blockchain, también se actualizan todas las carteras de bitcoin.

El doble gasto en la blockchain de Bitcoin

Bitcoin requiere que todas las transacciones, sin excepción, se incluyan en la cadena de bloques. Este mecanismo asegura que la parte que gasta los bitcoins realmente los posee y también evita el doble gasto y otros fraudes. La cadena de bloques de transacciones verificadas se construye con el tiempo a medida que se le agregan más y más transacciones.

La verificación de las transacciones de Bitcoin lleva algún tiempo porque el proceso implica un procesamiento numérico intensivo y algoritmos complejos que consumen una gran cantidad de potencia informática. La verificación de bloques de transacciones en la blockchain de Bitcoin requiere un poder de cómputo cada vez más alto que hace necesaria la inversión en equipos de cómputo costosos. Por lo tanto, es extremadamente difícil duplicar o falsificar la información en la cadena de bloques debido a la inmensa cantidad de potencia informática que se requeriría para hacerlo.

Dado que la dificultad para validar transacciones en Bitcoin mediante el proceso de minería se incrementa con el tiempo, también aumenta la dificultad de que ocurra un doble gasto en esta red.

Desventajas de la blockchain con respecto al doble gasto

Los piratas informáticos han intentado vencer el sistema de verificación de transacciones en Bitcoin mediante el uso de métodos como superar el mecanismo de seguridad de la cadena de bloques por medio de un alto poder de cómputo o a través de una técnica de doble gasto que implica enviar un registro de transacciones fraudulentas a un vendedor y otro al resto de la red de Bitcoin.

Estas estratagemas solo han tenido un éxito limitado. De hecho, la mayoría de los robos de bitcoins hasta ahora no han implicado un doble costo, sino que han ocurrido debido a que los usuarios almacenan bitcoins sin las medidas de seguridad adecuadas.

El mayor riesgo de doble gasto viene en forma de un ataque del 51%, que puede ocurrir si un usuario controla más del 50% de la potencia informática de la red que mantiene los libros contables distribuidos de una criptomoneda. Si este usuario controla la cadena de bloques, podrá procesar la transferencia de bitcoins a su billetera varias veces invirtiendo el libro mayor de la cadena de bloques como si las transacciones iniciales nunca hubieran ocurrido.

¿Cómo evita la cadena de bloques de BTC el doble gasto?

Este problema de doble gasto se evita en las criptomonedas basadas en blockchain como Bitcoin mediante el uso de un mecanismo de consenso conocido como prueba de trabajo (PoW). El consenso PoW lo lleva a cabo una red descentralizada de ‘mineros’ que no solo aseguran la fidelidad de las transacciones pasadas en el libro mayor de blockchain, sino que también detectan y previenen el doble gasto.

Imagine que tiene 1 BTC e intenta gastarlo dos veces en dos transacciones separadas. Puede intentar hacer esto enviando el mismo BTC a dos direcciones de billetera bitcoin separadas. Ambas transacciones luego pasarán al grupo de transacciones no confirmadas. La primera transacción se aprobaría mediante el mecanismo de confirmación y luego se verificaría en el bloque siguiente. Sin embargo, la segunda transacción sería reconocida como inválida por el proceso de confirmación y no sería verificada. Si ambas transacciones se extraen del grupo para su confirmación simultáneamente, la transacción con el mayor número de confirmaciones se incluirá en la cadena de bloques, mientras que la otra se descartará.

Si bien esto trata de manera efectiva el problema del doble gasto, no está exento de problemas. Por ejemplo, el destinatario previsto de la segunda transacción (fallida) no tiene participación en la transacción fallida y, a pesar de esto, esa persona no recibiría el bitcoin que había anticipado como pago de su producto o servicio. Muchos comerciantes esperan al menos 6 confirmaciones de una transacción (lo que significa que se agregan seis bloques posteriores de transacciones a la cadena de bloques después de la transacción en cuestión). En este punto, el comerciante puede asumir con seguridad que la transacción es válida.

Quedan otras vulnerabilidades en este sistema que podrían permitir que se produzcan ataques de doble gasto. Por ejemplo, si un atacante de alguna manera puede controlar al menos el 51% del poder de la red, puede cometer un doble gasto, aunque en el caso de Bitcoin esto requeriría una inversión en recursos demasiado costosa como para emprender una acción de este tipo. Si un atacante pudiera de alguna manera obtener el control de tanta potencia computacional, podría revertir las transacciones y crear una cadena de bloques privada separada. Sin embargo, el rápido crecimiento de bitcoin prácticamente ha asegurado que este tipo de ataque sea imposible.