estadisticas de población
Última actualización: junio 25, 2021

El algoritmo de consenso es una parte imprescindible para el buen desarrollo de la tecnología blockchain, así como de las criptomonedas como Bitcoin. Se trata de la base que asegura y garantiza la seguridad de la cadena.

Al mismo tiempo, controla que todos los usuarios de la red acuerden de manera general la información que se contiene en la cadena de bloques o blockchain. ¿Aún no conoces bien estos conceptos? ¡No te preocupes! En este artículo daremos las claves necesarias para comprenderlo, así como su funcionamiento y cómo se relacionan entre ellos.




Lo más importante

  • Un algoritmo de consenso es un sistema que permite a los usuarios llegar a un acuerdo mediante un método descentralizado y en una base de datos distribuida.
  • Estos usuarios son anónimos, pero mediante una serie de acciones y acuerdos se genera una seguridad en la red. Esto se hace mediante un consenso sobre cómo y cuándo llegan las transacciones. Hay diferentes algoritmos y usan distintos métodos. Sin embargo, el objetivo final es el mismo.
  • Los algoritmos de consenso son especialmente indispensables para el uso de las criptomonedas.

Lo que debes saber sobre los algoritmos de consenso

Comprender el mundo de la blockchain o cadena de bloques y de los algoritmos de consenso puede ser un poco complicado si no estamos familiarizados con estos términos. Por ello, en los próximos apartados, te daremos la información más importante a la hora de entender mejor qué son estos algoritmos y para qué se utilizan.

pantalla gigante

La blockchain o cadena de bloques es una base de datos distribuida y segura que se puede usar en todo tipo de transacciones. (Fuente: Pascal Bernardon: zt0HWquGXlQ/ unsplash)

¿Qué es exactamente un algoritmo de consenso?

Un algoritmo de consenso es un sistema usado por una red blockchain para escoger el estado correcto de un registro cuando se lleva a cabo una transacción. En otras palabras, los algoritmos de consenso son unos mecanismos utilizados para la toma de decisiones dentro de un grupo. En este, cada individuo ayuda a formarlo y a dar apoyo para tomar la mejor decisión de forma mayoritaria (1).

¿Para qué sirve un algoritmo de consenso?

Un algoritmo de consenso sirve para tomar una decisión de acuerdo con el voto mayoritario. De esta forma, se selecciona la opción que beneficie a todo el grupo. Está pensado para conseguir igualdad y equidad en la red. Algunos de sus objetivos son:

  • Conseguir un punto en común entre todos los acuerdos del grupo.
  • Colaboración grupal para lograr los intereses colectivos del grupo.
  • Cooperación entre los miembros del equipo.
  • Igualdad de derechos a la hora de votar. Todos los votos tienen el mismo valor.
  • Participación de todos los individuos en la votación.
  • Igualdad de responsabilidades entre todos los miembros del grupo.

¿Qué es la blockchain?

La blockchain o cadena de bloques es una base de datos distribuida y segura que se puede usar en todo tipo de transacciones. Especialmente es conocida por ser utilizada en las transacciones de Bitcoins y otras criptomonedas, pero puede aplicarse también en otro tipo de transacciones, como por ejemplo, de documentos (2).

En esta cadena hay una serie de usuarios, llamados nodos, que se encargan de verificar y validar cada transacción y registrarlas en un libro de cuentas. Es, por lo tanto, un registro único y consensuado que se distribuye entre varios nodos de una red. Cada nodo usa certificados y firmas digitales para realizar su actividad. De esta forma, se asegura la autenticidad y se protege la información. Además, cada individuo de la red guarda una copia exacta de la cadena (3).

Debemos añadir que cada bloque de la cade está firmemente vinculado al próximo. De esta forma, al añadir un bloque nuevo en la red, este se vuelve inalterable, lo que refuerza su seguridad. Toda la información que se registra en la blockchain, por lo tanto, es permanente e inmodificable. Por último, en cada uno de los bloques se almacena la siguiente información:

  • Un número concreto de registros o transacciones verificadas.
  • Información sobre el propio bloque.
  • La vinculación con los bloques anterior y siguiente a través de un código único.

Algoritmos de consenso y criptomonedas

Una criptomoneda (4) es un tipo de dinero efectivo digital que sirve para que los usuarios transfieran valor en la red digital. Su función principal es servir como dinero electrónico que no es propiedad de un banco o entidad concreta. Esto lo convierte en un sistema descentralizado.

