Una función hash toma cualquier dato, una palabra o un bloque entero, y devuelve un resultado corto de tamaño fijo. Bitcoin usa SHA-256, cuyo resultado es de 256 bits, usualmente escrito como 64 caracteres hexadecimales.
Cuatro propiedades importantes
- Misma entrada, misma salida: cualquiera puede recalcularla y verificarla.
- Cambia un carácter y el resultado cambia por completo.
- Unidireccional: no puedes trabajar hacia atrás desde el hash para obtener los datos.
- No hay forma conocida de encontrar dos entradas diferentes con el mismo hash.
Estas propiedades convierten un hash en una huella digital. Si el hash de un bloque coincide, el bloque es exactamente el esperado, hasta el último bit. Si algo fue alterado, la huella digital ya no encaja.
Dónde lo usa Bitcoin
Los hashes de bloque encadenan los bloques. Los IDs de transacción son hashes de las transacciones. Las direcciones se construyen a partir de hashes de claves públicas. La minería en sí es una búsqueda de un hash de bloque por debajo de un objetivo. Bitcoin suele aplicar la función hash dos veces seguidas, SHA-256 de SHA-256, como un margen de seguridad adicional.
▶ VERLO EN LA MÁQUINAEL HASH DEL BLOQUE, la prensa, es donde se imprime la huella digital del bloque una vez que el minero lo ha encontrado.