¿Qué puede hacer un atacante con un 51% de poder de hash?

Supongamos que la organización X tiene el 51 % del poder de hash durante un período de 1 semana. En esta semana, ¿qué puede y no puede hacer exactamente X?

Tenga en cuenta que puede haber algunos ataques, como la minería egoísta , que requieren < 51 %.
Ayer me topé con una breve/divertida entrevista en video de Andreas Antonopoulos sobre el 51% Bitcoin Attack. Esto podría interesarle. youtube.com/watch?v=ncPyMUfNyVM

Respuestas (7)

De hecho, es muy fácil dañar la red una vez que tienes el 51%; simplemente construye tu propia cadena más rápido que la red y transmítela cuando quieras. Si envía algunas de sus monedas a una nueva dirección en su propia cadena, todas las transacciones emitidas en la red en vivo al gastar esas mismas monedas se revertirán en el momento en que se transmita la cadena más larga.

Directamente desde el wiki de bitcoin (probablemente corregido por muchos pares de ojos):

Un atacante que controle más del 50% de la potencia informática de la red puede, durante el tiempo que tenga el control, excluir y modificar el orden de las transacciones. Esto le permite:

  • Transacciones inversas que envía mientras tiene el control
  • Evite que algunas o todas las transacciones obtengan confirmaciones
  • Evite que algunos o todos los demás generadores obtengan generaciones

El atacante no puede:

  • Revertir las transacciones de otras personas
  • Impedir que se envíen transacciones (aparecerán como 0/sin confirmar)
  • Cambiar el número de monedas generadas por bloque
  • Crea monedas de la nada
  • Enviar monedas que nunca le pertenecieron

Es mucho más difícil cambiar bloques históricos, y se vuelve exponencialmente más difícil cuanto más retrocedes. Como se indicó anteriormente, cambiar los bloques históricos solo le permite excluir y cambiar el orden de las transacciones. Es imposible cambiar los bloques creados antes del último punto de control.

Dado que este ataque no permite tanto poder sobre la red, se espera que nadie lo intente. Una persona que busca ganancias siempre ganará más simplemente siguiendo las reglas, e incluso alguien que intente destruir el sistema probablemente encontrará otros ataques más atractivos. Sin embargo, si este ataque se ejecuta con éxito, será difícil o imposible "desenredar" el desorden creado; cualquier cambio que haga el atacante podría volverse permanente.

de la documentación: El cliente acepta la cadena de bloques 'más larga' como válida. La 'longitud' de toda la cadena de bloques se refiere a la cadena con la mayor dificultad combinada, no a la que tiene más bloques. Esto evita que alguien bifurque la cadena y cree una gran cantidad de bloques de baja dificultad, y que la red los acepte como "más largos".
Si seguro. Más largo se entiende en términos de prueba de trabajo.
Un atacante del 51% puede robar monedas de las direcciones de SegWit.
¿Cómo cambiaría un atacante un bloque histórico?
@IlyaSaunkin, ¿cómo crearía un atacante un bloque de baja dificultad? ¿No tendría que encontrar el nonce aleatorio en cada bloque para ser aprobado por todos una vez que la bifurcación se fusione de nuevo?
@JoeMB Dos años tarde, pero para responder a su pregunta para cualquiera que pueda tropezar con este hilo: los mineros prueban diferentes nonces, con la esperanza de encontrar uno que provoque que el valor numérico del hash del encabezado del bloque sea menor que un objetivo de dificultad. Ese objetivo de dificultad se ajusta dinámicamente en función del hashrate de la red. El objetivo se especifica en el encabezado del bloque. Los nodos de Bitcoin rechazarán bloques con una dificultad artificialmente baja para evitar trampas.
como es eso @MCCCS
@JohnD Poco después de que se active SegWit, pero no mucho más tarde, los mineros pueden revertir la bifurcación suave y gastar las monedas, que cualquiera puede gastar en salidas para clientes heredados, pero salidas seguras de segwit para clientes más nuevos, lo que causaría una división de la cadena y si el 51% quiere revertir SegWit, los intercambios que aún no han actualizado a sus clientes seguirían la cadena con el PoW acumulado más alto, en la que los mineros podrían gastar las salidas de SegWit donde quieran. Esto no es posible si todos los clientes y empresas adoptan SegWit en el día 1, pero dado que SegWit se diseñó como una bifurcación blanda, un ataque del 51 % por parte de los mineros es inviable.
continuaría dañando el software heredado hasta que quiebre. Sin embargo, dado que SegWit se adopta más o menos en todas partes hoy en día, un ataque tan inviable tendría un pequeño impacto. Sería útil leer sobre cómo funciona SegWit como una bifurcación suave para comprender lo que describí.
> Dado que este ataque no permite tanto poder sobre la red, se espera que nadie lo intente. * * * Je je. Los primeros "poderes" enumerados permitirían la centralización del protocolo, por lo que un agente de nivel estatal puede y probablemente lo intentará si lo encuentra interesante desde un punto de vista político. Básicamente, convertirían Bitcoin en una moneda regular controlada por el estado.

