LearnBitcoin

Glosario

Raíz de Merkle

El único hash de 32 bytes en la cima del árbol de Merkle de un bloque, que resume todas las transacciones incluidas.

Traducción hecha con ayuda de IA, pendiente de revisión humana. Lee el original (en inglés).

La raíz de Merkle es el único hash de 32 bytes que va en cada encabezado del bloque y que fija todas las transacciones del bloque.

Se calcula construyendo un árbol de Merkle (en inglés) sobre los txids de las transacciones del bloque: se emparejan, se calcula el hash de cada par, luego se emparejan los hashes resultantes, luego esos, y así hasta que queda un solo hash. Ese hash final es la raíz de Merkle.

Tres cosas hacen que todo descanse sobre ella:

  1. Ata las transacciones al bloque. Cambia los datos de cualquier transacción y cambia la raíz de Merkle. Cambia la raíz de Merkle y cambia el encabezado del bloque. Cambia el encabezado y tienes que rehacer la prueba de trabajo (proof-of-work). El costo de manipular el bloque es el costo de volver a minarlo por completo.
  2. Es lo que en realidad entra en el hash que calculan los mineros. El hash del encabezado del bloque incluye la raíz de Merkle. Cuando un minero varía su nonce en busca de un bloque válido, la raíz de Merkle es una de las entradas. (Cuando agota los nonces, modifica el extranonce de la transacción coinbase, lo que cambia la raíz de Merkle, lo que le da un espacio de nonces nuevo.)
  3. Hace posible el SPV (verificación simplificada de pagos). Los clientes ligeros pueden verificar que sus transacciones están en la cadena descargando solo los encabezados de bloque más una prueba de Merkle de tamaño log2(N) por transacción.

Un compromiso criptográfico de 32 bytes que fija unos cuantos megabytes de datos de transacciones (todo lo que cabe en un bloque), sin perder ninguna información en lo que respecta a la inclusión. Una de las piezas de elegancia de diseño más discretas de Bitcoin.

Consulta Árbol de Merkle / raíz de Merkle (en inglés) para ver la construcción en detalle.

Ideas clave

  • El hash final que encapsula cada transacción del bloque
  • Parte integral de la prueba de trabajo, porque los mineros calculan el hash del encabezado del bloque
  • Una alteración mínima en las transacciones rompería la cadena de hashes

Fuentes (6)

Términos relacionados (3)

Publicado el . No hay correcciones registradas para esta página.

Editar esta página en GitHub