Bitcoin: mitigar los ataques
Discutiré tres tipos diferentes de ataques probables en el sistema Bitcoin:
Ataque de carrera
Como atacante, puede enviar la misma moneda a diferentes proveedores en rápida sucesión, probablemente utilizando dos máquinas diferentes. Si los proveedores no esperan la confirmación del bloqueo antes de entregar la mercancía, pronto se darán cuenta de que la transacción fue rechazada durante el proceso de extracción. La solución a este tipo de ataque es que el proveedor debe esperar al menos una confirmación de bloqueo antes de enviar la mercancía.
Ataque Finney
En este caso, el atacante es el minero. El minero extrae un bloque con su transacción y no lo libera en el sistema. Ahora usa las mismas monedas en una segunda transacción y luego libera el bloque pre-minado. Obviamente, la segunda transacción eventualmente sería rechazada por otros mineros, pero esto llevará algún tiempo. Para mitigar este riesgo, el vendedor debe esperar al menos seis confirmaciones de bloque antes de liberar la mercancía.
El ataque del 51%
En este tipo de ataque, llegamos a la suposición poco práctica de que alguien posee el 51% de la potencia informática de la red. El atacante en este tipo de ataque extrae una cadena de bloques privada donde gasta dos veces las monedas.
Como posee la mayor parte de la potencia informática, se le garantiza que su cadena de bloques privada en algún momento será más larga que la cadena de la red "honesta". Luego libera su cadena de bloques privada en el sistema, lo que hace que todas las transacciones registradas anteriormente en la cadena de bloques honesta sean inválidas.
Este tipo de ataque es ficticio, ya que resulta muy caro adquirir una potencia informática que iguala o supera el 51% de la potencia informática de toda la red.