En teoría, este atacante posee suficiente poder de cómputo para ejecutar un ataque de "doble gasto". Podrían gastar monedas en un solo lugar, permitir que las monedas ingresen a la cadena de bloques de manera normal hasta que se cumplan las confirmaciones requeridas, luego activar el 51 % de los mineros para crear una bifurcación fraudulenta de la cadena de bloques en la que esas monedas nunca se gastaron. , permitiéndoles volver a gastar las monedas. En teoría, esto podría repetirse mientras el atacante mantuviera el control del 51% o más del hashrate.

Siendo realistas, el 51% es solo el punto en el que esto se vuelve posible , no el punto en el que se vuelve probable o fácil . Un atacante probablemente necesitaría algo así como un 65% para ejecutar tal ataque.

¿Podría aclarar si esa cifra del 65% es un número inventado basado en algo? Supongo que podría haber alguna curva que podría trazar la probabilidad de éxito frente al porcentaje del poder de hash que se posee, pero no conozco los detalles lo suficientemente bien como para estar seguro...
¿La espera de más confirmaciones disminuirá la posibilidad de un doble gasto exitoso si un atacante tiene constantemente el 51% durante una semana?
El 65% es un número inventado, poco más que una suposición semi-educada. Si alguien tiene matemáticas reales para compartir, me complacería modificar mi respuesta para incluirla. En cuanto a esperar las confirmaciones, ayudará pero solo hasta cierto punto. 51% o más otorga alguna posibilidad de forjar un bloqueo en el atacante. Si el atacante tuviera el 100% durante una semana, podría deshacer los bloques de una semana en ese tiempo. El 51% probablemente solo dejaría que un ladrón deshaga un pequeño puñado de bloques, si es mucho; nuevamente, si alguien tiene las matemáticas para respaldar esto, publíquelo.
El 51% permitiría a un atacante deshacer tantos bloques como quisiera y deshacer una transacción sin importar cuántas confirmaciones tenga. Simplemente envían la transacción que desean deshacer a la cadena de bloques pública y una transacción en conflicto a su cadena de bloques privada. Luego esperan hasta tantas confirmaciones como sea necesario. Luego esperan hasta que su cadena de bloques privada sea más larga que la cadena de bloques pública, lo que eventualmente será con una probabilidad cada vez mayor. Tan pronto como su cadena es más larga, lo anuncian y su cadena gana.
Bueno, la pregunta en realidad especifica qué daño se puede hacer en una semana . No parece que ninguna de las respuestas, incluida esta, haya tenido eso en cuenta.

Y luego está la posibilidad de denegación de servicio de retirarse repentinamente del servicio, quitándose los recursos informáticos necesarios para seguir resolviendo bloques cada diez minutos hasta que la dificultad se ajuste nuevamente (lo que podría llevar mucho tiempo si solo hay un bloque). todos los días por ejemplo).

Por supuesto, para eso se necesitaría mucho más del 51% del poder de hash.

si se crean hashes cada 10 minutos y el 51 % abandona la red, entonces se crean aproximadamente cada 20,4 minutos, por lo que esta respuesta es incorrecta (o asume mucho más del 51 % y, por lo tanto, no responde la pregunta)
@Artem: Sí, estaba tratando de transmitir eso en la última oración. Lo siento si eso no fue claro. Pasaré la respuesta a la pregunta "¿Qué puede hacer un atacante con el 95% del poder de hash?" una vez que se pregunta ;-)

Cualquiera que posea el 51% de la red habrá realizado una gran inversión en hardware y sistemas para organizar y construir una máquina capaz de ejecutar tal ataque. Si su motivo es la ganancia, entonces la ganancia a corto plazo asociada con bifurcar la cadena de bloques para permitir el 'doble gasto' les reportará un beneficio insignificante; es difícil imaginar que seguirían esta estrategia sobre la base de que la inestabilidad resultante finalmente devaluará las mismas monedas que buscan 'gastar el doble'. Si su motivo es destruir Bitcoin, punto, ese es otro asunto completamente diferente. Ese tipo de tecno-vandalismo solo podría estar razonablemente motivado por alguien que tenga como principal motivación la destrucción y la disrupción.

En cambio, planteo que es mucho más probable que un recurso informático tan masivo y poderoso (la supercomputadora Bitcoin) se utilice para impulsar la gran parte de la red dentro de los límites de su uso previsto, beneficiándose a largo plazo de las recompensas de generación y las tarifas de transacción, como la red crece y prospera con el tiempo.

"habrá hecho una inversión masiva en hardware y sistemas": en base a esto y lo siguiente, usted implica que el atacante necesitaría invertir grandes cantidades de, ejem, dinero y recursos del mundo real en eso. Eso no tiene por qué ser cierto: 1) el atacante puede usar el valor inflado de la moneda virtual previamente minada; 2) ingeniería técnica fraudulenta (por ejemplo, botnet creado automáticamente); 3) ingeniería social, como invitar a usuarios minoritarios a participar en "grupos de minería", esencialmente incentivando a los usuarios a que se coloquen voluntariamente en botnets ad hoc orquestados por los propietarios del grupo.

Las respuestas hasta ahora se centran en el algoritmo en sí, tengo algunos pensamientos socioeconómicos para agregar.

