Para que quede más claro con respecto a como se crean los hash. El hash de un bloque efectivamente debe comenzar con una x cantidad de ceros. Pero en ese caso usted puede simplemente construirlo rellenando esa x cantidad de dígitos con cero y luego simplemente generar un número aleatorio cualquiera. No es así como funciona precisamente. El algoritmo de sha256 (y otros algoritmos de encriptación) son una función que recibe como entrada un conjunto de datos y devuelve como salida un hash. En este caso los datos de entrada son la información del bloque que estamos construyendo el cual recordemos que contiene el hash del bloque anterior, la lista de transacciones y un campo de tiempo que indica el momento en que se construyó el bloque. Esa información se le envía como entrada a sha256 y se comprueba si el hash resultante cumple con las condiciones previstas (la x cantidad de ceros al inicio), si cumple con estas condiciones entonces se acepta el bloque en la cadena, pero si no cumple con las condiciones lo que se hace es re-ordenar las transacciones ponerlas en un orden diferente de manera aleatoria y colocar una nueva marca de tiempo, una vez hecho esto se repite el proceso hasta que finalmente se encuentra el hash que cumpla con las condiciones. Por eso es que es tan complejo encontrar el hash pero resulta realmente sencillo validar si un hash se ha construido de manera correcta o no. Y eso es lo que le da seguridad a la blockchain y a todo el ecosistema en general. Ya que si alguien desea alterar un bloque tal vez para retractar una transacción o para acreditarse dinero que no le pertenece tendría que primero generar "hashes" válidos para cada bloque que desee modificar o crear y para cuando logre realizar esta labor, el resto de los nodos (que deben ser mayoría) ya han validado nuevas transacciones e incorporado nuevos bloques, recordemos que la cadena que se acepta es la más larga, por lo que el impostor siempre estaría detrás tratando de alcanzar al resto de los nodos para que acepten sus bloques, lo cual le resulta imposible.
Recursos
Resumen
Los bloques como estructura principal
Blockchain (del inglés cadena de bloques) se constituye por bloques que contienen todas las transacciones que se realizan en el sistema. Estos contienen datos especiales, además que permiten que se identifiquen como únicos (hash), y se encuentran en el encabezado de cada bloque.
A través de estos datos, los bloques se entrelazan, ya que cada bloque al contener el hash del bloque anterior (y así hasta el bloque inicial). Se puede comprobar si las transacciones que han sido registradas son las correspondientes de acuerdo a los valores de comparación (incluyendo las marcas de tiempo). La analogía para comprenderlo mejor, podemos compararla con huellas digitales.
Si se pretendiera modificar algún bloque, se tendrían que modificar todos los bloques posteriores. Se tendría que hacer de tal forma que los participantes de la red no se percaten del cambio efectuado, lo cual es prácticamente imposible, pues la inserción de nuevos bloques ocurre más rápido de lo que cualquier persona pudiera siquiera intentarlo.
Así, entre más bloques haya después de determinado bloque, más segura es su posición en la cadena.
Hash y Proof-of-work
El cálculo para los hashes necesita mucho poder de cómputo, pues las máquinas a cargo están tratando de encontrar al azar un número que debe cumplir ciertas condiciones, las cuales establece el sistema en sí. Es por eso que nadie puede decidir qué número debe ser.
Al pasar los diez minutos desde el último bloque, el primero que lo haya encontrado, es quien puede insertar la versión de su bloque. Esta tarea por supuesto debe ser remunerada, y la recompensa se da en bitcoins. Esto se define como Proof-of-work.
La dificultad del minado aumenta progresivamente, y también interviene el halving, que es la división a la mitad de la recompensa cada cierto número de bloques.
Con la ayuda del cifrado criptográfico, se ha podido inventar un sistema que es simple y muy complejo a la vez, algo que para los usuarios normales se podría convertir en algo natural, y que de a poco se está estableciendo dentro de la vida cotidiana más y más. El papel de los mineros es esencial, y mientras haya gente dispuesta a hacer la labor, Bitcoin seguirá creciendo.
Aporte creado por: Luis Enrique Herrera.