Vector de ataque XY (versión del ataque del 34% en IOTA)

61
pasarela de pagos con criptomonedas

Tiempo de lectura: 10 minutos
Aclaración: he procurado una traducción que reflejara el espíritu del artículo original favoreciendo la legibilidad antes que la complejidad técnica (que de hecho existe en este campo y es amplia). Algunos conceptos tales como Edge Nodes no han sido traducidos debido a que no existe -al menos, que yo sepa- terminología en español que de cuenta de su significado.

En Blockchain, como todos sabemos, el vector de ataque más conocido es el «Ataque del 51%». En los años transcurridos desde que se postuló la posibilidad teórica de este tipo de ataque, se ha conducido mucha investigación que apunta a que, en realidad, solo es necesario contar con el 34% del poder de hash de la red para llevarlo a cabo. Es decir que, partimos de un malentendido fundamental en lo que refiere a este vector de ataque (la gente piensa que requiere tener la mayoría de hashrate de la red, cuando en realidad solo requiere el 34% de ella). De todos modos, el porcentaje exacto es una mera formalidad y a continuación veremos cómo podría realizarse este ataque en IOTA.

A medida que se avance en la lectura de esta artículo, comprenderán que el «Ataque del 34%» no es en realidad un ataque del 34% en IOTA, de modo que vamos a referirnos a este escenario en términos del Ataque XY, para poner énfasis en los dos factores que se requerirán para llevarlo a cabo.

El primer y más crucial paso para entender todo esto es comprender la topología mesh net de IOTA, debido a que se trata de un aspecto que la diferencia del resto de los protocolos existentes en Blockchain. El anclaje mutuo (mutual thetering) y las posibilidades sucitadas por la conectividad IoT son los factores que llevaron a IOTA a un diseño basado en mesh net. Esta topología conlleva implicaciones que determinan la seguridad de la red, la más importante de las cuales es el modo en que fortalece la resistencia de la red contra el ataque XY.

IOTA mesh net: cada full node solo ve una pequeña parte de la Tangle, a través de su grupo de vecinos. Nadie tiene una lista de todas las direcciones IP de todos los nodos.

Ahora, abordemos el ataque XY en IOTA. Debido a que Blockchain no posee la topología de mesh nets, el ataque del 34% significa que si obtienes suficiente hashrate, el ataque puede conducirse con probabilidades de éxito. El porcentaje de la tasa de hashrate en la red es la única variable a considerar en esta clase de ataques contra Blockchain. Sin embargo, en IOTA, se requieren tres variables para este ataque (una de las cuales es fija).

1. X porcentaje del hashrate de la red
Una porción suficientemente grande del hashrate de la red («X%» [cualquier número]. Más adelante en este artículo, haremos referencia al concepto de gradiente multivariable): al igual que en Bitcoin, el atacante tendría que hacerse de una cantidad muy grande de hashrate para intentar controlar la red. Pero esta NO es la única variable en IOTA. En IOTA tampoco es posible un cambio de tipo «todo o nada» (all-or-nothing, que refiere a la posibilidad de modificar globalmente la estructura de datos de la Blockchain para lograr alterar el modo en que se construye consenso). Esta idea probablemente requiera un artículo completo en sí mismo, pero basta con decir que los ataques XY solo pueden afectar algunas capas de la Tangle, haciendo necesario un ataque XY exponencialmente más fuerte para propagarse más y más en la Tangle.

2. Omnipresencia
Ver toda la topología de red a la vez. «Tener una visión general de la red».
Los recursos para implementar un ataque de manera adecuada y eficiente, requieren el acceso a una una visión general amplia de cada conexión entre full nodes en la Tangle. Esto es obviamente imposible ya que cada conexión se mantiene privada, y ninguna entidad puede mapear la red.

3. Y porcentaje de omnipotencia
Estar emparejado con un cierto porcentaje de full nodes en la red.
Se requeriría tener como vecinos a una porción suficientemente grande de la red (Y% omnipotencia): el atacante debe ser capaz de utilizar su cantidad masiva de hashrate (X% del hashpower de la red) a través de la Tangle repentinamente (un ataque no repentino no representa un ataque, por lo que el caracter repentino es una subcategoría de este tercer requisito).

Por ejemplo: un atacante necesita un X% del hashrate de la red y está emparejado con un Y% de todos los vecinos en la Tangle. Para propagar exitosamente el ataque, una visión general de cada conexión en la red sería indispensable. Sin embargo, como ya se ha mencionado, la topología empleada hace de esto una tarea imposible. Podemos decir entonces, que este ataque es muy improbable.

Digamos que X = 25% e Y = 15%: el atacante podría controlar una pequeña cantidad de edge nodes (aquellos nodos a los que hubiera conseguido conectarse). Aquí es donde el concepto de «gradiente» entra en juego. La combinación de X e Y determinará qué porcentaje de edge nodes se podrían afectar en un ataque y, por lo tanto, la efectividad del ataque. X puede ser 99%, pero sin suficiente Y, el ataque solo puede reducir un porcentaje muy pequeño de edge nodes (¡alrededor de Y%!). Los edge nodes y aquelos nodos que los rodean se verán afectados por el ataque y se reiniciarían o simplemente incluirían en la lista negra al atacante para poder volver a funcionar normalmente. La naturaleza de baja latencia de una mesh net significa que hay un gradiente de ataque que depende de X e Y.

Por último, digamos que el atacante quiere propagar su ataque más profundamente en la Tangle. Supongamos que cuenta con X = 40% e Y = 20%: el atacante llegaría a afectar muchos más edge nodes y podría propagar el ataque más allá que en el ejemplo anterior. Cuanto mayor / mejor sea la combinación de X e Y, más profundo puede propagarse el ataque a la Tangle. En teoría, esto requeriría aumentos exponenciales tanto en la potencia de hash empleado como en el hallazgo y mantenimiento de vecinos para hacer incrementos marginales en la profundidad de ataque a la Tangle, haciendo que los órdenes de magnitud de Tangle sean más resistentes a tales ataques que las redes basdas en Blockchain.

Fuente: https://forum.helloiota.com/469/XY-Attack-Vector-IOTAs-version-of-the-34-attack

Comentarios

comentarios