Extranonce
El extranonce es un añadido al nonce que entrega el pool. Reparte millones de ASIC por zonas distintas de la búsqueda para que nadie calcule lo mismo.
Qué es el extranonce
El campo nonce de la cabecera del bloque ocupa solo 4 bytes, y un ASIC moderno recorre ese rango en una fracción de segundo. Después hay que cambiar algo más, y ese algo es el extranonce: un trozo de datos en la transacción de servicio del bloque que desplaza la raíz de Merkle y abre un rango nuevo de nonces.
Se compone de dos partes. La primera, extranonce1, la entrega el pool al conectar, y es distinta para cada conexión: así el pool garantiza que dos workers no reciban el mismo trabajo. La segunda, extranonce2, la recorre el propio ASIC entre cambios de tarea.
Para el minero es una mecánica invisible, pero con consecuencias notables. Tras una reconexión el pool entrega un extranonce1 nuevo, así que el trabajo empezado antes del corte ya no sirve para la sesión nueva. Y un proxy que junta varios ASIC en una sola conexión está obligado a repartir el extranonce por su cuenta, o los ASIC detrás de él se pisarán en el mismo rango.
De ahí sale también la línea extranonce.subscribe de los logs: el ASIC o el proxy pide al pool que avise del cambio de extranonce en vez de mandar una tarea nueva completa. Una pequeña optimización de tráfico que soportan casi todos los pools.
Resumen en tabla
| Para qué sirve | el campo nonce de 4 bytes se queda corto |
| Dónde vive | en la transacción de servicio del bloque |
| extranonce1 | lo entrega el pool, uno por conexión |
| extranonce2 | lo recorre el propio ASIC |
| Qué desplaza | la raíz de Merkle y con ella el rango de trabajo |
Dónde aparece en la práctica
En los logs de conexión: las líneas con extranonce al arrancar son una negociación normal, no un error.
En proxys y controladores de granja: si varios ASIC detrás de una conexión duplican trabajo, revisar el ajuste del extranonce.
En los cortes de red: la sesión nueva trae un rango nuevo, así que el trabajo empezado antes del corte se pierde aunque la reconexión sea instantánea.
En la minería en solitario sobre un nodo propio: repartir los rangos le toca a su software, ya no hay pool que lo haga.
Un ejemplo sencillo
Mil ASIC conectados a un mismo pool reciben la misma plantilla de bloque. Sin extranonce todos recorrerían los mismos 4 bytes de nonce y quemarían electricidad en duplicados. El pool entregó a cada conexión su extranonce1, las raíces de Merkle se separaron, y mil ASIC trabajan sobre mil tareas distintas.
Términos relacionados
Adónde seguir en el sitio
Algoritmos
- SHA-256 algoritmos
Monedas
- Bitcoin monedas
Preguntas y respuestas
¿Puede el pool dar el mismo trabajo a dos ASIC?
Uno honesto no, para eso existe el extranonce. Puede equivocarse un proxy casero que no reparte los rangos detrás de sí.
¿Afecta el extranonce al ingreso?
No, es el reparto del trabajo, no su cantidad. El ingreso lo definen el hashrate y el esquema de pago, el extranonce solo elimina duplicados.
¿Qué significa extranonce.subscribe en el log?
El ASIC pidió al pool avisar del cambio de extranonce con un mensaje corto en vez de una tarea completa. Es una optimización normal, no hay que tocarla.
Cómo se relacionan los términos entre sí
Cada eslabón es clicable. En naranja, el punto donde está usted ahora.
¿Busca un minero ASIC?
El catálogo tiene 212 modelos. Puede compararlos por hashrate y por julios por terahash, y en la calculadora poner su tarifa y ver lo que queda limpio.
Página redactada y verificada por Denys Klimchuk. Actualizado el .