¿Qué es un algoritmo de consenso?

By Anycoin Direct

Cuando vea estos términos por primera vez se rascará la cabeza detrás de las orejas. ¿Un algoritmo de consenso? ¿Qué demonios es eso? Después de seguir esta lección, no sólo sabrá lo que es, sino también qué formas adopta.

Breve resumen

✔️ Consenso en el contexto de las criptomonedas significa llegar a un acuerdo sobre el estado de una cadena de bloques.

✔️ Un algoritmo es una forma de resolver un problema matemático o informático.

✔️ Un algoritmo de consenso garantiza que los validadores trabajen juntos para asegurar un nuevo bloque correcto en una blockchain.

Algoritmo de consenso

Un algoritmo de consenso consta de dos palabras, la primera de las cuales es bastante fácil de explicar. Consenso significa acuerdo, o estar de acuerdo.

En el contexto de las criptomonedas, consenso significa ponerse de acuerdo sobre el estado de una blockchain.

Y aquí viene la parte complicada. Todo el mundo conoce la palabra algoritmo, pero ¿qué significa exactamente?

Un algoritmo es una forma de resolver un problema matemático o informático. Implica trabajar desde un estado inicial hasta el objetivo final aplicando instrucciones definidas de forma única. Menudo trabalenguas. Puede ser más fácil.

El objetivo de un algoritmo es resolver un problema. Las instrucciones de un buen algoritmo trabajan para que el objetivo final se alcance de la forma más eficiente posible.

La palabra algoritmo se utiliza actualmente para todos los procedimientos finitos para resolver problemas o realizar tareas.

Así, cuando hablamos de un algoritmo de consenso nos referimos a un conjunto de instrucciones que llevan a alcanzar un consenso entre los participantes de una red blockchain. Estos participantes deben mantener (validar) el estado de la red blockchain y acordar siempre por mayoría que el nuevo estado de la red es correcto.

En términos humanos ordinarios, se podría decir que un programa informático (algoritmo) garantiza que los participantes (validadores) se pongan de acuerdo sobre un resultado concreto (el estado de la blockchain).

Un ejemplo de algoritmo es el de Euclides sobre el divisor general:

Mientras A y B no sean iguales: resta del mayor de los dos el otro. En cuanto son iguales, el máximo común divisor es a (o b).

¡Y esto es sólo un ejemplo sencillo!

La palabra algoritmo proviene de la antigüedad. Es una corrupción del nombre de un matemático persa del siglo VIII, Al-Chwarizmi. El primer algoritmo conocido para un ordenador fue escrito en 1842 por Ada Lovelace, la hija de lord Byron.

¿Cómo funciona un algoritmo de consenso?

Un algoritmo de consenso garantiza que los validadores trabajen juntos para asegurar un nuevo bloque correcto en una cadena de bloques. Aumenta la seguridad de una cadena de bloques y garantiza que una cadena de bloques no necesite mantenimiento, todo sucede por sí mismo. A esto lo llamamos descentralizado, porque la red no necesita una autoridad central que lo controle todo, como un banco, por ejemplo.

Un nuevo bloque en una blockchain contiene transacciones y nuevos tokens. Si una mayoría de validadores se pone de acuerdo sobre qué transacciones se han producido desde la creación del último bloque y a quién le corresponde crear el nuevo bloque, el validador designado empezará a crear este bloque y la cadena se habrá ampliado en un bloque.

¿Qué variantes de algoritmo de consenso existen?

Proof of work

Los validadores que pueden crear un nuevo bloque se eligen de muchas maneras. La forma más conocida es la proof of work (minería). En ella, a la persona que resolvió primero un difícil puzzle criptográfico se le permite crear el nuevo bloque si la mayoría de sus colegas (también mineros o validadores) están de acuerdo (consenso) en que este nuevo bloque es correcto. Este algoritmo ha demostrado ser muy seguro, aunque no es sostenible debido al consumo de energía. La creación de grandes pools de minería crea centralización.

Proof of stake

