¿Qué es un ataque del 51%?

Sep 09, 2019

Implantación

Las criptomonedas basadas en blockchain están sujetas al llamado ataque del 51%: cuando más de la mitad de la potencia informática de una red de criptomonedas está controlada por alguna organización o grupo de individuos, se hace posible realizar transacciones conflictivas o daños maliciosos.

Un ataque del 51% es un ataque potencial (o un ataque a otra red blockchain), con el resultado de que una organización puede controlar la mayor parte de la tasa de hash. Tal situación puede conducir a un fallo de la red. En otras palabras, un atacante con una tasa de hash del 51% tiene suficiente poder para excluir o reordenar deliberadamente transacciones.

¿Cuáles son los riesgos de un ataque del 51%?

Un ataque del 51% permite a un atacante revertir las transacciones que se llevaron a cabo en el momento del control, lo que probablemente lleve al problema del doble gasto. Un ataque mayoritario exitoso también permitirá a un atacante evitar que se confirmen algunas o todas las transacciones (también conocido como denegación de servicio), o evitar la minería de algunos o todos los demás mineros, lo que lleva al llamado monopolio de la minería.

Por otro lado, el ataque mayoritario no permitirá a un atacante revertir las transacciones de otras personas o impedir la distribución de transacciones en la red. Cambiar la recompensa de un bloque, crear monedas desde el aire o robar monedas que un atacante nunca tuvo, también es un escenario increíble. Un ataque del 51% se puede llevar a cabo solo en blockchains con un consenso de algoritmo.

¿Qué es la Prueba de trabajo?

Proof-of-Work (PoW) es el primer algoritmo de consenso descentralizado exitoso en la cadena de bloques. PoW se utiliza en, (Ethereum planea actualizar a Prueba de participación),,,, y muchas otras plataformas.

Prueba de trabajo en detalles

Primero, los usuarios se envían monedas. Luego, todas las transacciones forman bloques y se registran en una cadena de bloques o en un llamado registro descentralizado.

Todas las transacciones se confirman mediante cálculos matemáticos complejos, cuya precisión puede ser verificada por cualquier usuario de la red. Los mineros se ocupan de la formación de un nuevo bloque y la confirmación de la transacción. Si un minero ha logrado resolver el problema, se forma un nuevo bloque: se coloca el siguiente conjunto de transacciones en él, y se consideran confirmadas. 

¿Por qué alguien atacaría la red?

El mayor peligro para el sistema es el doble gasto. Por lo tanto, un atacante que posee el 51% de la energía puede crear una blockchain alternativa oculta y usarla para confirmar sus propias transacciones. Por ejemplo, la confirmación de una transacción en la red Bitcoin requiere seis bloques de transacción abiertos. En consecuencia, un atacante debe crear seis bloques. Luego retira sus fondos en la cadena de bloques principal. Por ejemplo, transfiere a otra cuenta o paga por la compra, y abre su propia cadena de bloques, causando un conflicto en el sistema. Si ambos mineros han encontrado la solución correcta para un bloque, entonces se ramifica una red, donde ambas soluciones tienen el derecho de existir y se incluyen en el siguiente bloque de transacciones.

El 49% restante de la capacidad de la red confirma el débito de fondos de la cuenta. Sin embargo, dado que el atacante tiene poder de control, el sistema reconoce que su red es fiel, en la que aún no ha debitado los fondos, y descartará la transacción confirmada por otros mineros ya que el bloqueo del atacante es más complejo. En consecuencia, el sistema mostrará el saldo antes de la transacción y el atacante podrá gastar dinero varias veces más, pero con cada tiempo posterior, el costo de las monedas disminuirá.

El retiro doble de fondos es posible con menos control de la capacidad, pero una concentración del 51% proporciona una garantía del 100% de que el bloque del atacante será reconocido como el bloque correcto.

Teniendo en manos el 51% de la capacidad del sistema, el atacante prácticamente se convierte en el propietario de la blockchain, puede generar bloques de forma independiente, confirmar y rechazar transacciones. Después de haberse apoderado del sistema, también puede detener su trabajo negándose a confirmar todas las transacciones.

Cómo el ataque del 51% afecta a los usuarios de criptomonedas

Un ataque del 51% tiene cuatro tipos de consecuencias, que a veces pueden ser muy peligrosas para las víctimas de la red:

Uno de ellos es la minería egoísta cuando los atacantes se aprovechan de su mayoría en términos de recibir recompensas. Si un bloque se extrae simultáneamente, los mineros deben votar en el bloque que elijan. El ganador tiene más oportunidades para el siguiente bloque. Dado que la mayor parte de la red debe tomar una decisión al respecto, un atacante puede usar su capacidad para minar sus propios bloques y continuar minando estando en la parte superior, sin esperar la aprobación de la red.

