Saltar al contenido
Ultimas Noticias de Criptomonedas Bitcoin, Ethereum, XRP

Disponibilidad dinámica: garantías basadas en protocolos

diciembre 14, 2023
disponibilidad-dinamica:-garantias-basadas-en-protocolos

IOTA 2.0 Introducción Parte 12

Disponibilidad dinámica: garantías basadas en protocolos

TL;DR:
La mayoría de los libros de contabilidad distribuidos pueden ser seguros pero lentos o rápidos pero vulnerables. IOTA 2.0 es un protocolo disponible dinámicamente, lo que significa que la red no se detendrá incluso si la mayoría de los nodos se desconectan; en cambio, sigue incluyendo transacciones y las confirma una vez que los validadores vuelven a estar en línea. Esto permite a los usuarios encontrar su propio equilibrio entre cautela y optimismo según sus expectativas sobre el libro mayor.

Cuando interactúa con un libro de contabilidad distribuido, es probable que tenga dos expectativas fundamentales. Quiere estar seguro de que los datos enviados eventualmente encontrarán un lugar en el libro mayor y que, una vez incluidos, el destino de sus datos se determinará definitivamente. Si bien esta doble expectativa puede parecer obvia en el contexto de los libros de contabilidad distribuidos, la realidad es que muchas cadenas de bloques solo son capaces de cumplir un aspecto de esta promesa (como se analiza en tsu artículo del Simposio IEEE sobre seguridad y privacidad de 2021).

Una de las características destacadas de IOTA 2.0 es su capacidad para garantizar disponibilidad dinámica. Esto le permite procesar sus transacciones sin problemas a pesar de cualquier falla transitoria que pueda surgir en el protocolo de consenso, al mismo tiempo que garantiza que sus transacciones serán finalizado definitivamente por el protocolo de consenso.

En esta publicación de blog, exploraremos la disponibilidad dinámica y descubriremos las razones por las que lograr simultáneamente la disponibilidad dinámica y la finalidad definitiva puede ser un desafío, pero es un desafío que IOTA 2.0 aborda de manera efectiva.

Falta de confiabilidad de las redes

Para comprender por qué es difícil lograr simultáneamente disponibilidad dinámica y finalidad definitiva, es importante recordar una realidad de las redes informáticas actuales que a menudo se pasa por alto: su falta de confiabilidad inherente. Las redes informáticas comprenden estructuras en capas donde cada capa es susceptible a numerosos tipos de fallas, que van desde fallas de hardware en los dispositivos de red hasta anomalías en el medio físico o mal comportamiento imprevisto en los algoritmos de comunicación.

Las implicaciones de la falta de confiabilidad de la red, combinadas con la probabilidad de un comportamiento conflictivo intencional por parte de pares en la red, dan lugar a algunos desafíos de comunicación importantes. Por ejemplo, consideramos un escenario en el que establece una conexión por cable directa con alguien en una configuración de comunicación de igual a igual. Después de establecer la conexión, envía un mensaje a su compañero preguntándole «¿Estás ahí?» al cual no recibe respuesta. Dada la naturaleza poco confiable del medio de comunicación, resulta imposible distinguir entre dos situaciones potenciales:

  1. Tu compañero es un honesto participante y envió una respuesta SÍ, pero no recibió el mensaje debido a fallas en la red o tiempo de espera insuficiente. (Nota: en teoría, el tiempo de espera nunca es lo suficientemente largo como para garantizar la recepción).
  2. Tu compañero es un adversario participante y decidió no enviarle una respuesta a pesar de que la conexión funciona perfectamente.
Disponibilidad dinámica: garantías basadas en protocolos

Este ejemplo destaca el desafío central que plantea la falta de confiabilidad de la red: se vuelve imposible determinar la honestidad de los participantes dentro de la red. Esto significa que en cualquier red peer-to-peer, no es posible determinar ni la existencia ni el número de nodos adversarios. Además, si existe algún nodo adversario, puede proporcionarle a su par respuestas contradictorias, dificultando cualquier colaboración entre nodos. Ésta es la realidad de cómo funciona Internet, y los libros de contabilidad distribuidos que se crean en Internet no son una excepción a estos desafíos.

La colaboración entre nodos distribuidos es una tarea desafiante. Durante los últimos 50 años se han estudiado varios enfoques para este problema. Profundicemos en estos enfoques, analizándolos en dos categorías: asegurar la finalidad y asegurar la disponibilidad.

Garantizar la finalidad: protocolos de consenso basados ​​en votaciones