Otra forma muy conocida de hacerlo es mediante la prueba de participación (proof of stake), de la que existen muchas variantes. Consiste en designar o sortear a un validador concreto que consigue crear el nuevo bloque si la mayoría de los validadores (nodos) están de acuerdo en que el nuevo bloque es correcto. La prueba de apuesta implica poner monedas en juego, o apostar y mantener. La seguridad de este algoritmo radica en que las personas que tienen que mantener la seguridad de la red pierden monedas si no lo hacen, por lo que es muy seguro. Sin embargo, las personas con muchas monedas se hacen cada vez más ricas y ganan más influencia en la red.

Proof of stake

Un pequeño grupo de validadores pone en juego muchas monedas y las personas con menos monedas ponen sus monedas en juego con estos delegados. Los delegados ganan un gran número de monedas en juego, que comparten con las personas que los delegaron. Este algoritmo de consenso proporciona validadores elegidos democráticamente y escala bien. Sin embargo, puede crear favoritismo, donde existe un factor de favor entre unos y otros y una centralización de la influencia.

Proof of burn

Se trata de un mecanismo de consenso bastante extraño en el que es más probable añadir un bloque si se queman más monedas. Quemar monedas significa destruirlas, por ejemplo enviándolas a la red equivocada o algo similar. Por supuesto, la inflación será bastante baja si se queman tantas monedas, pero como a la gente no le gusta destruir sus monedas supongo que nunca será muy popular.

Proof of capacity

Este mecanismo de consenso también se conoce como prueba de espacio. Cuanto más espacio añada en su disco duro a una red, más probabilidades tendrá de obtener una recompensa por ello. La ventaja de este mecanismo es que consume poca energía. Las desventajas son que necesita discos duros enormes y tiene que asegurarlos bien contra malware y virus.

Proof of authority

Aquí no pone en juego sus monedas, sino su nombre o reputación. Cualquiera que no asuma sus responsabilidades será conocido como un mal validador, y otras redes pueden empezar a evitarle. Especialmente las grandes bolsas e intercambios no pueden permitirse esto. Como los validadores no quieren poner su nombre en juego, se comportarán bien. Como se comportan tan bien, también tendrán la mayor autoridad y, por tanto, obtendrán la mayor cantidad de monedas, lo que creará la centralización.

Proof of participation

Este algoritmo de consenso también funciona con la reputación, pero entre validadores y nodos. Cuanto mejor se comprometan con la red, más a menudo serán elegidos para crear nuevas monedas. Es uno de los mecanismos más justos, aunque relativamente pocas monedas importantes trabajan con él.

Proof of elapsed time

Mientras que la mayoría de las blockchains carecen de permisos, lo que significa que no se necesita permiso para unirse a una red, este mecanismo de consenso es uno en el que sí se necesita permiso. En este algoritmo, los validadores se asignan aleatoriamente para que se les permita añadir monedas a la blockchain en función de quién se despierta primero, tras el inicio del "tiempo de sueño" (tiempo transcurrido). Es justo, consume poca energía, pero se necesita permiso para participar, lo que siempre conlleva el riesgo de ser censurado.

Delayed proof of work

Utiliza la potencia de hash de las redes más grandes para proteger a la red más pequeña de los ataques. Esto proporciona a la red una mayor seguridad.

Effective proof of stake

En ella, los primeros acuñadores, considerados los más fiables, son los designados para acuñar nuevas monedas. Sin embargo, se siguen proporcionando recompensas a los recién llegados, para que no todas las monedas se centralicen.

Pure proof of stake

Se trata de un algoritmo basado en la lotería en el que todo el mundo recibe el mismo número de "lotes" para participar en función de sus monedas en juego. Por supuesto, los que tienen más lotes suelen ganar. Se trata de un sistema muy descentralizado.

Bonded proof of stake

En este mecanismo de consenso, usted ata sus monedas durante un tiempo determinado. Cuanto más inmovilice, más votos podrá presentar. Una desventaja de este método es que los participantes pueden perder mucho dinero durante el tiempo que sus monedas están inmovilizadas si la moneda se desploma o el mercado bajista hace que valgan menos.

Nominated proof of stake

En este, los stakers nominan a los validadores para hacer nuevos bloques. Quien obtenga más votos podrá hacerlo. Puede haber favoritismo, ya que los validadores menos importantes siguen obteniendo el mayor número de votos. Por otro lado, es un sistema sencillo que consume poca energía y funciona con rapidez.

Proof of stake time

