Blockchain - Doble gasto
Considere una situación que se muestra en la imagen:
Como se ve claramente aquí, Bob le está ofreciendo un billete de $ 10 a Lisa a cambio de un libro. Una vez que Lisa reciba este billete físico de $ 10, Bob no podrá reutilizar este dinero para otra transacción, ya que la moneda física está ahora en posesión de Lisa.
Ahora, considere una situación en la que el dinero se paga en forma digital. Esto se ilustra en la imagen:
Como el formato para el cambio de moneda está en formato digital, es esencialmente un archivo físico binario almacenado en algún lugar del dispositivo de Bob. Después de que Bob le da este archivo (dinero digital) a Lisa, también puede darle una copia del archivo a Alice. Ambos piensan ahora que han recibido el dinero sin tener ningún medio para autenticar la moneda digital y, por lo tanto, entregarían sus respectivos bienes a Bob. Se llamadouble-spending donde el remitente gasta el mismo dinero en más de un lugar para obtener servicios o bienes de varios proveedores.
Para resolver este problema de doble gasto, se emplearía una autoridad centralizada para monitorear todas las transacciones. Esto se ilustra en la imagen:
La autoridad centralizada, que en términos comunes es su banco, mantiene un libro de contabilidad que registra todas las transacciones. Ahora, Bob tiene que enviar su dinero digital al banco, quien ingresará en su libro mayor debitando la cuenta de Bob. Después de asegurarse de que Bob tiene suficiente saldo para pagar el dinero digital que quiere enviar, enviaría el dinero a Lisa acreditando su cuenta en su libro mayor.
Ahora, está garantizado que Bob no puede gastar el dinero dos veces. Si cada transacción digital se enruta a través de una autoridad centralizada como esta, se resolvería el problema del doble gasto. Esto también proporciona otro beneficio al validar la autenticidad de cada moneda (dinero digital) que recibe en la transacción. Por lo tanto, el dinero falso (dinero duplicado como en el caso de que Bob le pague a Alice usando una copia) se detectaría fácilmente y se evitaría la circulación.
La introducción de la autoridad centralizada, aunque resuelve el problema del doble gasto, introduce otro problema importante: el costo de crear y mantener la propia autoridad centralizada.
Como los bancos necesitan dinero para sus operaciones, comienzan a recortar comisiones en cada transacción de divisas que realizan para sus clientes. Esto a veces puede resultar muy costoso, especialmente en transferencias de dinero al extranjero, donde varios agentes (bancos) pueden estar involucrados en todo el trato.
Todos los problemas anteriores se resuelven con la introducción de la moneda digital, llamada Bitcoin. Ahora le daré una breve descripción de lo que es Bitcoin antes de profundizar en su diseño y arquitectura.