Favoritos

No has guardado posts en Favoritos. Para hacerlo, clicka en .

  • El Ataque del 51% (1)

  • Un ataque del 51% sobre una blockchain ocurre cuando alguien toma el control del 51% de la red, convirtiéndose en su centro y tomando control sobre ella.

    La tecnología blockchain se suele asociar a descentralización y seguridad, al carecer de un centro que toma decisiones y que pueda ser atacado, o volverse corrupto y tomar decisiones en contra del resto de la red. Es un sistema de pares, donde nadie tiene privilegios. Sin embargo, si una sola entidad controla el 51% de la capacidad de decisión de la blockchain, tiene autoridad sobre ella durante el tiempo que la controle.

    Un ejemplo de lo que puede hacer alguien con el 51% de la red es el ataque del doble gasto: se envía un pago con una transacción y justo antes se empiezan a minar bloques en secreto. La transacción es validada por toda la red y llega a su destino, con el pago aceptado como tal. Por ejemplo, puede ser un movimiento a un exchange, seguido de la venta de esa criptomoneda y la retirada del dinero de la venta. Una vez lo que se haya comprado esté asegurado, el atacante hace pública la cadena de bloques que minó en secreto (lo que se llama shadow mining, minería en la sombra).

    Al tener el 51% de la red, esa cadena de bloques será validada por el resto de la red, en una especie de proceso democrático. Al ser aceptada, la transacción que se hizo justo después desaparecerá, y el dinero del pago volverá al atacante, que podrá gastarlo otra vez. Además se reescribirán todos los bloques posteriores, en lo que se conoce como reorganizaciones de cadena profunda (deep chain reorganizations), lo que puede ser un caos para los usuarios.

    Un estudio publicado el 2 de diciembre de 2018 reveló ataques sobre Bitcoin Gold, Bitcoin Private, Electroneum, Feathercoin, Karbo, Krypton, Litecoin Cash, MonaCoin, Pigeoncoin, Shift, Terracoin, Verge (dos ataques) y ZenCash (cuyo nombre ha cambiado a Horizen), lo que da idea de la magnitud del problema. Los dos ataques más importantes fueron contra:

    • Verge (número 44) fue atacado al menos dos veces, la primera y más grave a principios de abril de 2018. Dado que el suministro de Verge no está limitado y es posible minar nuevos Verge, lo que hizo el atacante fue emitir nuevo Verge por valor de más de un millón de dólares. Peor aún, el atacante publicó bloques con timestamps falsos, que parecían mucho más antiguos de lo que eran. Y al ser una moneda centrada en privacidad, la identidad del atacante es muy fácil de esconder.
    • Bitcoin Gold (número 26), uno de los forks de Bitcoin, fue atacado en mayo de 2018, con el atacante usando los grandes exchanges para hacer gastos por valor de 18 millones de dólares que luego eliminaba de la red. En total el atacante vendió Bitcoin Gold y volvió a recuperarlo 76 veces antes de que todos los exchanges detuviesen las transacciones con este activo.

    Más recientemente, Vertcoin (criptomoneda actualmente número 196 en market cap) fue atacada en noviembre de 2018, con al menos cuatro ocasiones en las que una cadena apareció de la nada y suplantó a la existente. El análisis de estos cambios, reveló un doble gasto de más de 100.000 dólares. El ataque más complejo publicó una cadena 3 bloques más larga que la que estaba aceptada en el momento, suplantando sus últimos 307 bloques de una sola vez.

    Ataque a Vertcoin: 71000 VTC gastados dos veces

    Los efectos de un ataque del 51% son devastadores para los usuarios de la criptomoneda, por la sensación de indefensión que provocan. Para inversores, suele generar pérdidas muy importantes.

    Las dos principales características detrás de un ataque del 51% son la existencia de fallos de seguridad concretos que simplifiquen el proceso para el atacante, y la manera de validar los bloques (el tipo de consenso) que usan.

    El Proof of Work, o minería, es el método de consenso más vulnerable a estos ataques. También es el primer método de consenso que apareció, y el que usan criptomonedas como Bitcoin o Ethereum.

    En el caso de las criptomonedas que usan minería o prueba de trabajo (proof of work), el 51% de decisores se traduce en el 51% de la capacidad de minado, y más en concreto en la capacidad de calcular hashes, el paso más complejo y costoso de la encriptación de los bloques. Aunque las principales blockchains son muy resistentes a este tipo de ataques, las criptomonedas pequeñas son muy vulnerables, ya que hay poca gente minando. En esta página se han calculado los costes en dólares de controlar el 51% de la red de un buen número de criptomonedas con proof of work.

    Dado que el coste en hardware de estas operaciones es muy alto y haría la operación muy costosa, se incluye el tanto por ciento que podría alquilarse al servicio más popular de alquiler de poder de minado, NiceHash, donde cualquier persona puede alquilar la capacidad de minar las principales criptos, o de ceder recursos y recibir pagos por ello.

    En el caso del bitcoin el tanto por ciento de poder de minado que puede conseguirse con NiceHash es virtualmente cero, su red es demasiado grande, y controlar un tanto por ciento significativo de la red tendría un coste en hardware inmenso. En menor medida, la situación es parecida con casi todas las criptomonedas relativamente conocidas.

    En el momento de escribir esto la totalidad del poder de minado de NiceHash daría el 5% del poder que necesitamos para controlar la red de Ethereum, con un coste de 65509 dólares la hora, pero tendríamos que poder encontrar la manera de conseguir el 95% de poder de minado que nos falta en otro lado.

    Más preocupante es el caso de criptomonedas menores. Por cantidades a menudo muy pequeñas se puede controlar la red. Pero si el mercado de la moneda no es muy grande no es rentable para el atacante. Son las monedas con fuerte potencia en el mercado pero pocos mineros, o un algoritmo de cifrado mejorable, las que más pueden perder por este ataque.

    Costes de minería (hash power) en NiceHash

    Este peligro es conocido, y está documentado ya en el propio whitepaper de Bitcoin. Fue en 2009 cuando Satoshi Nakamoto estableció el mecanismo por el que funciona la prueba de trabajo. En concreto, se estableció que si había dos cadenas posibles para ser aceptadas, es la más larga la que es validada, siendo la otra borrada, criterio establecido para dar un modo sencillo e indiscutible de ver qué cadena es la correcta. Mecanismo que funciona 'si la mayoría del poder de CPU es controlado por nodos honestos.' Si la 'mayoría' es corrupta, una red peer-to-peer es vulnerable.

    Estos ataques ponen en peligro la adopción de blockchain. Hablaremos de qué soluciones se han pensado en el siguiente post.

    Y si quieres saber más de blockchain, también te puede interesar nuestro Master.