# Blockchain

> Un libro de registros compartido en muchas compus, donde no se puede cambiar el pasado.

- Nivel: Básico
- Temas: Seguridad, Software
- URL: https://tidbit.legios.com.ar/es/blockchain/
- En inglés: [Blockchain](https://tidbit.legios.com.ar/blockchain/)

Una **blockchain** (cadena de bloques) es una forma de llevar un registro, un **libro contable**, que comparten muchas partes sin tener que confiar en un único dueño. Las anotaciones, como "Ana le mandó 5 unidades a Beto", se agrupan en **bloques**. Cada bloque guarda además el **hash** del bloque anterior: una huella corta que se calcula a partir de su contenido. Eso encadena los bloques, porque si alguien edita un bloque viejo, su huella cambia y deja de coincidir con la que guarda el bloque siguiente, así que la trampa queda a la vista.

La segunda idea es que el registro no está en un solo lugar. Miles de computadoras, llamadas **nodos**, guardan cada una una copia completa y siguen las mismas reglas para ponerse de acuerdo sobre cuál es el próximo bloque. Ese acuerdo se llama **consenso**. En Bitcoin, la primera blockchain, descrita en 2008 por alguien que usó el nombre Satoshi Nakamoto, los nodos compiten por resolver un problema matemático costoso (**prueba de trabajo**); sistemas más nuevos como Ethereum dejan que los nodos que bloquean fondos como depósito se turnen para agregar bloques (**prueba de participación**). Reescribir la historia exigiría ganarle en votos o en gasto a la mayor parte de la red.

Las blockchains son famosas por las criptomonedas, pero la estructura puede registrar cualquier cosa: la propiedad de objetos digitales, los pasos de una cadena de suministro, o programas chicos llamados **contratos inteligentes** que se ejecutan solos cuando se cumplen ciertas condiciones. Las contras son reales: son más lentas y caras que una base de datos común, los errores son difíciles de deshacer y la prueba de trabajo gasta mucha electricidad. Cuando una sola organización confiable lleva los registros, casi siempre conviene una base de datos normal.

## Una analogía

Un cuaderno que todo un barrio lleva en copias, donde cada página nueva empieza copiando el último renglón de la anterior. Arrancar o reescribir una página no coincidiría con las copias de los demás, así que nadie se sale con la suya.

## Para quedarse

- Cada bloque guarda el hash del anterior, así que cualquier edición rompe la cadena.
- Muchas computadoras guardan copias y acuerdan los bloques nuevos con reglas de consenso.
- La prueba de trabajo y la prueba de participación son las dos formas principales de consenso.
- Sirve cuando las partes no confían en un único custodio; si no, una base de datos es más simple.

## Para seguir leyendo

- [Cadena de bloques en Wikipedia](https://es.wikipedia.org/wiki/Cadena_de_bloques)
- [Panorama de la tecnología blockchain (NIST, en inglés)](https://csrc.nist.gov/pubs/ir/8202/final)
- [Bitcoin: el documento original de 2008 (en inglés)](https://bitcoin.org/bitcoin.pdf)

## Términos relacionados

- [Hashing](https://tidbit.legios.com.ar/es/hashing/): Una huella digital de los datos en un solo sentido: fácil de calcular, imposible de revertir.
- [Base de datos](https://tidbit.legios.com.ar/es/database/): Un depósito ordenado de datos que los programas consultan y actualizan sin riesgo.
