¿Qué es el problema del doble gasto?

Respuesta corta

El problema del doble gasto es que una moneda digital se puede copiar, y su dueño puede pagar a dos vendedores con el mismo archivo. Durante años la única salida fue un intermediario que lleva una lista común y tacha las monedas gastadas, es decir, el mismo banco dentro de una computadora. Bitcoin reemplazó al intermediario por una red en la que reescribir el historial de pagos cuesta más que participar en él con honestidad.

Mikhail Savchenko

Por qué el dinero como archivo no funciona

Cuando a finales del siglo veinte el dinero se convirtió definitivamente en un registro en una computadora, ese registro mostró una particularidad desagradable: se puede copiar. Una canción o un libro en formato electrónico se reenvían sin fin, al remitente le sigue quedando, al destinatario le llega uno igual, y no se puede distinguir la copia del original. Con una canción, es un desastre para las discográficas. Con el dinero, es el fin del dinero. Si una moneda es un archivo, su dueño puede enviar el mismo archivo a dos vendedores y pagar dos veces (capítulo “Una piedra en el fondo del mar”).

Los programadores lo llamaron el problema del doble gasto. Puede ver cómo funciona en el experimento “Una moneda, dos vendedores”: primero paga a los dos vendedores con una moneda que es un archivo, luego intenta lo mismo a través de un contador que lleva la lista común.

La solución del intermediario

Durante muchos años el problema tuvo una sola solución. Hace falta alguien en medio que lleve una lista común y tache la moneda gastada antes de aceptarla del siguiente. Es decir, el mismo banco, solo que en una computadora. Toda moneda digital sin contador central chocaba contra esa pared, y toda la que lo aceptaba se convertía en otro banco más (mismo capítulo).

Hasta la solución más elegante antes de bitcoin funcionaba así. En 1982 David Chaum presentó la firma ciega: el banco firma una moneda sin ver su número, y cuando la moneda vuelve comprueba en su lista que nadie haya gastado ese número todavía. El doble gasto quedaba vencido y el banco no podía vincular la moneda con quien pagaba. Pero el dinero lo seguía emitiendo un banco, y en 1998 la empresa de Chaum, DigiCash, quebró (capítulo “El fantasma de la criptoanarquía”). E-gold y Liberty Reserve también tenían dueño, servidor y dirección, así que había a quién arrestar y qué apagar (mismo capítulo).

Cómo lo resolvió Satoshi

Satoshi Nakamoto entregó la lista común a todos a la vez. Cada participante guarda el mismo libro de pagos desde el principio. Los pagos nuevos se juntan en un bloque, y para pegarlo al libro hay que resolver un problema de cómputo pesado. Cada bloque remite al anterior, y si dos participantes encuentran la solución al mismo tiempo, la red termina eligiendo la cadena en la que se gastó más trabajo (capítulo “El dios ocioso”).

Para gastar una moneda dos veces, un tramposo tendría que recalcular todos los bloques posteriores a su pago más rápido que el resto de la red, es decir, tener más poder de cómputo que todos los participantes honestos juntos. El contador central dejó de hacer falta. Lo reemplazó una multitud de desconocidos, cada uno de los cuales quema electricidad por la recompensa y así protege el registro de todos los demás (mismo capítulo). Cómo un atacante con menos poder se queda atrás de la cadena honesta se ve en el experimento “Doble gasto contra la cadena más larga”, y el problema de cómputo se explica en la respuesta sobre la prueba de trabajo.

Por qué sigue importando

El dinero común funciona con una condición: alguien lleva el libro principal y todos los demás confían en él o no tienen otra opción. Su banco sabe cuánto dinero tiene usted porque él mismo lo anotó, y también puede congelar su línea o negarse a hacer un pago (capítulo “Una piedra en el fondo del mar”). Durante más de veinte años los criptógrafos que intentaban prescindir de ese libro chocaron con el doble gasto. En 2010 yo miraba la solución de Satoshi con el entusiasmo de un ingeniero ante una solución ajena que podría habérsele ocurrido a él y no se le ocurrió.

Más preguntas

¿Se puede gastar un bitcoin dos veces?
Solo reescribiendo el historial de pagos más rápido que el resto de la red, es decir, teniendo más poder de cómputo que todos los participantes honestos juntos.
¿Cómo se evitaba el doble gasto antes de bitcoin?
Con un intermediario que lleva la lista común y tacha las monedas gastadas. Así funcionaban DigiCash, de David Chaum, y los bancos comunes, y sin ese intermediario el dinero no funcionaba.
Nadie tiene dinero

Libro

Nadie tiene dinero

La verdadera historia de las criptomonedas

El invento de Satoshi era real. Sus primeros clientes fueron las personas que los bancos rechazaban.