¿Qué son los algoritmos de consenso?

¿Qué es un algoritmo de consenso?

Los algoritmos de consenso son mecanismos que permiten a los usuarios o máquinas coordinarse en un entorno distribuido. Debe garantizar que todos los miembros de un sistema puedan ponerse de acuerdo sobre una única fuente de verdad, incluso si algunos de los miembros fallan. LOSpor cierto, el sistema debe ser tolerante a fallos.

En una configuración centralizada, una sola entidad tiene poder sobre el sistema. En la mayoría de los casos, puede realizar los cambios que desee; no existe un sistema de gobierno complejo para lograr el consenso entre varios administradores.

En un entorno descentralizado, es bastante diferente. Digamos que estamos trabajando con una base de datos distribuida, ¿cómo nos ponemos de acuerdo sobre qué entradas se agregan?

Superar este desafío en un entorno donde los extraños no confían entre sí fue quizás el desarrollo más importante que allanó el camino para las cadenas de bloques. En este artículo veremos cómo los algoritmos de consenso son vitales para el funcionamiento de las Criptomonedas y los libros de contabilidad distribuidos.

Algoritmos de consenso y criptomonedas

En Criptomonedas, los saldos de los usuarios se registran en una base de datos: la cadena de bloques (Servicios). Es fundamental que todos los usuarios (nodos / nodos) mantengan una copia idéntica de la base de datos. De lo contrario, habría información contradictoria, poniendo en peligro todo el propósito de una red de criptomonedas.

Los algoritmos de consenso son mecanismos que permiten a los usuarios o máquinas coordinarse en un entorno distribuido. Debe garantizar que todos los miembros de un sistema puedan ponerse de acuerdo sobre una única fuente de verdad, incluso si algunos de los miembros fallan. De hecho, el sistema debe ser tolerante a fallos.

Cifrado de Llave pública asegura que los usuarios no puedan gastar las monedas de otras personas. Pero aún requiere una única fuente de verdad en la que los participantes de la red confíen, para poder determinar si los fondos ya se han gastado o no.

Satoshi Nakamoto, el creador de Bitcoin, propuso un sistema de Prueba de trabajo para coordinar a los participantes. Identificaremos algunas de las características comunes de los distintos algoritmos de consenso que existen.

Primero, requerimos que los usuarios que quieran agregar bloques (llamémosles validadores) proporcionen una membresía.

Una apuesta es un tipo de valor que el validador debe proporcionar, lo que los disuade de actuar de manera deshonesta. Si hacen trampa, perderán el valor de sus acciones. Los ejemplos de apuestas incluyen el poder de cómputo, las criptomonedas o incluso la reputación.

¿Por qué arriesgarían sus propios recursos? Además, hay una recompensa disponible. Por lo general, la recompensa es la moneda digital nativa del protocolo y se compone de tarifas pagadas por otros usuarios, unidades de moneda digital recién generadas o ambas. El último elemento necesario es la transparencia.

Necesitamos poder detectar cuando un usuario está engañoso. Idealmente, la producción de bloques debería ser cara, pero la validación por parte de cualquier usuario debería ser barata. Esto garantiza que los usuarios habituales comprueben constantemente los validadores.

Tipos de algoritmos de consenso

Prueba de trabajo (PoW)

Prueba de trabajo (Prueba de Trabajo - PoW) es el padrino de los algoritmos de consenso en la tecnología blockchain. Se ejecutó por primera vez en Bitcoin (BTC), pero el concepto existe desde hace algún tiempo. En Prueba de trabajo, los validadores (conocidos como mineros) tienen los datos que quieren agregar hasta que producen una solución válida específica.

Un hash es una secuencia aparentemente aleatoria de letras y números que se crea cuando envía datos a través de una función. hachís. Sin embargo, si vuelve a enviar los mismos datos, siempre obtendrá el mismo resultado. Pero si cambia solo un detalle, su hash resultante será completamente diferente.

Al mirar la salida, no puede saber qué información se ingresó en la función. Por lo tanto, es posible demostrar que conocía datos o información antes de un momento determinado. Puede darle a alguien un hash, y cuando revele los datos más tarde, esa persona puede enviarlo a través de la función para confirmar que el resultado será el mismo.

En Prueba de trabajo, el protocolo establece condiciones sobre lo que hace válido un bloque. Por ejemplo, puede haber una condición de que solo un bloque cuyo hash comience con 00 sea válido. La única forma de que el minero cree un bloque que cumpla con esta condición es probar varias entradas. Pueden modificar parámetros en sus datos para producir un resultado diferente cada vez, hasta que obtengan el hash correcto.

En las cadenas de bloques principales, el nivel de dificultad es increíblemente alto. Para competir con otros mineros, necesitaría un cobertizo lleno de hardware hash especializado (ASIC) para tener la posibilidad de producir un bloque válido.