Cuanto más tiempo apueste una moneda, mayores serán sus recompensas. Esto le proporciona validadores muy fiables, pero en algún momento tendrán todas las monedas, porque ya nadie se deshace de ellas. La falta de oferta puede hacer que baje el interés e incluso que se desplome el precio.

Leased proof of stake

Aquí, los apostadores alquilan monedas a los validadores, tras lo cual reciben una parte de las ganancias de los bloques sumados por dicho validador. Una ventaja es que no tiene que apostar grandes cantidades para participar. Una desventaja es que tiene que empezar a evaluar a los validadores usted mismo antes de alquilar monedas a un validador.

Anonymous proof of stake

Este algoritmo mantiene oculta su identidad, lo que le permite apostar y obtener recompensas de forma anónima. Este tipo de monedas puede estar prohibido en algunos países precisamente por el riesgo de blanqueo de dinero y fraude.

Hybrid proof of stake

Combina la proof of work y la proof of stake. Trata de obtener lo mejor de ambos mundos.

Delegated proof of contribution

Cuanto más haga por una red, más probabilidades tendrá de que se le permita crear nuevos bloques o recibir monedas. Tanto el votante como el nominado reciben recompensas de la red.

Secure proof of stake

Este algoritmo funciona tanto con el número de monedas en juego como con la calificación del validador. Utiliza un RNG que no puede predecirse ni influenciarse. Se trata de un sistema bastante justo.

Tresholded proof of stake

Se trata de una especie de sistema de subasta, en el que se permite a los participantes añadir monedas en proporción al tamaño de su puja durante un tiempo determinado. Dado que muchas personas son elegidas con un papel y, por tanto, con monedas, se trata de un sistema bastante descentralizado. El treshold significa que hay que poner un umbral calculado para participar por una recompensa.

Roll delegated proof of stake

En este, los delegados son elegidos a través de un RNG para añadir un nuevo bloque a la blockchain. Esto evita el favoritismo.

Proof of coverage

Este mecanismo de consenso comprueba que realmente se está manteniendo la red en la que se afirma tener participación. Los participantes en esta red envían y reciben señales y son recompensados por hacerlo. Es una forma barata y de bajo consumo de añadir monedas. El inconveniente, sin embargo, es que los lugares pueden saturarse de mineros o al revés, lo que puede reducir los ingresos al mínimo.

Proof of history

Este algoritmo funciona con marcas de tiempo (lleva la cuenta del tiempo) cuando se crea un bloque. El uso de la altura del bloque (indica en qué parte de la cadena de bloques se encuentra el bloque) hace que la red sea mucho más rápida. Bitcoin, por ejemplo, utiliza dos marcas de tiempo.

Proof of importance

Este es uno de los raros entre los romanos. Tienes que apostar muchas monedas, si eres considerado importante puedes cosechar muchas monedas nuevas. Se llega a ser importante si se tienen muchas monedas, se conservan durante mucho tiempo y si se hace mucho comercio con ellas. ¡Aléjese de la hierba! ¿Cómo puede pensar en esto?

Delegated proof of broker

Usted se convierte en corredor si distribuye un determinado número de monedas entre varias bolsas. El software de la red ejecutará entonces automáticamente las rutas comerciales a través del agregador de liquidez de las cuentas del broker. Los Strikers pueden elegir un corredor, que debe proporcionarles recompensas atractivas. Este principio es muy rápido y escalable.

Proof of transfer

Se trata de un algoritmo de consenso que utiliza dos blockchains. Los validadores transfieren (traspasan) monedas para pujar por ganar una especie de lotería para convertirse en el líder y poder minar nuevos bloques.

Proof of storage

Algoritmo que prueba que usted ejecuta algo completamente desde su ordenador.

Proof of activity

Este algoritmo de consenso es una combinación de proof of stake y proof of work, en el que todos los mineros deben llegar a un acuerdo y, por tanto, todas las transacciones son reales. Se trata de un sistema muy seguro, aunque el escalado puede convertirse en un problema.

Pon a prueba tus conocimientos

Pregunta: 1/5¿Qué parte de una red blockchain debe alcanzar un consenso sobre la formación de un nuevo bloque?
A2/3
B1/2
C1/3
DLa mayoría