Básico de Bitcoin

¿Qué Es El Problema De Doble Gasto En Bitcoin?

Que es el problema de doble gasto

El doble gasto es el proceso en el cual se realizan dos pagos utilizando la misma unidad de dinero digital. En otras palabras, gastamos nuestro dinero dos veces.

Y esto es un problema muy grave, que ha llevado a que otras soluciones de dinero electrónico en el pasado fracasaran. Un objetivo que desde hace tiempo la comunidad de ciberpunks ha intentado resolver, y que encontró su solución a través de Bitcoin.

El doble gasto en las criptomonedas

El doble gasto es simplemente el proceso de hacer dos transacciones con el mismo dinero o fondos en función de cometer un fraude.

En el caso del dinero físico esto no es posible de realizar, ya que no podemos entregarle a dos personas un billete de $100 o una moneda. En el caso de los sistemas de pagos online, como por ejemplo PayPal, esto se soluciona confiando en un tercero. El cual se asegura que los fondos sean enviados y recibidos de forma correcta, sin ninguna alteración.

Los bancos, compañías de tarjetas de crédito y procesadores de pagos validan las transacciones en busca de minimizar el problema de doble gasto. Pero con las criptomonedas no existe un intermediario, solo dos personas, la que envía y la que recibe.

Por lo que en este artículo vamos a ver como resuelven este problema las monedas cripto. Seguro ya te lo estás imaginando, porque la solución se encuentra en la cadena de bloques.

Bitcoin y el doble gasto

La definición de la cadena de bloques de Bitcoin nos cuenta que este es un libro contable público donde encontramos registradas las transacciones. Las mismas son escritas por los mineros, que tienen un incentivo económico para protegerla.

Problema de doble gasto Bitcoin

Cuando realizamos una transacción, esta se encuentra en el estado de «sin confirmar». Es como si fuera una transacción pendiente que esta esperando a ser incluida en algún bloque de la cadena. Los cuales son agregados en un tiempo aproximado que se acerca a los 10 minutos (¿cuánto se demoran las transacciones de Bitcoin?).

Una vez que nuestra transacción sin confirmar ha sido agregada a un bloque, se dice que fue escrita en el libro contable público. Ahí es cuando deja de estar «sin confirmar» para pasar a estar confirmada.

Una transacción confirmada es asignada a la dirección a la que fue enviada y es verificada por la red, lo que implica que ya no se puede enviar a otra dirección. Esos fondos ya no están en tu propiedad, y por tanto no puedes gastarlos. De esta forma, podemos enviar transacción sin la necesidad de un tercero, solo de un monedero y una conexión a internet.

Con lo importante que se ha vuelto este mercado, con prácticamente 1 billón de dólares en capitalización, es muy tentador para algún actor malicioso intentar cometer el fraude de gastar dos veces sus fondos.

Si esto ocurriera, se dañaría enormemente la red, a la vez que elimina alguna de las características más importantes que tiene (propiedades de Bitcoin):

  • Sin confianza
  • Inmutable
  • Descentralizada

La buena noticia es que, gracias a su diseño, Bitcoin hace difícil que se pueda realizar algo  como eso.

Tipos de ataques de doble gasto

A pesar de que se cree que el problema de doble gasto esta solventado en gran medida la naturaleza de la cadena de bloques, ha habido intentos en el pasado de explotar el protocolo de Bitcoin con distintos métodos como son:

  • Ataque de carrera
  • Ataque de Finney
  • Ataque del 51%

Un ataque de carrera es un ataque de doble gasto donde dos transacciones son enviadas de forma rápida y sucesiva. Solo podrá ser confirmada una, la otra quedará invalidada. El problema es que el atacante puede hacer compras con esta última que luego el vendedor no recibirá.

La buena noticia es que solo es posible si un vendedor acepta transacciones sin confirmar. Algo que no ocurre a menudo, pero que se puede implementar si el monto a recibir no es tan grande.

