bcnet

Estructura del bloque

Por enrique ()


Tiene 2 partes: cabecera y cuerpo.

Cabecera

Es la parte que comienza el bloque y no se hashea ni firma, lleva estos datos (justamente) para verificar el bloque.

Una cabecera lleva datos del tipo static ( constante a definir antes de la ejecución - parseo ) declarados con #headerStatic:

Aquí se pone el hash del bloque y la firma del nodo creador del bloque obligatoriamente, otras cosas son opcionales.

Estos datos (#headerStatic:) son retirados del bloque para parsear.

Cuando se parsea un bloque se retira -esta parte- para verificar, con los datos incluidos aquí, el resultado del hash del cuerpo

(lo demás del bloque)

Cuerpo

Aquí van todos los datos y la lógica del bloque.

Dentro del cuerpo:

Statics: valores que se leen primero (cons y prots) y se registran en MAC antes de parsear el resto de cuerpo...

típicamente hash del bloque previo, time, pubKey, etc..

main: solo para bloques génesis o extensores. Es el script de la red y se llama para parsear los bloques "comunes" y las

de uso: donde las sec, txs y otras utilidades se definen.