Un bloque de Bitcoin puede contener miles de transacciones, pero su encabezado solo ocupa 80 bytes. Con tan pocos datos se puede «asegurar» cada transacción del bloque gracias al árbol de Merkle.
Criptomoneda mencionada en el artículo: $BTC cotiza a 77,358.01 (24h -0.61%).
【Qué es un árbol】
Un árbol de Merkle es una estructura en forma de árbol que combina grandes cantidades de datos mediante hashes por pares y los va fusionando capa por capa. En la capa inferior está el hash de cada transacción; se concatenan dos hashes adyacentes y se calcula otro hash para obtener la capa superior. El proceso continúa hasta que solo queda un hash, llamado raíz de Merkle.
Esta estructura lleva el nombre del criptógrafo Ralph Merkle y fue propuesta a finales de los años 70, mucho antes de la aparición de la cadena de bloques.
【Por qué no se puede alterar】
El encabezado de cada bloque de Bitcoin contiene la raíz de Merkle. Si se modifica cualquier transacción del bloque, su hash cambia; ese cambio se propaga hasta la raíz de Merkle, y también cambia el hash del bloque. Así, todos los bloques posteriores dejan de coincidir.
Por eso, basta con vigilar este único hash del encabezado para tener controladas todas las transacciones del bloque.
【Cómo verifican las transacciones las billeteras ligeras】
Para demostrar que una transacción está en un bloque, no hace falta el bloque entero: basta con unos pocos hashes de la ruta que va desde esa transacción hasta la raíz de Merkle. Si se duplica el número de transacciones, solo hace falta un hash más. Para un bloque con miles de transacciones, bastan una docena de hashes.
La verificación de pagos simplificada (SPV), descrita en la sección 8 del libro blanco de Bitcoin, funciona así: el cliente ligero solo guarda los encabezados de los bloques y solicita a un nodo una ruta de Merkle para confirmar que la transacción se ha incluido en un bloque.
【Aplicación en la prueba de reservas】
La prueba de reservas de los exchanges también utiliza árboles de Merkle: la plataforma organiza los saldos de todos sus usuarios en un árbol de Merkle y publica el hash raíz. Cada usuario recibe su propia ruta y puede verificar por sí mismo si su saldo está incluido, sin que se publiquen los detalles de los demás.
【En resumen】
La idea del árbol de Merkle es sencilla: representar una gran cantidad de datos con un hash raíz muy corto. Este diseño es precisamente lo que hace posibles aplicaciones como las billeteras móviles y la prueba de reservas. El mercado siempre está sujeto a incertidumbre; piensa de antemano qué harás si te equivocas.
Si te ha resultado útil, guárdalo para consultarlo más adelante.