bcnet
Estructura del bloque
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.