Volver al inicio
Cinco ideas. Empieza donde quieras.

01 · Empezar desde cero

¿Cómo llevamos un registro de quién le pagó a quién, sin que una organización lo administre?

Emma quiere enviarle 30 USD a Liam.

Cuando pagamos a través de un banco, el banco comprueba el pago y actualiza su registro.

Pero ¿tiene que haber una organización que guarde y administre ese registro?

Cada pago cambia el registro

Supón que Emma tiene 50 USD y le envía 30 USD a Liam.

Después del pago, el registro debería mostrar que a Emma le quedan 20 USD y que Liam tiene 30 USD más.

Antes del pago

Emma
50 USD
Liam
0 USD

Después del pago

Emma
20 USD
Liam
30 USD

Eso importa porque, la próxima vez que Emma quiera pagar, necesitamos saber desde qué cantidad parte. Si el registro está mal, no podemos saber cuánto puede gastar de verdad.

Una acción como esta se llama transacción.

Cuando una organización administra el registro, también lo actualiza

Si Emma y Liam usan un banco, el banco comprueba que Emma tiene dinero suficiente y actualiza el registro.

Emma: 50 → 20 Liam: 0 → 30

Cuando todos dependen de la misma organización, queda claro cuál registro cuenta como el correcto.

Eso no es automáticamente un problema. Es simplemente una forma de administrar la información.

Sin una organización, muchas computadoras en el mundo pueden guardar copias del registro

En lugar de que una organización guarde el registro, computadoras independientes en distintos lugares pueden guardar cada una su propia copia.

Cada computadora puede conservar lo que ya sabe y comprobar por su cuenta las solicitudes de pago de las que se entera.

Si una computadora cambia solo su propia copia, no cambia las demás.

Cambiar una copia no hace que el cambio sea verdadero.

Cuando alguien quiere pagar, la solicitud se envía por la red

Si Emma quiere enviarle 30 USD a Liam, la solicitud de pago se envía a otras computadoras de la red.

Esas computadoras reenvían la solicitud, así que más computadoras se enteran y pueden comprobarla.

Cada computadora puede mirar lo que ya está escrito en su copia y hacer una pregunta simple:

¿Emma tiene dinero suficiente para hacer este pago?

Si la respuesta es sí, la solicitud puede pasar esa comprobación. Si no, se rechaza.

Una computadora que recibe información de la red, guarda una copia y la comprueba contra las reglas se llama nodo.

El problema: no todos se enteran de cada pago al mismo tiempo

La información pasa de computadora en computadora por la red, así que tarda en llegar.

Supón que Emma tiene 50 USD y, casi al mismo tiempo, intenta enviarle 30 USD a Liam y 30 USD a Olivia. No tiene dinero suficiente para los dos pagos juntos.

Una computadora puede enterarse primero del pago a Liam. En esa computadora, el pago de Liam pasa la comprobación, a Emma le quedan 20 USD y la solicitud de Olivia se rechaza.

Otra computadora puede enterarse primero de Olivia y llegar al resultado contrario.

El mismo registro inicial

Emma
50
Liam
0
Olivia
0
Una vista local temporal, basada en la información que esta computadora ha recibido hasta ahora.

La computadora 1 se enteró primero de Liam

Registro inicial
Emma
50
Liam
0
Olivia
0
  1. Emma → Liam 30Pasa la comprobación
  2. Emma → Olivia 30Rechazado: solo quedan 20

Resultado local

Emma
20
Liam
30
Olivia
0

La computadora 2 se enteró primero de Olivia

Registro inicial
Emma
50
Liam
0
Olivia
0
  1. Emma → Olivia 30Pasa la comprobación
  2. Emma → Liam 30Rechazado: solo quedan 20

Resultado local

Emma
20
Liam
0
Olivia
30

Mismo registro inicial. Misma comprobación. Distinto orden de llegada. Distinto resultado.

Entonces, ¿cómo pueden ponerse de acuerdo en el mismo registro?

Muchas computadoras pueden guardar copias del mismo registro y comprobar los pagos por su cuenta.

Pero si no se enteran de cada pago en el mismo instante, pueden llegar temporalmente a resultados distintos.

Entonces, ¿cómo pueden ponerse de acuerdo sobre qué pagos se registran, y en qué orden, sin que una organización decida por todos?

Continuar: Bitcoin
Profundidad opcional

Un banco real, por supuesto, no guarda toda su información en una sola computadora física. Usa muchos sistemas, servidores y copias de seguridad.

Cuando decimos «una organización administra el registro», queremos decir que una organización tiene la autoridad para decidir cuál registro es el válido.

Y en una red descentralizada, muchas computadoras no votan simplemente la verdad por número de personas. Una persona puede operar muchas computadoras o crear muchas identidades.

Así que necesitamos algo más que «lo dijo la mayoría».