Ir al contenido principal
Change page

Algoritmos de minería

Última actualización de la página: 22 de octubre de 2025

La minería de Ethereum utilizo un algoritmo conocido como Ethash. La idea fundamental del algoritmo es que un minero intenta encontrar un contador nonce usando el cálculo computacional en bruto, de esta forma el hash resultante es menor que el umbral determinado por la dificultad calculada. Este nivel de dificultad se puede ajustar de forma dinámica, permitiendo que la producción de bloques ocurra en un intervalo regular.

Requisitos previos

Para comprender mejor esta página, le recomendamos que primero lea sobre el consenso de prueba de trabajo y la minería.

Dagger Hashimoto

Dagger Hashimoto fue un algoritmo de investigación precursor para la minería de Ethereum que Ethash reemplazó. Fue una combinación de dos algoritmos diferentes: Dagger y Hashimoto. Sólo fue en realidad una implementacion de investigación y fue superada por «Ethash» en el momento en el que se lanzó la red principal de Ethereum.

Daggeropens in a new tab implica la generación de un gráfico acíclico dirigidoopens in a new tab, del cual se toman fragmentos aleatorios para combinarlos mediante una función hash. El principio fundamental es que cada nonce sólo requiere una pequeña porción del total de un gran árbol de datos. Recalcular el subárbol para cada nonce es algo prohibitivo para la minería, de ahí la necesidad de almacenar el árbol, aunque sirve para la verificación de un solo nonce. Dagger se diseñó para ser una alternativa a los algoritmos existentes como Scrypt, que requieren grandes capacidades de memoria, pero son difíciles de verificar cuando su memoria aumenta a niveles realmente seguros. No obstante, Dagger era vulnerable a la aceleración del hardware de memoria compartida y quedó relegado por otras vías de investigación.

Hashimotoopens in a new tab es un algoritmo que añade resistencia a los ASIC al estar limitado por la E/S (es decir, las lecturas de memoria son el factor limitante en el proceso de minería). La teoría es que la RAM está más disponible que la computación; se han invertido miles de millones de dólares en la optimización de la RAM para diferentes casos de uso, que a menudo implican patrones de acceso casi aleatorios (de ahí el nombre de «memoria de acceso aleatorio»). Como resultado, es probable que la RAM existente sea moderadamente cercana a la óptima para evaluar el algoritmo. Hashimoto utiliza la cadena de bloques como fuente de datos, satisfaciendo simultáneamente las explicaciones (1) y (3) anteriores.

Dagger-Hashimoto utilizó versiones modificadas de los algoritmos Dagger y Hashimoto. La diferencia entre Dagger Hashimoto y Hashimoto es que, en lugar de usar la cadena de bloques como fuente de datos, Dagger Hashimoto utiliza un conjunto de datos generados a medida, que se actualiza en función de los datos de bloque cada N bloques. El conjunto de datos se genera utilizando el algoritmo Dagger, lo que permite calcular de manera eficiente un subconjunto específico de cada nonce para el algoritmo de verificación del cliente ligero. La diferencia entre Dagger-Hashimoto y Dagger es que, a diferencia del Dagger original, el conjunto de datos utilizado para consultar el bloque es semipermanente y solo se actualiza a intervalos ocasionales (p. ej., una vez por semana). Esto significa que la parte del esfuerzo de generar el conjunto de datos es cercana a cero, por lo que los argumentos de Sergio Lerner con respecto a las aceleraciones de memoria compartida se vuelven insignificantes.

Más información sobre Dagger-Hashimoto.

Ethash

Ethash era el algoritmo de minería que en realidad se usaba en la verdadera red principal de Ethereum bajo la estructura de prueba de trabajo, que ahora ha quedado obsoleta. Ethash fue esencialmente el nuevo nombre dado a una versión específica de Dagger-Hashimoto después de que el algoritmo se actualizara considerablemente, aunque aun heredando los principios fundamentales de su predecesor. La red principal de Ethereum solo utilizó Ethash. Dagger-Hashimoto fue una versión de I+D del algoritmo de minería que fue reemplazado antes de que comenzara la minería en la red principal de Ethereum.

Más información sobre Ethash.

Lecturas adicionales

¿Conoce algún recurso de la comunidad que le haya sido de ayuda? ¡Edite esta página y agréguela!

¿Le ha resultado útil este artículo?