Son los participantes de la red, llamados nodos, quienes llevan a cabo la ejecución de un software que les sirve de conexión con otros usuarios, con quienes intercambian información. Mediante los algoritmos de consenso, la red asegura qué transacciones se hacen y cómo se hacen. Además, escoge qué información entra y sale, y previene que el sistema sea controlado por una única entidad.

bitcoin

Su función principal es servir como dinero electrónico que no es propiedad de un banco o entidad concreta. (Fuente:Pierre Borthiry:  vBCVcWUyvyM/ unsplash)

Tipos de algoritmos de consenso

Existen muchos tipos distintos de algoritmos de consenso, aunque hay algunos que son más comunes que otros, como el PoW (proof of work) y el PoS (proof of stake). Cada algoritmo puede aplicarse en diferentes tecnologías, aunque aún no se ha encontrado uno que pueda utilizarse en todas ellas (5).

Proof of work o PoW

La prueba de trabajo o proof of work es uno de los algoritmos más conocidos y, además, el más antiguo. Se basa en que todas las partes de una red realicen con éxito un trabajo matemáticamente difícil, para así poder acceder a los recursos de dicha red. Además, su finalidad es que no ocurran sucesos indeseados en una red. Lo que hace es solicitar un trabajo o acción al cliente, que es después verificada y aprobada por la red. En ese caso, se da acceso al cliente, lo que evita que alguien cree demasiados registros y la web se colapse (6).

El proof of work se realiza en una serie de etapas:

  1. El nodo establece se conecta con la red, que le asigna una acción o tarea que debe resolver para conseguir un incentivo económico.
  2. Comienza la minería, es decir, el trabajo por intentar resolver el problema.
  3. Cuando el nodo ha resuelto la tarea, compartirá el resultado con la red para que esta la verifique y valide. Si no ha podido ser verificada, el acceso se denegará y se realizará una doble protección para que no se presente esta tarea de nuevo.
  4.  Si el problema ha sido resuelto, el nodo podrá acceder a la información y los recursos de la página web. También recibirá un premio económico por el trabajo llevado a cabo.

Ventajas y desventajas del PoW

A continuación, te presentamos una lista de las ventajas y desventajas del PoW:

Ventajas
  • Muy seguro
  • Sencillo y software fácil de mantener
  • Se adapta a las necesidades de hardware
  • Gran capacidad de resistencia a ataques.
Desventajas
  • Gran consumo de energía
  • Centralización de mineros
  • Debilidad en las redes pequeñas frente a ataques del 51%

Proof of stake

La prueba de participación o proof of stake es un algoritmo de consenso que fue creado con el fin de reemplazar al proof of work, mejorando la seguridad y la escalabilidad de las redes que lo utilicen. En este caso, a los nodos que hacen la minería se les va a llamar validadores. Hay una serie de criterios que hacen que se escoja qué nodo va a validar un bloque. Algunos de estos criterios son la cantidad de moneda reservada o el tiempo de participación en la red. En base a estos, se realiza una selección de forma aleatoria y, una vez hecho esto, se podrán validar las transacciones y crear nuevos bloques (7).

Al contrario que en PoW, donde todos los nodos trabajan para solucionar los acertijos, necesitando mucha energía, en PoS esto no hará falta, ya que es mucho más sencillo con este método. El sistema PoS anima a los nodos a que posean una cantidad concreta de monedas, para de esta forma poder ser elegidos en la asignación de tareas. Una vez que son elegidos pueden validar transacciones o crear nuevos bloques dentro de la red. Esto les permitirá conseguir ganancias.

algoritmo de moneda

En los sistemas distribuidos, es fundamental el uso de algoritmos de consenso, especialmente cuando hablamos de criptomonedas. (Fuente: Austin Diste: EMPZ7yRZoGw/ unsplash)

Ventajas y desventajas del PoS

Las ventajas e inconvenientes del PoS son los siguientes:

Ventajas
  • Consumo energético reducido
  • Mayor equilibrio entre objetivos e incentivos
  • Mejora la descentralización y democratiza el acceso a la red
  • Mayor seguridad
  • Mayor rapidez
Desventajas
  • Riesgo de perder los fondos por ataques maliciosos
  • Posibilidad de recibir un ataque de doble gasto

Otros algoritmos de consenso

  • Prueba de participación delegada (DPOS)
  • Tolerancia Bizantina a falla delegada (dBFT)
  • Prueba de actividad (PoA)
  • Prueba de quemadura (PoB)
  • Prueba de capacidad (POC)
  • Prueba de tiempo transcurrido (POET)
  • Algoritmo de consenso del obelisco
  • Prueba de asignación (PoA)
  • Prueba de punto de control (PoC)
  • Proof of Formulation (PoF)

