¿Qué es un Algoritmo de Consenso Blockchain?

En el contexto de las criptomonedas, los algoritmos de consenso son elementos cruciales de todas las redes blockchain, debido a que son los responsables de mantener la integridad y seguridad de estos sistemas distribuidos. El primer algoritmo de consenso creado para una criptomoneda fue Proof of Work (PoW), diseñado por Satoshi Nakamoto, e implementado en Bitcoin como fórmula para superar las Bizantine Faults (Faltas Bizantinas).

Algoritmo de Consenso

Un algoritmo de consenso puede ser definido como el mecanismo a través del cual una red blockchain alcanza consenso. Las blockchain públicas (descentralizadas) se erigen como sistemas distribuidos y, debido a que no dependen de una autoridad central, sus nodos (también distribuidos) necesitan ponerse de acuerdo respecto a la validez de las transacciones. Aquí es donde los algoritmos de consenso entran en juego, encargándose de asegurar que las reglas del protocolo son respetadas y garantizando que todas las transacciones tienen lugar de una forma fiable; lo que implica que las monedas sólo podrán ser gastadas una vez. 

Antes de sumergirnos en los diferentes tipos de algoritmos de consenso, es importante entender las diferencias entre un algoritmo y un protocolo.

Algoritmo de Consenso frente a Protocolo

Los términos algoritmo y protocolo a menudo se emplean de manera indistinta, sin embargo, no son la misma cosa. En términos simples, podemos definir un protocolo como las reglas primarias de una blockchain; y el algoritmo, como el mecanismo a través del cual dichas reglas serán seguidas. 

Además de ser extensivamente empleada en sistemas financieros, la tecnología blockchain puede ser aplicada en una amplia variedad de negocios y resultar apropiada para diferentes casos de uso. Ahora bien, independientemente del contexto, una red blockchain siempre se erigirá sobre un protocolo que definirá la supuesta forma de funcionamiento del sistema. Por ese motivo, todos los elementos de éste, así como los participantes de la red, deberán respetar las reglas del protocolo subyacente.

Mientras el protocolo determina cuáles son las reglas, el algoritmo le dice al sistema qué pasos seguir para cumplir con las mismas y producir los resultados deseados. Por ejemplo, el algoritmo de consenso de una blockchain es lo que determina la validez de las transacciones y bloques. Así, Bitcoin y Ethereum son protocolos, mientras que Proof of Work y Proof of Stake son sus algoritmos de consenso.

A fin de ilustrar mejor la cuestión, hay que tener en cuenta que el protocolo Bitcoin define cómo deben interactuar los nodos, cómo deben transmitir los datos, así como cuáles son los requisitos para que una validación de bloque sea efectiva. Por otro lado, el algoritmo de consenso es el responsable de verificar los balances y firmas, confirmar las transacciones y ejecutar la validación de bloques. Y todo esto, depende de un consenso de red.

Diferentes Tipos de Algoritmos de Consenso

Existen varios tipos de algoritmos de consenso. Las implementaciones más comunes son PoW y PoS. Cada uno tiene sus ventajas y desventajas en lo que se refiere al equilibrio entre seguridad por un lado, y funcionalidad y escalabilidad por el otro.

Proof of Work (PoW)

PoW fue el primer algoritmo de consenso que se creó. Es empleado por Bitcoin y muchas otras criptomonedas. El algoritmo Proof of Work es una parte esencial del proceso de minado

El minado en PoW implica numerosas “tentativas de hashing”, por lo que más poder computacional significa más intentos por segundo. En otras palabras, los mineros con una tasa de hash elevada tienen más posibilidades de hallar una solución válida para el siguiente bloque (también llamado hash block). El algoritmo de consenso PoW se asegura de que los mineros sólo sean capaces de validar un nuevo bloque de transacciones y añadirlo al blockchain, si los nodos distribuidos de la red alcanzan consenso y aceptan el hash block provisto por el minero como una prueba de trabajo válida.

Proof of Stake (PoS)

El algoritmo de consenso PoS fue desarrollado en 2011 como una alternativa a PoW. A pesar de que tanto PoS como PoW comparten objetivos similares, también presentan algunas diferencias y particularidades fundamentales. Especialmente, en lo relativo a la validación de nuevos bloques.

En pocas palabras, el algoritmo de consenso Proof of Stake reemplaza el minado PoW por un mecanismo en que los bloques son validados de acuerdo al “stake” (cantidad de monedas acumuladas) de los participantes. El validador de cada bloque, también llamado forger -forjador- o minter -acuñador-, es determinado por la inversión en la propia criptomoneda, y no por la cantidad de poder computacional destinado. Cada sistema PoS puede implementar el algoritmo de distintas maneras, pero en general, la blockchain será asegurada por un proceso de elección pseudoaleatorio que toma en consideración el capital del nodo y la edad de las monedas (el tiempo que han permanecido inmóviles depositadas o “staked”), junto con un factor de aleatorización.

La blockchain de Ethereum se basa actualmente en un algoritmo PoW, pero el protocolo Casper será eventualmente lanzado para cambiar la red de PoW a PoS, en un intento por incrementar la escalabilidad de la misma.

¿Por qué importan los Algoritmos de Consenso para las Criptomonedas?

Como hemos mencionado anteriormente, los algoritmos de consenso son cruciales para mantener la integridad y seguridad de una red de criptomonedas. Son los encargados de proporcionar los medios para que los nodos distribuidos alcancen un consenso respecto a qué versión de la blockchain es la real. Ponerse de acuerdo respecto al “estado” actual de la blockchain, es esencial para que un sistema económico digital funcione correctamente. 

El algoritmo de consenso Proof of Work se considera una de las mejores soluciones al Problema de los Generales Bizantinos, que permitió la creación de Bitcoin como un Sistema Tolerante a Faltas Bizantinas (Byzantine Fault Tolerant System). Esto significa que la blockchain de Bitcoin es altamente resistente a un tipo de amenazas denominadas “ataques del 51%” o “ataques mayoritarios”, no sólo porque la red esté descentralizada, sino también gracias al algoritmo PoW. Los altos costes involucrados en el proceso de minado hacen que sea muy difícil e improbable que los mineros inviertan sus recursos para perjudicar a la red.