93 / 691SV1

Stratum V1

El protocolo minero desde el inicio del worker hasta el envío de shares

Stratum V1 es el protocolo de facto entre un pool de minería Bitcoin y un minero, presentado por Marek Palatinus en 2012 como reemplazo más escalable de getwork.

Por una conexión TCP persistente, el pool envía mining jobs y un target; el minero arma coinbase y cabecera, explora nonce y entrega shares. El protocolo no define pagos ni consenso de Bitcoin.

Stratum V1 es una capa de aplicación entre pool y equipo minero o proxy. No pertenece al consenso peer-to-peer de Bitcoin, no decide la validez de bloques y no define contabilidad PPS, FPPS ni PPLNS. [Bitcoin Wiki — Stratum mining protocol] [Braiins — Past and future of mining protocols]

getwork entregaba poco trabajo mediante consultas RPC repetidas. En 2012 Marek Palatinus propuso una conexión persistente donde el servidor empuja cada job; normalmente el pool obtiene por debajo un block template con getblocktemplate. [Original Stratum mining protocol announcement] [Braiins — Past and future of mining protocols] [BIP 22 — getblocktemplate fundamentals]

El minero envía mining.subscribe y recibe datos de sesión, extranonce1 y tamaño de extranonce2. mining.authorize asocia cuenta o worker name, pero su contraseña no autentica el servidor ni cifra una conexión TCP plaintext. [Bitcoin Wiki — Stratum mining protocol] [Hardening Stratum research paper]

mining.notify incluye job_id, previous block hash, dos partes coinbase, Merkle branches, version, nBits, nTime y clean_jobs. clean_jobs ordena descartar jobs anteriores; no certifica que el candidato sea un bloque válido. [Bitcoin Wiki — Stratum mining protocol]

El minero inserta extranonce1 y su extranonce2 entre las partes coinbase, calcula su hash y combina Merkle branches para obtener Merkle root. Con prevhash, version, nBits, nTime y nonce forma la cabecera de 80 bytes para el ASIC. [Bitcoin Wiki — Stratum mining protocol] [Bitcoin Developer Guide — Pooled Mining]

mining.set_difficulty fija un target del pool más fácil y vardiff puede ajustarlo para mantener una frecuencia útil. Un hash bajo ese target es una share, no un bloque, salvo que cumpla también el target de red Bitcoin. [Bitcoin Wiki — Stratum mining protocol] [Bitcoin Developer Guide — Pooled Mining]

mining.submit envía worker name, job_id, extranonce2, nTime y nonce; version rolling puede añadir un sexto campo. El pool reconstruye y verifica; puede rechazar como duplicate, low difficulty o stale tras cambiar tip o job. [Bitcoin Wiki — Stratum mining protocol] [BIP 310 — Stratum protocol extensions]

El V1 original carecía de negociación general segura. El borrador BIP 310, asignado en 2018, añade mining.configure, máscara version-rolling, minimum-difficulty y subscribe-extranonce; el servidor debe confirmar cada extensión. [BIP 310 — Stratum protocol extensions]

V1 suele viajar por TCP sin cifrar: sin protección adicional no autentica el endpoint y permite escucha o desvío de hashrate. El pool suele elegir block template, pero full nodes aplican consenso Bitcoin y los ASIC siguen siendo del minero. [Hardening Stratum research paper] [Galaxy Research — Future of Bitcoin mining protocols]

Stratum V2 usa framing binario, canal criptográfico y roles separados; Job Declaration puede permitir elegir transacciones. Un traductor V1/V2 o etiqueta V2 no lo prueba. Conviene revisar endpoint, firmware, latencia, rejects, failover y template policy. [Stratum V2 Mining Protocol specification] [Braiins Academy — Stratum V2 Manual]

Para obtener la imagen más completa, lee esta entrada junto con Bitcoin, Minería, Mining Pool, Braiins, Braiins Pool, Marek «Slush» Palatinus. También enlazan con esta entrada Marek «Slush» Palatinus, Braiins Pool, Stratum V2.

DOC · 001Original Stratum mining protocol announcementFuente primariaDOC · 002Bitcoin Wiki — Stratum mining protocolDocumentaciónDOC · 003Braiins — Past and future of mining protocolsFuente primariaDOC · 004Bitcoin Developer Guide — Pooled MiningDocumentaciónDOC · 005BIP 22 — getblocktemplate fundamentalsFuente primariaDOC · 006BIP 310 — Stratum protocol extensionsFuente primariaDOC · 007Hardening Stratum research paperFuente primariaDOC · 008Stratum V2 Mining Protocol specificationFuente primariaDOC · 009Galaxy Research — Future of Bitcoin mining protocolsDocumentaciónDOC · 010Braiins Academy — Stratum V2 ManualDocumentación
Revisado el 1 de agosto de 2026Fuentes primero · No es asesoramiento financiero