¿Qué es una función hash?
Las funciones matemáticas que ayudan a que Bitcoin funcione
Las funciones hash son funciones matemáticas que se utilizan en criptografía, seguridad de la información y finanzas. Debido a sus propiedades únicas y confiabilidad, se utilizan en Bitcoin para seguridad, privacidad y en operaciones de minería de Bitcoin.
Una función hash toma una entrada y produce una salida (llamada "hash"). La entrada es información de cualquier tamaño, mientras que la salida siempre será de longitud fija, típicamente como una secuencia de números y letras.
Es como una máquina, donde las materias primas son las entradas y un producto terminado de tamaño estándar es la salida.
Las formas específicas en que las funciones hash toman entradas para producir hashes, así como las relaciones únicas entre entradas y hashes, han llevado a su uso generalizado en diferentes industrias. Aquí hay un desglose de las características importantes de las funciones hash:
Puedes pensar en ello como una biblioteca de la ciudad que imprime un sello único en cada uno de sus libros, que captura completamente toda la información de ese libro. Aunque algunos libros son cuentos cortos (datos de entrada pequeños) y otros son novelas largas (datos de entrada grandes), el sello (también conocido como el hash) siempre es del mismo tamaño. Copias idénticas de un libro siempre tendrán sellos idénticos, pero cambiar una sola letra en un libro cambiará completamente su sello. Además, es súper fácil verificar si un libro y un sello coinciden, pero si solo tienes un sello, no hay forma de determinar a qué libro pertenece.
Bitcoin utiliza funciones hash en sus operaciones, incluyendo la minería de Bitcoin, la integridad de la información y la generación de direcciones de Bitcoin.
La función hash más utilizada en Bitcoin se llama "SHA-256" (también conocida como Secure Hash Algorithm 256-bit). Esta función hash es una función estándar de la industria que se utiliza ampliamente en la banca, seguridad de la información y redes de comunicación. Con toda probabilidad, si haces clic en el icono de 🔒 junto a la URL del sitio web y ves el certificado de seguridad del sitio web, encontrarás que está utilizando SHA-256 para asegurar tu conexión.
A continuación se presentan las diferentes formas en que las funciones hash se utilizan en Bitcoin.
La minería de Bitcoin es un proceso que cumple con el doble propósito de procesar transacciones y emitir nuevos bitcoin en circulación. Involucra a computadoras (también conocidas como mineros) usando su poder computacional para producir hashes (también conocido como “hashpower”), para competir por agregar el próximo bloque de transacciones a la blockchain de Bitcoin y recibir un pago de recompensa de nuevos bitcoin por hacerlo. Es un sistema que democratiza la actualización del registro de transacciones de Bitcoin, sin depender de ninguna autoridad central.
¿Cómo funciona?
Los mineros toman entradas para tratar de producir un hash con propiedades específicas (un cierto número de ceros al principio), que está establecido por el software de Bitcoin. La entrada incluye información fija y variable:
Dado que los hashes son impredecibles, la única forma de producir un hash deseado es mediante prueba y error, volviendo a ejecutar la función hash con un nuevo nonce variable. El primer minero en producir un hash válido transmite su hallazgo y gana el derecho de agregar el próximo bloque a la blockchain. Aunque es difícil producir el hash deseado, es trivialmente fácil verificar si el hash es válido, lo que hace que la verificación sea un proceso fácil.
El software de Bitcoin ajusta automáticamente la dificultad de este proceso de hash cambiando el número de ceros requeridos para el hash objetivo para asegurar que los nuevos bloques se agreguen en promedio cada 10 minutos.
Las funciones hash se utilizan para asegurar la integridad de los datos dentro de cada bloque. Cada bloque en la blockchain contiene el hash del bloque anterior, que a su vez contiene el hash de su bloque anterior, y así sucesivamente, formando una "cadena" ininterrumpida de bloques (también conocida como una cadena de bloques o “blockchain”) que se remonta al comienzo de Bitcoin.
Alterar la información en cualquier bloque anterior cambiaría drásticamente su hash, y consecuentemente, el hash de cada bloque subsiguiente ya que todos están conectados a través de hashes secuenciales.
Esto hace que la manipulación de datos de bloque sea esencialmente imposible, ya que cualquier cambio sería fácilmente detectable e inmediatamente rechazado por todos los participantes en la red.
Las funciones hash se utilizan para mantener la integridad de los datos de las transacciones dentro de cada bloque. Esto se hace usando una estructura de datos llamada "árbol de Merkle," que es una forma de estructurar y organizar hashes.
Estos son los conceptos básicos de cómo se hashean las transacciones en árboles de Merkle:
La "raíz de Merkle" representa un resumen completo de todos los datos de transacciones del bloque. Es una forma rápida y eficiente de resumir datos y se puede usar para verificar si una transacción específica está incluida en un bloque, sin necesidad de todos los datos del bloque. También puede prevenir la manipulación, ya que cualquier pequeño cambio en los datos de la transacción cambiará completamente ese hash de transacción y todos los hashes subsiguientes, incluyendo la raíz de Merkle.
Una clave privada es un código numérico secreto generado al azar que se utiliza para firmar transacciones, proporcionando prueba de propiedad y control sobre el bitcoin asociado con una dirección de Bitcoin específica.
Esta clave privada se somete a una serie de transformaciones criptográficas, incluyendo el hash, para producir una clave pública. Este proceso asegura que mientras la clave pública pueda compartirse libremente, la clave privada, crucial para acceder y transferir bitcoin, permanezca secreta e inalcanzable de derivar a partir de la información pública.
Bitcoin utiliza una combinación de SHA-256 y otra función hash llamada RIPEMD-160 para generar direcciones de Bitcoin. La clave pública de un usuario, que se deriva de su clave privada, primero se hashea usando SHA-256, luego se hashea nuevamente usando RIPEMD-160. Este proceso de dos pasos, a menudo combinado con un checksum para la verificación de errores, genera la dirección de Bitcoin que es lo que se utiliza para enviar bitcoin.
© 2024 Strike
De cero a bitcoin.
Legal