¿Qué es un Hackeo Finney o Ataque Finney?

Es el primer ataque o hackeo conocido al Bitcoin y descubierto por quien fue la primera persona en recibir una transacción bitcoin, Hal Finney. El hackeo o ataque Finney como fue nombrado en su honor, es un tipo muy especial de ataque de doble gasto que afecta a Bitcoin y cualquier criptomoneda derivada del mismo.

El primer receptor de una transacción Bitcoin fue Hal Finney y fue quien habló por primera vez del lanzamiento de Bitcoin. También fue el primero en sugerir la posibilidad de un ataque de doble gasto en Bitcoin. Por esta razón, este ataque fue nombrado como Hackeo Finney o Ataque Finney en su honor.

El hackeo o ataque Finney es un tipo de hackeo o ataque de doble gasto que puede ocurrir cuando una persona acepta una transacción no confirmada en la red. Finney explicó que un minero puede generar un bloque donde se realizará una transacción desde una dirección A hacia otra dirección B, donde ambas direcciones le pertenecen. Luego, realizará otro pago con las mismas monedas, enviando desde la dirección A hacia una dirección C (la cual le pertenezca a otro usuario). Si dicho usuario acepta las transacciones sin confirmaciones de la red, el atacante puede liberar el bloque donde está incluida su transacción inicial. Esto invalida la transacción realizada al comerciante permitiéndole al atacante realizar el doble gasto.

¿Cómo se ejecuta un hackeo o ataque Finney?

Realizar este tipo de ataque de doble gasto no es una tarea fácil. Más bien al contrario, es muy difícil de ejecutar porque implica que el atacante es un minero capaz de extraer el bloque donde se validará sus transacciones. Además, necesita que un comerciante acepte una transacción con cero confirmaciones por parte de la red. Unir estas dos condiciones es bastante difícil. No obstante, en teoría es posible llegar a cabo aún cuando se tenga menos del 51% del poder de hash de la red. Veamos cómo se ejecuta este ataque en 3 pasos:

primer paso

El atacante realiza una transacción en la que envía sus monedas a una dirección bajo su control. Realizada esta acción, comienza un minar un bloque válido en el que está incluida dichas transacciones.

segundo paso

Cuando logra extraer el bloque e incluir las transacciones, no lo transmite a la red. En su lugar, realiza una compra con la misma cantidad de monedas que usa en la primera transacción. Así, busca realizar el pago de algún bien o servicio con la misma cantidad de dinero.

tercer paso

Luego de realizarle la transacción al comerciante y que éste la acepta sin confirmaciones, el atacante transmite a la red el bloque minado. Esta acción hace que la red acepte el bloque como válido, mientras invalida las transacciones realizadas al comerciante.

Cuando el atacante tiene éxito, significa que ejecutó un hackeo o ataque Finney. Sin embargo, dependiendo del poder de hash del minero, este ataque es bastante improbable de ejecutarse. Así, mientras más bajo es el poder de hashrate del minero, más bajas serán las probabilidades de que lo ejecute con éxito. Por otra parte, el ataque fallará en caso de que se encuentre otro bloque en la red en el tiempo en que el atacante se demorará en encontrar un bloque hasta generar la transacción al comerciante y que éste la acepte.

Por lo que realizar este tipo de ataque de doble gasto requiere de un ambiente cuidadoso y de mucha paciencia por parte del atacante. Ya que éste debe esperar a encontrar un bloque, lo que puede tomar mucho tiempo, más teniendo en cuenta la cantidad de mineros y la dificultad de la red. Además, el atacante debe poder comprar algún bien o pagar algún servicio a un comerciante en pocos minutos. Ya que como mencionamos, si otro minero encuentra y transmite otro bloque, la transacción al comerciante si será incluida y su ataque fallará.

¿Quiénes son susceptibles a sufrir un ataque Finney?

Si una persona o comerciante acepta pagos de transacciones sin confirmar, puede ser objeto de este ataque. Por ejemplo, alguna tienda con servicios en línea como la descarga de videojuegos que aceptan criptomonedas y que permiten la descarga de forma inmediata puede ser susceptible a este tipo de ataques. También es probable que esté a la orden del día en los supermercados, aunque en ellos el tiempo de compra no es exacto. Esto debido a que pueden haber muchas personas en la cola de pago lo que evita que un atacante pueda usar el tiempo a su favor.

¿Cómo protegerse de un ataque Finney?

La primera recomendación es esperar al menos 6 confirmaciones en la red Bitcoin para dar por segura e irreversible una transacción. No obstante, la descentralización de la red ha aumentado tanto que en la gran mayoría de los casos con 1 o 2 puede incluso ser suficiente, pudiendo incluso evaluar la cantidad de confirmaciones en función de la cantidad transaccionada.

Por ejemplo, si vas a aceptar menos de 100€, con una confirmación puede ser suficiente debido a que el coste del ataque sería superior a la Teoría de Juegos y el Equilibrio de Nash nunca va a favorecer a ejecutar el ataque.

Como hemos mencionado en artículos anteriores sobre las transacciones irreversibles, las transacciones en Bitcoin serán irreversibles a medida que se generen nuevos bloques sobre el que incluye la transacción. Reflejándose cada nuevo bloque como una confirmación a la transacción incluida. No obstante, para cantidades considerables, se recomienda esperar 6 confirmaciones para asegurarse de que las transacciones sean prácticamente imposibles de ser revertidas. Por lo que queda a riesgo de un usuario o comerciante, acepte transacciones sin confirmar por parte de otra persona.

Si un atacante pretende usar el ataque Finney para obtener algún bien ilíquido, es difícil hacer coincidir la necesidad de este bien con la búsqueda de un bloque. Sin embargo, si lo emplea como forma de obtener algo líquido, como intercambiar bitcoins por otra moneda, siempre existe una oportunidad de realizar. Pero es probable que el comerciante le solicite una cantidad de confirmaciones para llevar a cabo la acción. Por lo que en la práctica es bastante difícil e improbable lograr algo así.

CriptoMundo

CriptoMundo.com es un medio digital independiente que difunde noticias y contenido sobre criptomonedas y tendencias emergentes de tecnologías financieras. Ofrece noticias, guías, artículos de opinión y gráficos en tiempo real.

Monedas

Bitcoin

Ethereum