La primera categoría de soluciones se basa en la supermayoría de un conjunto predeterminado de nodos en la red, conocido como protocolos de consenso basados ​​en votaciones. Estos protocolos se basan en dos supuestos clave:

  • Cada nodo que participa en el protocolo de consenso tiene conocimiento del número total de nodos en el protocolo.
  • Existe un límite superior en el número de nodos adversarios, que todos los participantes conocen. (Nota: ha sido teóricamente probado Ese consenso no se puede lograr cuando más de un tercio de los nodos son adversarios).

En los libros de contabilidad distribuidos que se basan en los supuestos anteriores, el consenso entre los nodos sobre qué datos deben agregarse al libro de contabilidad se logra buscando la aprobación de una supermayoría (en otras palabras, más de dos tercios) de los pares. Este requisito garantiza que los nodos honestos nunca tendrán puntos de vista contradictorios sobre el libro mayor. En consecuencia, los datos aprobados pueden escribirse en el libro mayor de forma irreversible, lo que significa que la transacción (o cualquier otro dato considerado) es finalizado.

Para comprender el comportamiento de los protocolos de consenso basados ​​en votación bajo participación dinámica, consideramos el siguiente escenario. Imagine un libro de contabilidad distribuido por una red de 10 pares. Estos pares deciden la inclusión de transacciones en el libro mayor utilizando el procedimiento antes mencionado: se escribe un conjunto de transacciones en el libro mayor distribuido si recibe la confirmación de siete pares.

Ahora imagina una situación en la que cuatro de los pares pierden conectividad con los seis restantes debido a un problema de red. Afortunadamente, los seis pares restantes continúan aplicando con benevolencia el protocolo de consenso. Sin embargo, dado que los nodos desconectados no pueden determinar si el problema radica en la conectividad de la red o si el conjunto de transacciones candidato carece de confirmaciones suficientes, no se puede escribir ningún conjunto de transacciones en el libro mayor hasta que se resuelva el problema de conexión. En otras palabras, el libro mayor sufre una pérdida de disponibilidad.

En resumen, los protocolos de consenso basados ​​en votación utilizados en soluciones blockchain como Algorando, mente tierna, avalanchay IUE garantizar que todo lo que esté escrito en el libro mayor esté definitivamente finalizado, mientras que el protocolo de consenso puede detener el procesamiento de transacciones en caso de falta de un número suficiente de participantes predeterminados.

Garantizar la disponibilidad: protocolos de consenso basados ​​en pruebas

Antes de presentar el segundo conjunto de soluciones de consenso, vale la pena mencionar que antes se creía ampliamente que el consenso entre pares en los que no se confiaba con participación dinámica era imposible, ya que esto El documento de 2010 sobre computación multipartita deja en claro. Esta noción se mantuvo firme hasta que surgió una idea innovadora, que reúne una combinación de técnicas establecidas como prueba de trabajo, cadenas de hash y árboles Merkle. Esta solución, conocida como Consenso de Nakamoto, marcó el inicio de la revolución blockchain con la introducción de la blockchain Bitcoin.

El algoritmo del Consenso de Nakamoto se basa en un principio simple. Los participantes del consenso, llamados mineros, compiten entre sí para resolver un rompecabezas criptográfico (es decir, demostrar sus recursos computacionales), sin necesidad de saber cuantos mineros existen en la red. El procedimiento de resolución de acertijos es similar a una lotería en la que la probabilidad de ganar para un nodo es proporcional a la potencia de cálculo del nodo. El solucionador del rompecabezas tiene el derecho de determinar el conjunto de transacciones que se escribirán en el siguiente bloquear del libro mayor.

La característica distintiva de los protocolos de consenso basados ​​en pruebas es el hecho de que el protocolo continúa funcionando incluso cuando solo hay un minero. Por lo tanto, los nudos mineros son libres de abandonar y volver a ingresar a la competencia en cualquier momento. Así, el protocolo se mantiene. disponibilidad incluso en condiciones de red indeseables.

Para hacer frente a los casos en los que hay varios líderes (solucionadores simultáneos del rompecabezas), los nodos honestos siguen una regla simple: seleccionar el libro mayor con el mayor número de bloques (es decir, la cadena más larga). En los casos en que las cadenas tengan la misma longitud, elija la que haya visto antes.

Tenga en cuenta que, en el escenario dado, no hay manera de determinar si hay un conjunto de adversarios que están procesando un libro de contabilidad paralelo sin informar al resto de la red hasta que su libro de contabilidad sea más largo que la cadena del nodo. benévolo. Cuando tienen una cadena más larga, revelan su cadena, esperando que el resto de la red se adapte a ella, ignorando así efectivamente todas las transacciones que estaban en los bloques descuidados. Debido a esto, nunca se puede estar seguro de si una transacción es irreversible.

