Una función hash criptográfica es un algoritmo deterministah:{0,1}{0,1}nh:\{0,1\}^{*} \to \{0,1\}^{n}que asigna una entrada de longitud arbitraria (una cadena de bytes) a una salida de longitud fija llamada resumen (valor hash). El determinismo significa que entradas idénticas producen resúmenes idénticos. En los protocolos blockchain, los valores de resumen se tratan como compromisos: cambiar cualquier byte relevante para el protocolo cambia el resumen.

Propiedades de seguridad utilizadas en la práctica.

La seguridad criptográfica se expresa en términos computacionales. Los objetivos típicos son: • Resistencia previa a la imagen: dado y, no es factible encontrar x tal queh(x)=yh(x)=y. • Resistencia a la segunda preimagen: dado x, no es factible encontrarxxx' \neq xconh(x)=h(x)h(x')=h(x). • Resistencia a la colisión: no es posible encontrar ninguna resistenciax,xx,x'tal queh(x)=h(x)h(x)=h(x'). Aquí, "inviable" significa que ningún algoritmo práctico conocido puede realizar la tarea dentro de límites realistas de recursos.

Dónde aparece el hashing en una cadena de bloques

1) Enlace de cadena: los encabezados de los bloques incluyen un campo con el hash del encabezado anterior. Si algún byte del encabezado cambia, el nuevo hash ya no coincide, por lo que la manipulación se detecta mediante un nuevo cálculo. 2) Compromiso de transacción: muchas transacciones se resumen en una única raíz de Merkle incluida en el encabezado. Una prueba de Merkle permite a un cliente ligero verificar que una transacción está incluida en el conjunto confirmado por esa raíz, sin descargar el bloque completo.

Construcción de resumen (conceptual)
Recopilar datos de protocolo
campos de encabezado + conjunto tx
Calcular la raíz de Merkle
txs → root (compromiso)
Encabezados de enlace
campo hash anterior
Verificar
recalcular y comparar
Hashing versus cifrado
AspectohashCifrado
Objetivo principalIntegridad / compromisoConfidencialidad (más integridad con la AEAD)
ReversibilidadDiseñado para ser unidireccionalReversible con la llave correcta.
Material claveNo es necesario para hash básicoRequerido para simétrico; pk/sk para asimétrico
Propiedades clave para recordar
No trate "cualquier hash" como equivalente: las reglas de codificación de bytes del protocolo y el algoritmo de hash exacto determinan los valores de resumen. Utilice siempre el algoritmo estandarizado especificado por el protocolo y las implementaciones auditadas.