Supongamos que Bitcoin es enormemente popular y, de hecho, se convierte en LA moneda de referencia global, en este punto, esta y otras preguntas similares se vuelven (muy) relevantes.

Lo que sucede en las industrias maduras es que, a través de la mercantilización y las fusiones, queda un número cada vez menor de jugadores. A través de las ventajas de escala, este pequeño número de jugadores podrá brindar servicios a un costo más bajo y eliminar a los jugadores más pequeños. Veo pocas razones por las que la industria del procesamiento de transacciones de Bitcoin estará exenta de esta regla general.

A continuación, no podemos prever todos los aspectos del futuro, a pesar de que los diseñadores de Bitcoin hicieron un trabajo excelente, habrá situaciones que requerirán cambios en el sistema. Por ejemplo, podría haber un llamado de la gente para detener las redes de pornografía infantil, para detener los refugios de capital para los ricos, para detener las corporaciones demasiado rentables y poderosas, etcétera, lo que sea. Sea justificado o no, el pueblo exigirá cambios, no necesariamente un villano individuo del gobierno, el pueblo.

Dado que solo hay un pequeño número de jugadores, en realidad es posible regular la industria. Por ejemplo, la regulación podría ser que solo se procesen los pagos con un número de cuenta rastreable, o solo los pagos con tarifas adjuntas que incluyen una porción de impuestos.

Creo que el gobierno podría incluso exigir cambios en el núcleo del algoritmo. Evitar, por ejemplo, la entrada de jugadores "no certificados", estableciendo así aún más el poder de los procesadores de pago existentes.

Los monopolistas recién elegidos entonces, en la fase final de la autodestrucción del capitalismo, aumentarán lenta pero constantemente sus precios de procesamiento, eventualmente ahuyentando a los clientes y haciendo que Bitcoin nunca alcance el estado deflacionario que muchos defensores y los primeros inversores afirman que tendrá.

Y esperemos que termine de esta manera, un escenario bifurcado de esto podría ser que Bitcoin alcance el estado "demasiado grande para fallar", y la gente exija una mayor regulación (de tarifas de procesamiento, límites de velocidad de minería, etc.). Todos seguiremos pagando una prima por la existencia de la moneda, solo por el bien de la estabilidad y el temor a la interrupción del statu quo. Al igual que con las monedas de hoy.

No estoy tratando de ser escéptico, en realidad tengo muchas esperanzas de que las monedas criptográficas ayuden con la globalización y el avance de la humanidad. Como moneda deflacionaria para ahorrar "fácilmente" para su jubilación (anticipada), no estoy tan seguro. Como un sistema de transacciones probablemente de alguna manera.

Tal vez en realidad no necesitamos una "moneda", tal vez todo lo que necesitamos es una transacción. Tal vez pueda haber una súper capa encima de múltiples monedas criptográficas competidoras que cambie rápida y automáticamente su dinero de un lado a otro entre la combinación más adecuada de monedas y fondos de inversión. Después de todo, lo que realmente te importa es cómo se intercambia tu salario en bienes y promesas futuras.

Dado que los diversos gobiernos probablemente tendrían intereses diferentes, parece poco probable que un gobierno pueda exigir algo del proyecto Bitcoin.
@Murch: dado que los mineros están ubicados en gran medida en unos pocos países, un puñado de gobiernos podría acordar secuestrar la mayoría del poder de hash, cambiando así las reglas como mejor les parezca (por ejemplo, imponiendo parte de la tarifa de transacción para ir a impuestos)
La centralización de los mineros es de hecho una gran preocupación, aunque solo podrían imponer esto a las empresas en su jurisdicción y probablemente no a la red en sí. Probablemente, la red respondería con un cambio de algoritmo de prueba de trabajo si esto se convirtiera en un impedimento importante para el tráfico de transacciones.
Se presume en este escenario que este grupo de corporaciones tiene, y puede mantener, el 51% del poder hash de toda la red. La globalización de esta escala no existe y no creo que nunca sea viable

Sospecho que podría extraer más del 51% de los bloques. Consulte ¿Alguien con un 51 % de potencia informática puede ganar más de lo que se merece?

Derecha. Si extrae más de la mitad de los bloques, puede evitar que alguien más extraiga. Eventualmente, la dificultad disminuirá y estarás minando un bloque cada diez minutos.
Debería considerar agregar una cita del enlace que está dando: las respuestas del enlace son molestas y de mala calidad.

Un ataque del 51% simplemente destruiría la moneda, y cualquiera que tenga una posición corta obtendría un 100% de ganancias. Así que hay un fuerte incentivo financiero para este ataque y ha sucedido muchas veces.

Nunca ha sido explotado en bitcoin.
¿Por qué se vota negativamente esta respuesta? Es absolutamente cierto con la creación de futuros BTC. Para @RaghavSood, los intercambios de futuros (los principales) solo han existido alrededor de un año (sin contar Bitmex). Si los intercambios de futuros actuales hubieran existido desde que nació Bitcoin en 2009, entonces apostaría con seguridad a que el exploit se habría considerado y probablemente incluso intentado.