Conclusión

En los sistemas distribuidos, es fundamental el uso de algoritmos de consenso, especialmente cuando hablamos de criptomonedas y de seguridad de la red. Actualmente, estos algoritmos, también posibilitan otra serie de acciones, como la sustentación de los sistemas de la blockchain, que sirven para la vida y mantenimiento de distintas redes.

Como hemos podido ver, existen bastantes modelos de algoritmos de consenso, aunque sin ninguna duda el proof of work sigue siendo el más utilizado, seguido de proof of stake. De cualquier forma, no cabe dudas de que debido a la gran implicación de los investigadores y del interés creciente por estos sistemas, llegarán nuevos algoritmos que mejorarán y superarán los ya existentes. Por ello, es muy importante mantenerse actualizado si queremos involucrarnos en el mundo de las criptomonedas y de las blockchains.

(Fuente de la imagen destacada: rawpixel 53103054/ 123rf)

Referencias (7)

1. Torres Nupan, L Aplicación de algoritmos de consenso en microrredes. [Internet]. Montevideo, Uruguay: Universidad de la República ; 2019 [citado: 2021, junio] Universidad Nacional de Colombia Sede Manizales Facultad de Ingeniería y Arquitectura Departamento de Ingeniería Eléctrica, Electrónica y Computación. Disponible en: https://repositorio.unal.edu.co/handle/unal/77121
Fuente

2. Di Pierro, Massimo. "What is the blockchain?." Computing in Science & Engineering. 2017; 19.5, 92-95.

3. Tapscott D, Tapscott A. La revolución blockchain. Barcelona: Ediciones Deusto; 2017.

4. Cawrey, Daniel. What Are Bitcoin Nodes and Why Do We Need Them? Coindesk [Internet] 2014, [citado: 8 Junio 2021] Disponible en: https://www.coindesk.com/bitcoin-nodes-need
Fuente

5. Bentov, I., Lee, C., Mizrahi, A., & Rosenfeld, M. Proof of activity: Extending bitcoin's proof of work via proof of stake. ACM SIGMETRICS Performance Evaluation Review. 2014; 42(3), 34-37.

6. Gervais A, Karame G.O, Wüst K, V Glykantzis V, Ritzdorf H, Capkun S. On the Security and Performance of Proof of Work Blockchains. Association for Computing Machinery. 2016; 3–16

7. Fahad S. Blockchain without Waste: Proof-of-Stake, The Review of Financial Studies [Internet] 2021, [citado: 8 Junio 2021] Vol. 34, Issue 3, 1156–1190. Disponible en: https://doi.org/10.1093/rfs/hhaa075
Fuente

¿Por qué puedes confiar en mí?

Artículo de internet
Torres Nupan, L Aplicación de algoritmos de consenso en microrredes. [Internet]. Montevideo, Uruguay: Universidad de la República ; 2019 [citado: 2021, junio] Universidad Nacional de Colombia Sede Manizales Facultad de Ingeniería y Arquitectura Departamento de Ingeniería Eléctrica, Electrónica y Computación. Disponible en: https://repositorio.unal.edu.co/handle/unal/77121
Ir a la fuente
Artículo de revista
Di Pierro, Massimo. "What is the blockchain?." Computing in Science & Engineering. 2017; 19.5, 92-95.
Libro
Tapscott D, Tapscott A. La revolución blockchain. Barcelona: Ediciones Deusto; 2017.
Artículo de internet
Cawrey, Daniel. What Are Bitcoin Nodes and Why Do We Need Them? Coindesk [Internet] 2014, [citado: 8 Junio 2021] Disponible en: https://www.coindesk.com/bitcoin-nodes-need
Ir a la fuente
Artículo de revista
Bentov, I., Lee, C., Mizrahi, A., & Rosenfeld, M. Proof of activity: Extending bitcoin's proof of work via proof of stake. ACM SIGMETRICS Performance Evaluation Review. 2014; 42(3), 34-37.
Artículo de revista
Gervais A, Karame G.O, Wüst K, V Glykantzis V, Ritzdorf H, Capkun S. On the Security and Performance of Proof of Work Blockchains. Association for Computing Machinery. 2016; 3–16
Artículo de internet
Fahad S. Blockchain without Waste: Proof-of-Stake, The Review of Financial Studies [Internet] 2021, [citado: 8 Junio 2021] Vol. 34, Issue 3, 1156–1190. Disponible en: https://doi.org/10.1093/rfs/hhaa075
Ir a la fuente
Evaluaciones