Cuando está extrayendo, su interés está en el costo de las máquinas y la electricidad necesaria para hacerlas funcionar. usted ASIC (circuitos integrados específicos de la aplicación) están diseñados específicamente, por lo que no tienen otro uso que la minería de criptomonedas. Su única forma de recuperar su inversión inicial es la minería, que proporciona una recompensa significativa si agrega con éxito un nuevo bloque a la cadena de bloques.

Determinar si realmente ha creado un bloque válido es un proceso simple para la creación de redes. Incluso si ha probado billones de combinaciones para obtener el hash correcto, solo necesitan enviar sus datos a través de la función una vez. Si sus datos producen un hash válido, será aceptado y recibirá una recompensa. De lo contrario, la red rechazará el hash y habrá desperdiciado electricidad y tiempo.

Prueba de Estaca (PoS)

La prueba de participación (PoS) se propuso en los primeros días de Bitcoin como una alternativa a la prueba de trabajo. En un sistema PoS, no hay conceptos de mineros, no hay hardware especializado y no hay necesidad de un gran consumo de energía. Una computadora corriente será suficiente. Bueno, en realidad, eso no es todo. Todavía requiere un poco de esfuerzo.

Los algoritmos de consenso son mecanismos que permiten a los usuarios o máquinas coordinarse en un entorno distribuido. Debe garantizar que todos los miembros de un sistema puedan ponerse de acuerdo sobre una única fuente de verdad, incluso si algunos de los miembros fallan. De hecho, el sistema debe ser tolerante a fallos.

 

En PoS, no proporciona un recurso externo (como electricidad o hardware), sino un recurso interno: moneda criptográfica. Las reglas varían según el protocolo, pero generalmente debe mantener una cantidad mínima de fondos para calificar para la participación.

A partir de ahí, bloquea sus fondos en una billetera (no se pueden mover mientras está apostando). Normalmente, existe un consenso entre los validadores sobre qué transacciones se insertarán en el siguiente bloque. En cierto sentido, haces una apuesta sobre qué bloque se seleccionará. El protocolo elegirá uno de los bloques candidatos.

Si se selecciona su bloque, recibirá una proporción de las tarifas de transacción dependiendo del valor de su participación. Cuantos más fondos haya bloqueado, más recompensas recibirá. Pero si intenta hacer trampa proponiendo transacciones no válidas, perderá parte (o la totalidad) de su valor de tenencia. Así que tenemos un mecanismo similar a un PoW: actuar con honestidad es más rentable que actuar deshonestamente.

Generalmente, no se crea una nueva moneda digital como recompensa para los validadores. Por lo tanto, la moneda nativa de la cadena de bloques debe emitirse de otra manera. Esto se puede hacer a través de una implementación inicial (es decir, una ICO o IEO) o iniciando el protocolo como PoW y luego haciendo la transición al sistema PoS.

Hasta ahora, la evidencia pura de participación solo se ha implementado realmente en Criptomonedas más pequeñas. Aún así, no está claro si puede servir como una alternativa viable a PoW. Si bien suena en teoría, parece correcto, en la práctica es muy diferente.

Una vez que PoS se implementa en una red con grandes cantidades de valor, el sistema se convierte en un campo de juego de teoría de juegos e incentivos financieros. Cualquiera con el conocimiento para "hackear" un sistema PoS probablemente no lo haría si no pudiera beneficiarse de él, por lo que la única forma de averiguar si es un sistema viable es evaluar una red en funcionamiento en la práctica.

Pronto veremos que PoS se prueba a escala masiva: Casper se implementará como parte de una serie de actualizaciones a la red Ethereum (conocida colectivamente como Ethereum 2.0).

Otros algoritmos de consenso

Prueba de trabajo y Prueba de participación son los algoritmos de consenso más discutidos. Pero hay una amplia variedad de otros, todos con sus pros y sus contras.

Conclusión

Los mecanismos para llegar a un consenso son vitales para el funcionamiento de los sistemas distribuidos. Muchos creen que la mayor innovación de Bitcoin fue el uso de Prueba de trabajo para permitir a los usuarios ponerse de acuerdo sobre un conjunto de hechos compartidos.

Hoy en día, los algoritmos de consenso sustentan no solo los sistemas de dinero digital, sino también las cadenas de bloques, lo que permite a los desarrolladores ejecutar código en una red distribuida. Ahora representan la piedra angular de t.ecnología cadenas y son fundamentales para la viabilidad a largo plazo de las diversas redes existentes.

De todos los algoritmos de consenso, la Prueba de trabajo sigue siendo dominante. Aún no se ha propuesto una alternativa más confiable y segura. Hay mucha investigación relacionada con el desarrollo de reemplazos para PoW y es probable que veamos más propuestas en los próximos años.

5/5 - (5 notas)

Puestos Relacionados

error: