Selfish mining y modelos de seguridad

Por qué la «mayoría honesta» puede no ser toda la historia.

El documento técnico de Satoshi sostiene que Bitcoin es seguro mientras los nodos honestos controlen más potencia de CPU que cualquier grupo de atacantes. También sostiene que un minero grande ganaría más jugando según las reglas que atacando. En 2013, Ittay Eyal y Emin Gün Sirer desafiaron la segunda idea en «Majority is not Enough».

El ataque

En el selfish mining, un pool que encuentra un bloque lo mantiene en secreto y sigue minando sobre él.

  • Si el pool encuentra un segundo bloque primero, va por delante. Libera bloques de modo que la cadena pública quede siempre atrás, así que los mineros honestos desperdician su trabajo en bloques que quedan obsoletos.
  • Si los mineros honestos encuentran un bloque mientras el pool va un bloque por delante, el pool libera su bloque de inmediato y empieza una carrera. La cuota de mineros honestos que construyen sobre el bloque del pool se llama γ (gamma).

El pool pierde algunos bloques él mismo, pero los mineros honestos pierden más. Como las recompensas se reparten según los bloques de la cadena final, la cuota del pool puede superar su cuota de potencia de hash.

Los umbrales

  • Con γ = 0 (el pool nunca gana un empate), el selfish mining renta por encima de aproximadamente 1/3 de la potencia de hash total.
  • Con γ = 1, renta a cualquier tamaño.
  • Los autores propusieron que los mineros elijan al azar entre bloques en competencia, lo que elevaría el umbral a 1/4.

Su aviso era que mineros racionales podrían unirse al pool egoísta hasta que se convierta en mayoría.

¿Ha ocurrido?

No hay ningún caso confirmado públicamente de selfish mining a gran escala en Bitcoin. Eso no prueba que sea imposible. Es difícil de detectar con certeza, y los pools también cuidan su reputación y el precio de bitcoin.

Modelos de seguridad

  • Mayoría honesta: el modelo del documento técnico. Con un atacante que tiene el 10% de la potencia de hash, la probabilidad de alcanzar desde 5 bloques atrás es de unos 0,09%.
  • Mineros racionales: los mineros maximizan el beneficio. El selfish mining muestra que las reglas del protocolo y los incentivos no siempre se alinean.
  • Atacante mayoritario: con más del 50%, un atacante puede revertir sus propios pagos recientes o bloquear transacciones. Aun así no puede robar monedas ni romper las reglas de consenso que aplican los nodos.

Por qué importa la propagación

Una retransmisión rápida de bloques, como los bloques compactos, reduce los bloques obsoletos y limita la ventaja de un atacante bien conectado.