En segundo lugar, un atacante que tiene una mayoría del 51% en la red puede decidir cancelar transacciones. Puede destruir toda la red sin aceptar ninguna transacción a ninguno de los bloques que el atacante extrae egoístamente.

La tercera consecuencia es un problema que cada blockchain está más preocupado y busca evitar a toda costa. Usted ya sabe esto porque se trata de doble gasto, lo que significa gastar la misma moneda en varias transacciones al mismo tiempo. Dado que la naturaleza descentralizada de la cadena de bloques evita el doble de costos, un atacante con el 51% tiene la autoridad central para esto, ya que otros mineros están comprometidos. Los costos dobles continuos llevarán el valor de una criptomoneda a cero. Esto último ocurre cuando el atacante crea una bifurcación dura en la cadena de bloques. La razón de esto puede ser el uso de costos dobles que surgen durante la separación de cadenas.

Alternativamente, otra razón podría ser la lucha con otros mineros que pueden haber logrado crear un bloque. En este caso, el atacante puede romper la cadena a este nuevo bloque.

Historial de 51% de ataques

En 2014, el Ghash.io pool tomó el control del 55% de la red Bitcoin. A pesar de que esto no fue un ataque planeado, y el grupo acordó voluntariamente reducir los indicadores de energía y prometió no exceder el 40% del umbral, la tasa de Bitcoin cayó en una cuarta parte del costo.

En 2016, Krypton y Shift, dos criptomonedas que operan en la base de Ethereum, fueron atacadas por un grupo de hackers que se hacían llamar "Team 51". Como resultado, los estafadores lograron duplicar el débito y robar 22,000 monedas a través de Bittrex.

El caso más precedente ocurrió con la criptomoneda Verge, pero este ataque fue posible debido a un error en el código. La criptomoneda anónima ha funcionado a la vez en varios algoritmos que tuvieron que cambiar con la creación de cada nuevo bloque. Sin embargo, el código tiene un error debido a que los atacantes enviaron bloques con una marca de tiempo falsa a la red.

Los bloques se generaban y enviaban cada segundo, en lugar de cada 30 segundos. El ataque duró tres horas. Los hackers lograron capturar el 99% de los bloques. Según los datos oficiales proporcionados por los desarrolladores, fue posible retirar 250,000 tokens del sistema de forma fraudulenta. Sin embargo, según los usuarios, la cifra real llega a casi 4 millones.

¿Cuánto costará?

Un ataque del 51% en blockchains de criptomonedas populares requiere grandes inversiones. Según el sitio web Crypto51, 1 hora de ataque del 51% en la red Bitcoin costará $ 355,883, en la red Ethereum – 9 98,572, y en la cadena de bloques Ethereum Classic – Ethereum 4,534. El coste del ataque depende de la potencia informática de la red.

Científicos del Instituto Indio de Tecnología realizaron un estudio de blockchains de diferentes criptomonedas y concluyeron que la blockchain de bitcoin es la red descentralizada más segura. Según los investigadores, un ataque del 51% a la blockchain de BTC no traerá ganancias, ya que la red está protegida del doble gasto. Un atacante solo podrá agregar o eliminar información de transacciones de los bloques, mientras que las monedas permanecerán en las billeteras de los usuarios.

Protección contra un ataque del 51%

Por el momento, para proteger una criptomoneda del ataque, se debe aumentar la popularidad y el poder de la red, respectivamente, para ofrecer nuevas ideas y atraer nuevas audiencias.

Mientras la minería siga siendo rentable y haya un gran número de usuarios en la red, es extremadamente difícil atacar el sistema. Tan pronto como el beneficio de la minería sea menor que el costo de comprar y mantener el equipo, los mineros retirarán su energía del sistema y la red se volverá vulnerable.

Otra solución es el algoritmo PoS. A pesar del hecho de que existe la posibilidad teórica de un ataque, no es absolutamente rentable. Para hacerse cargo del 51% de la red, debe adquirir el 51% de todos los tokens del sistema, que es incluso veces más alto que el costo de los equipos de computación. Además, no es un hecho que los desarrolladores no se den cuenta de esto a tiempo y no tomen medidas rápidas para neutralizar el ataque.

Cómo rechazar el ataque?

Si se detecta un ataque del 51% a tiempo, los desarrolladores pueden usar hardforks.

Hard fork es un cambio fundamental en el código de criptomoneda, después de lo cual la conexión con el software antiguo se romperá por completo. Durante la bifurcación dura ocurre la creación de una nueva criptomoneda y la división de la red.

Para los titulares de monedas, tenedor duro no es esencial, ya que en el futuro tendrán la oportunidad de transferir los ahorros a un nuevo sistema. Sin embargo, para el atacante, tal solución significa perder el valor del botín.