Cómo alcanzan consenso las cadenas de bloques · Lección 2 de 5
Bloques, hashes y la cadena
8 min de lectura
De las transacciones individuales a los bloques
Normalmente, una blockchain no pide a cada nodo que se ponga de acuerdo sobre cada transacción como un registro permanente completamente independiente. En su lugar, las transacciones se organizan en lotes llamados bloques, con reglas que describen cómo se proponen, verifican y conectan los bloques. Un bloque no es simplemente una página de un libro mayor electrónico. Es una estructura de datos definida por el protocolo que contiene o confirma transacciones y lleva información que se utiliza para vincular el bloque con el historial previo. Los campos exactos varían según el sistema. Algunos protocolos separan los datos de ejecución de los datos de consenso; otros utilizan un encabezado de bloque relativamente compacto, seguido de las transacciones.
Para entender la cadena, hay que distinguir entre el contenido de las transacciones, un compromiso resumido y una referencia al historial previo. Una transacción describe un cambio solicitado en el estado del libro mayor. Un hash criptográfico es una salida de longitud fija generada a partir de datos de entrada mediante un algoritmo definido. Un bloque puede incluir un hash u otro compromiso relacionado con el conjunto de transacciones; por lo general, su encabezado hace referencia a un bloque anterior mediante un hash. Vincular los registros de esta manera permite detectar una alteración no anunciada, porque los datos alterados cambian el compromiso correspondiente con una probabilidad abrumadora, conforme a los supuestos de seguridad de la función hash.
Qué hace un hash criptográfico
Una función hash criptográfica convierte información de longitud arbitraria en un resumen de tamaño fijo. Por ejemplo, SHA-256 genera un resumen de 256 bits. SHA-256 está especificada en la norma FIPS 180-4, Secure Hash Standard, del Instituto Nacional de Estándares y Tecnología. El resumen no es un cifrado: no contiene un secreto que pueda desbloquearse para recuperar la entrada original. Un hash tampoco certifica quién creó un documento. Es útil para comparar información y detectar cambios, siempre que se implemente correctamente y se utilice un algoritmo adecuado. Diferentes blockchains utilizan algoritmos y combinaciones más especializados.
Una buena función hash criptográfica está diseñada para que sea computacionalmente inviable encontrar un mensaje diferente que produzca el mismo resumen o reconstruir, a partir del resumen, un mensaje original elegido. Estas son propiedades de seguridad, no imposibilidades matemáticas absolutas. Si la entrada cambia aunque sea ligeramente, su resumen suele tener un aspecto completamente distinto. Por lo tanto, un nodo que conoce el compromiso correcto puede detectar que se reemplazó o editó el cuerpo de un bloque. Esta detección, por sí sola, no identifica a la persona responsable del cambio ni demuestra que el contenido original fuera exacto.
Una referencia hash es más que un enlace común
Una referencia convencional en una base de datos indica dónde encontrar otro registro. Una referencia hash combina una referencia a un registro anterior con un valor que confirma su contenido esperado. Consideremos los bloques A, B y C. El bloque B registra un hash que hace referencia a A; C hace referencia a B. Si alguien edita A, el resumen que B espera deja de coincidir. Corregir la referencia de B cambia B y, después, rompe la referencia de C. Esta dependencia se extiende a los bloques posteriores. En los protocolos reales, un atacante que quiera reemplazar un historial aceptado también debe cumplir las reglas de consenso aplicables, no solo volver a calcular los hashes.
Encabezados, cuerpos y compromisos de transacciones
Muchos diseños de bloques tienen un encabezado con metadatos compactos y un cuerpo con transacciones u otra información de ejecución. En Bitcoin, el encabezado incluye el hash del bloque anterior, una raíz de Merkle que resume las transacciones, una marca de tiempo, una codificación del objetivo de dificultad, una versión y un nonce. Un nonce es un campo cuyo valor puede variarse mientras se busca una prueba de trabajo que cumpla los requisitos. Esta lista de campos es un ejemplo, no un requisito universal de las blockchains. Los sistemas modernos pueden utilizar distintos árboles de compromisos, firmas, atestaciones de validadores o estructuras de carga útil separadas.
Un árbol de Merkle resume una colección de registros mediante una jerarquía de hashes. Los valores hoja confirman elementos individuales; los valores intermedios confirman combinaciones de elementos; el valor superior se denomina raíz de Merkle. Esta estructura puede permitir una prueba de inclusión: un conjunto compacto de hashes que demuestra que un elemento determinado pertenece a la colección confirmada por la raíz. Las pruebas de inclusión ayudan a reducir la cantidad de datos necesarios para algunas tareas de verificación, pero no sustituyen todas las comprobaciones que realiza un nodo completo, como verificar si la transacción fue autorizada y si existe un gasto conflictivo.
El orden y la serialización son reglas del protocolo
Un nodo no puede aplicar un hash a una descripción imprecisa como «Alice le pagó a Bob». Debe aplicar el hash a una secuencia precisa de bytes en un formato especificado. Esto es la serialización: representar información estructurada como bytes conforme a reglas publicadas. El orden de los campos, la codificación de los números y otros detalles son importantes. Si dos nodos serializan el mismo registro conceptual de maneras distintas, sus hashes pueden diferir. Por lo tanto, el consenso depende de algo más que la solidez de la criptografía: también requiere definiciones deterministas de la codificación válida, el orden de las transacciones cuando corresponda, los límites de los bloques y los cambios de estado que produce cada transacción.
Evidencia de alteraciones frente a inmutabilidad
Es habitual describir las blockchains como inmutables. En un curso introductorio, «evidente ante alteraciones» y «resistente a las alteraciones» son términos más precisos. Los enlaces hash revelan modificaciones no autorizadas en una cadena registrada, mientras que los mecanismos de consenso dificultan reemplazar el historial aceptado conforme a los supuestos establecidos. Ninguna de estas características hace que sea metafísicamente imposible cambiar el historial. Las bifurcaciones, las reorganizaciones, las actualizaciones del protocolo y los fallos en los supuestos de seguridad de una red pueden afectar cuál es la cadena aceptada. Los registros legales también pueden requerir modificaciones; un sistema puede conservar las entradas anteriores y añadir entradas correctivas sin sobrescribirlas de forma encubierta.
Una pregunta de diseño importante es qué se almacena en la cadena. Almacenar un compromiso hash de un documento fuera de la cadena puede permitir que quienes lo revisen comprueben posteriormente si se presentó el mismo documento. Esto no significa que el documento en sí esté disponible en la blockchain, y un hash por sí solo puede no aportar pruebas legalmente suficientes de autoría, identidad o consentimiento. En los usos del sector público, los requisitos de conservación, los datos sensibles y la disponibilidad de los registros originales pueden ser más importantes que la elegancia de la estructura de compromisos. Los hashes son componentes básicos valiosos, pero la gestión de registros institucionales requiere controles adicionales.
Cómo verifican los nodos un bloque propuesto
Por lo general, un nodo que recibe un bloque candidato realiza varias capas de comprobaciones. Evalúa la estructura de datos y la codificación básicas, comprueba la referencia al bloque anterior, verifica que estén presentes las pruebas de consenso requeridas y contrasta las transacciones con las reglas de transición de estado del protocolo. En una red con prueba de trabajo, también comprueba la prueba del encabezado frente a un objetivo. En una red de prueba de participación, puede comprobar la autorización del proponente y los votos o las atestaciones correspondientes. Estas operaciones tienen especificaciones precisas en cada protocolo; ver un hash que parece válido nunca basta para declarar aceptable un bloque.
El requisito de referencia al bloque anterior también explica por qué descargar un bloque de forma aislada no equivale a establecer un estado fiable del libro mayor. La validación depende del contexto: las reglas previas, los saldos o las salidas no gastadas y la cadena seleccionada por la red. Un cliente ligero puede obtener pruebas de inclusión sin ejecutar todas las transacciones por su cuenta; esa comodidad puede implicar diferentes supuestos de confianza. Los responsables y auditores deben distinguir entre afirmar que «esta transacción apareció en un bloque» y afirmar que «el historial de una red completamente validado acepta esta transferencia». Esta última afirmación requiere contexto adicional y una política de confirmación definida.
Contexto de gobernanza y divulgación
La estructura técnica es una parte de la documentación más amplia del sistema. La norma ISO 23257:2022 describe componentes funcionales y relaciones para los sistemas de registros distribuidos. Las normas de divulgación de algunas jurisdicciones (por ejemplo, los requisitos de la UE para los documentos de información sobre criptoactivos) piden a los emisores que describan la tecnología subyacente, pero esas obligaciones no prescriben una estructura de bloques universal ni garantizan que un algoritmo hash determinado sea seguro. Esto ilustra por qué una descripción técnica y una divulgación legal responden a preguntas diferentes: la primera explica cómo funciona un protocolo; la segunda determina qué información debe comunicarse en un contexto regulado.
Referencia rápida
| Componente | Propósito principal |
|---|---|
| Transacción | Describe un cambio de estado solicitado |
| Hash o compromiso raíz | Detecta cambios en los datos confirmados |
| Referencia al bloque anterior | Vincula un bloque con el historial previo |
| Prueba de consenso | Respaldar la aceptación conforme a las reglas del protocolo |
Qué deben recordar los estudiantes
Los bloques son lotes estructurados o compromisos regidos por reglas del protocolo. Los hashes criptográficos crean huellas digitales compactas y vinculan el historial dependiente; detectan cambios, pero no establecen identidad ni veracidad factual. Las funciones hash sólidas, la serialización determinista, la validación completa y un mecanismo de consenso funcionan en conjunto. La próxima lección examina una forma en que una red encarece la modificación de la cadena aceptada: la prueba de trabajo. Las claves y las firmas digitales se estudian por separado en el Módulo 3.
Enfoque del examen: Identifique las funciones de un encabezado de bloque, un hash criptográfico, una referencia al bloque anterior y un compromiso de transacciones; explique por qué los enlaces hash aportan evidencia de alteraciones, en lugar de una inmutabilidad incondicional.
Notas sobre las fuentes
Referencias pertinentes: NIST FIPS 180-4 (2015), Secure Hash Standard; NIST IR 8202 (2018), Blockchain Technology Overview; ISO 23257:2022, Reference architecture.
Preguntas de práctica
Comprueba lo que has aprendido. Estas preguntas no cuentan para el examen.
Inicia sesión para guardar tu progreso y continuar donde lo dejaste. Es gratis. Iniciar sesión