Estructura de un bloque

Clase 3 de 16Curso de Bitcoin para Developers

Resumen

Una Blockchain es una “cadena de bloques” que se encuentran referidos entre sí formando, justamente, una cadena imposible de romper.

¿Qué es el bloque en una Blockchain?

Es la estructura de datos donde se almacena la información de las transacciones, se lo conoce como Bloque.

Elementos de un bloque en una Blockchain

Los elementos que componen a un bloque son:

  • Block header: metadata de un bloque, contiene información relevante del mismo.
  • Block size: tamaño del bloque, en bytes.
  • Transaction counter: cantidad de transacciones en el bloque.
  • Transactions: todas las transacciones almacenadas en este bloque.

El encabezado es el campo muy importante, contiene la información con la que se pueden realizar otros procesos. El encabezado de un bloque contiene:

  • Version: versión del software.
  • Prev hash: hash del bloque anterior para armar la cadena.
  • Merkle root.
  • Timestamp: marca de tiempo del bloque en segundos del momento de su generación.
  • Difficulty target: dificultad del cálculo del algoritmo proof-of-work para encontrar el hash validador del bloque.
  • Nonce: número aleatorio para validar el bloque y generar el hash encontrado por el algoritmo proof-of-work.

Por otra parte, un bloque tiene dos formas de identificarse:

  • Block hash: se calcula pasando 2 veces el encabezado por el algoritmo SHA256.
  • Block height: número del bloque o posición en la cadena.

¿Qué es el bloque génesis?

El primer bloque que toda Blockchain genera se lo conoce con el nombre de “bloque génesis”.

En la Blockchain de Bitcoin, el mismo se originó el 3 de enero del 2009 y contiene un mensaje algo particular: “Canciller al borde de un segundo rescate bancario”.

En el momento de creado este bloque, se producía en el mundo la última gran crisis financiera.

Creación y encriptado de un nuevo bloque

Dos de los datos de más importancia en el encabezado de un bloque, son los que refieren a la dificultad de cálculo para la obtención del hash y al valor aleatorio encontrado para obtener el mismo conocido como nonce.

El nonce es un valor numérico que permite realizar la validación de un bloque cuyos mineros deben descubrir de forma aleatoria para lograrlo a través del algoritmo proof-of-work.

¿Qué es Proof of work (PoW)?

El protocolo que permite que los mineros validen los bloques utilizando un alto poder de cómputo se lo conoce como Proof of Work o prueba de trabajo.

Es efectivo para su propósito, pero consume mucha electricidad y no resulta amigable con el medio ambiente. Es por eso que, en la actualidad, se originaron nuevos protocolos en otras Blockchains como Proof of Stake o prueba de participación.

Sin embargo, PoW sigue siendo altamente eficaz en su propósito de mantener el consenso de una Blockchain y validar bloques y transacciones.

Conclusión

El mecanismo por detrás de cada Bloque y del funcionamiento de toda Blockchain en general es una gran obra de ingeniería de software creada por un Satoshi Nakamoto.

Comprender su funcionamiento nos dará mayor contexto para poder trabajar profesionalmente con esta Blockchain, más allá de lo que representa Bitcoin económicamente en el mundo.


Contribución creada por: Luis Enrique Herrera y Kevin Fiorentino (Platzi Contributor).