Un ataque Finney solo puede ser realizado por un minero. Para ello el minero pre mina una transacción en un bloque que va desde un monedero a otro. Luego, utilizado el primer monedero realiza una segunda transacción y transmite el bloque minado, el cual incluye la primera de las transacciones.

Esto requiere una serie de pasos muy específicos y en orden para que funcione. Y, al igual que el ataque de carrera, solo funciona si la otra parte que recibe acepta transacciones sin confirmar.

Un ataque del 51% es un ataque donde una persona o grupo controla más del 50% del poder de hashing de la red, y lo hace para poder atacar la cadena de bloques. Con esta clase de control pueden lanzar ataques de doble gasto.

Sin embargo, para poder alcanzar este umbral, se requiere de una enorme capacidad de cómputo, algo que cada vez es más costoso y complejo de alcanzar por la gran cantidad de mineros que se unen continuamente.

Y aun cuando sea capaz de hacerlo, necesitara obtener un beneficio lo suficientemente grande para cubrir los gastos que le produjo. Por otro lado, también afectaría el ecosistema de la cadena de bloques, haciendo esta pierda valor por la perdida de confianza.

¿Deberíamos preocuparnos por los taques de doble gasto?

A menos que aceptemos transacciones sin confirmar, no deberíamos tener preocupación por este tipo de ataques. Incluso si no sabemos lo que son las transacciones sin confirmar, algo que de lo que hemos aprendido hoy, la mayoría de monederos y exchanges señalan este tipo de transacciones con la etiqueta de «no confirmadas».

Si aún no estamos muy seguros, la mejor práctica es esperar varias confirmaciones (¿qué es una confirmación?). Es decir, esperar que la transacción haya sido agregada a un bloque y luego que otros bloques se hayan minado encima de este. Cuanto mayor es la cantidad, menor es la posibilidad de que la transacción sea revertida.

El tiempo recomendado para esperar depende del monto de la transacción. En el caso de Bitcoin sería así:

  • Hasta $1.000 podemos estar seguros con una sola confirmación
  • Hasta $10.000 podemos estar seguros con tres confirmaciones
  • Para montos superiores se aconseja al menos seis confirmaciones.

Claro que esta es una regla, y tú puedes esperar más si quieres.

Hay que recordar que cada bloque nuevo en Bitcoin se mina aproximadamente cada 10 minutos, y que en el caso de que esperemos hasta las 6 confirmaciones vamos a necesitar una hora.

En el caso de otras criptomonedas, hay que evaluar el tiempo que se tarda en minar un bloque. Ya que a algunas les puede tomar unos pocos minutos o segundos generar un nuevo bloque, lo que incurre en la necesidad de mayores confirmaciones para estar seguros.

Los ataques de doble gasto han sido analizados y estudiados por la comunidad de forma muy extensa. Por lo que puedes estar seguro de que si no aceptas transacciones sin confirmar en los pagos, entonces no serás víctima de uno.

Puntos importantes

  • El doble gasto ocurre cuando la red de la cadena de bloques es comprometida y alguien no recibe sus criptomonedas. El estafador envía una doble transacción haciendo que una no sea válida.
  • Aunque no sea común ha sucedido.
  • Es más probable perder criptomonedas de un monedero sin las medidas de seguridad apropiadas que un ataque de doble gasto.
  • Un estafador puede enviar una transacción a un comerciante a cambio de un producto o servicio y también enviarse a sí mismo una transacción con las mismas criptomonedas. Si la segunda es agregada a la blockchain, la primera es rechazada y obtiene lo que compro gratis.

Acerca del autor

Criptotario

Me llamo Martin, soy ingeniero y apasionado de las inversiones y la tecnología. Me gusta mucho leer libros y todo aquello que me haga mejorar día a día.

Agrega un Comentario

Haz clic aquí para añadir un comentario