Bitcoin y los protocolos de consenso basados ​​en pruebas se basan en una finalidad probabilística: En ausencia de nodos maliciosos, la probabilidad de que se revoque una transacción en un bloque se reduzca exponencialmente con el número de bloques sucesivos. A análisis reciente muestra que una transacción contenida en un bloque de Bitcoin que tiene seis rondas más antigua que el bloque más nuevo puede ser revertida con éxito con una probabilidad de entre 0,11% y 0,16% por un adversario que controle el 10% del poder minero. Cardano y Ethereum basado en prueba de trabajo son otros ejemplos de blockchains con garantías probabilísticas de finalidad.

Disponibilidad dinámica: garantías basadas en protocolos

Elegir lo mejor de ambos mundos: consenso flexible

Como hemos visto, las dos categorías de consenso tienen sus fortalezas y debilidades. Mientras que los protocolos de consenso basados ​​en votaciones priorizan la coherencia sobre la disponibilidad, los modelos de consenso basados ​​en pruebas, similares a los de Nakamoto, garantizan una participación dinámica a costa de una finalidad definitiva.

En los sistemas distribuidos, es bien sabido que lograr tanto la participación dinámica y garantizar la seguridad bajo las particiones de la red es imposible, como sostiene este artículo de 2002.

Sin embargo, es posible diseñar un protocolo de consenso en el que coexistan dos tipos de modelos de consenso y permitirle al usuario determinar el nivel de seguridad en el espectro entre la finalidad definitiva y la disponibilidad dinámica.

Este es el enfoque adoptado por IOTA 2.0.

IOTA 2.0: finalidad definitiva y disponibilidad dinámica

Como exploramos en la Parte 6 de esta serie de publicaciones de blog, IOTA 2.0 adopta un enfoque en capas para alcanzar el consenso. Se garantiza que los bloques emitidos por los usuarios y enviados a la red se incluirán en Tangle y recibirán una respuesta más rápida. aceptación bandera, mientras que un mecanismo de consenso en curso f Finalmente decida sobre su irreversibilidad. Este enfoque es similar a tener un dispositivo de finalidad ejecutándose junto con un procedimiento de creación de bloques disponible dinámicamente, como se implementa en Ethererum (Prueba de participación)) y Lunares cadenas de bloques.

Disponibilidad dinámica: garantías basadas en protocolos

Por lo tanto, en IOTA 2.0, depende de usted, el usuario, determinar el nivel de seguridad. Al revelar sus transacciones a la red y recibir una rápida aceptación, puede comenzar a construir de manera optimista sobre las transacciones aceptadas antes de que el protocolo de consenso tome la decisión final sobre su transacción. Por el contrario, un usuario más conservador puede optar por esperar a que sus transacciones reciban el finalizado. bandera antes de realizar cualquier acción que dependa de la transacción aceptada. No hace falta decir que puedes ajustar dinámicamente tu nivel de precaución al usar IOTA 2.0: continúa construyendo sobre tus transacciones de bajo riesgo tan pronto como estén aceptadoy espere a que se realicen sus transacciones de alto riesgo. finalizado antes de continuar.

La próxima publicación del blog de esta serie presenta La tokenonomía sostenible de IOTA 2.0.


Únase a la conversación en X


Introducción a IOTA 2.0

Parte 1: Autonomía digital para todos: el futuro de IOTA

Parte 2: Cinco principios: los fundamentos que toda DLT necesita

Parte 3: Explicación del flujo de datos: cómo procesan los bloques los nodos

Parte 4: Explicación de las estructuras de datos: los componentes básicos que forman el conjunto

Parte 5: Cuentas, tokens, maná y apuestas

Parte 6: Un nuevo modelo de consenso: el consenso de Nakamoto sobre un DAG

Parte 7: Bloques de confirmación: cómo funcionan los validadores

Parte 8: Control de congestión: regulación del acceso en un sistema sin permisos

Parte 9: Explicación de la finalidad: cómo los nodos sincronizan el libro mayor

Parte 10: Una elección obvia: ¿Por qué DAG en lugar de Blockchain?

Parte 11: ¿Qué hace que IOTA 2.0 sea seguro?

Parte 12: Disponibilidad dinámica: garantías basadas en protocolos

Parte 13: Tokenómica justa para todos los poseedores de tokens

Parte 14: UTXO vs Cuentas: fusionando lo mejor de ambos mundos

Parte 15: Sin Mempool, sin MEV: proteger a los usuarios contra la extracción de valor

Parte 16: Escritura accesible: reduciendo las barreras de entrada


Ajustes