Itinerario
Diez capítulos, en el orden en que las piezas se necesitan.
Cada capítulo explica una idea con palabras normales, enseña el código Go de xavicoin que la implementa y propone algo que ejecutar para verla funcionar.
- 01
El problema: dinero sin banco
Un fichero se puede copiar. ¿Cómo se evita gastar dos veces la misma moneda sin que nadie mande?
README.mdLeer → - 02
Hashes: la huella digital
La pieza de la que sale todo lo demás: deterministas, impredecibles e imposibles de invertir.
internal/crypto/hash.goLeer → - 03
Claves, firmas y direcciones
Por qué una wallet no guarda monedas sino claves, y cómo se demuestra que un pago es tuyo.
internal/crypto/keys.goLeer → - 04
Transacciones: billetes, no saldos
El modelo UTXO: monedas sueltas que se gastan enteras, el cambio y las comisiones.
internal/chain/validate.goLeer → - 05
Bloques y cadena
Una cabecera de 80 bytes que apunta a la anterior: toca un dato antiguo y se rompe todo lo posterior.
internal/core/block.goLeer → - 06
Minería y dificultad
Una lotería carísima de ganar y gratis de comprobar, que se regula sola para dar un bloque cada 10 s.
internal/miner/miner.goLeer → - 07
De dónde salen las monedas
La coinbase, el halving y por qué el total emitido es finito. La política monetaria en una línea de código.
internal/core/params.goLeer → - 08
La red y la mempool
Nodos que no se fían de nadie, rumores que recorren la red en segundos y la sala de espera de los pagos.
internal/p2p/Leer → - 09
Forks, reorgs y seguridad
Qué pasa cuando hay dos versiones de la historia, por qué se esperan confirmaciones y qué puede hacer un 51 %.
internal/chain/chain.goLeer → - 10
Árbol de Merkle y wallets ligeras
Demostrar que un pago está en un bloque con un puñado de hashes, sin descargar el bloque.
internal/core/merkle.goLeer →