Conclusiones clave

  • Un algoritmo de consenso es un conjunto de reglas que permite que todos los participantes en una red blockchain acuerden una única versión del historial de transacciones.

  • La prueba de trabajo (usada por Bitcoin) y la prueba de participación (usada por Ethereum) son hoy los dos algoritmos de consenso más adoptados.

  • Cada mecanismo usa un tipo diferente de participación para desalentar el comportamiento deshonesto: el poder de cómputo y la electricidad para la prueba de trabajo, y la criptomoneda bloqueada para la prueba de participación.

  • La elección del algoritmo de consenso afecta la seguridad de una red, el uso de energía, la descentralización y la capacidad de escalar.

Binance Academy courses banner

Introducción

Un algoritmo de consenso es un mecanismo que permite a los usuarios o máquinas coordinarse en un entorno distribuido. Debe asegurarse de que todos los agentes del sistema puedan ponerse de acuerdo en una única fuente de verdad, incluso si algunos agentes fallan o actúan de forma deshonesta. Esta propiedad a veces se llama Tolerancia a Fallas Bizantinas.

En una configuración centralizada, una sola entidad tiene poder sobre el sistema y puede realizar cambios según sea necesario. Pero en una configuración descentralizada, el desafío es diferente. Cuando muchos participantes independientes mantienen una base de datos compartida, necesitan una forma de acordar qué entradas se agregan.

Superar este desafío en un entorno donde los desconocidos no se confían entre sí fue un desarrollo crucial en la creación de blockchains. Este artículo explica cómo funcionan los algoritmos de consenso y por qué son esenciales para el funcionamiento de las redes de criptomonedas.

Algoritmos de Consenso y Criptomonedas

En las criptomonedas, los saldos de los usuarios se registran en una base de datos compartida llamada blockchain. Es fundamental que cada nodo de la red mantenga una copia idéntica de esa base de datos. Si las copias difieren, terminas con información en conflicto, lo que socava el propósito de la red.

La criptografía de clave pública garantiza que los usuarios no puedan gastar el dinero de los demás. Pero todavía necesita existir una única fuente de verdad en la que los participantes de la red se basen para confirmar si los fondos ya se han gastado.

Satoshi Nakamoto, el creador de Bitcoin, propuso un sistema de prueba de trabajo (PoW) para coordinar a los participantes. Este sistema PoW es un tipo de algoritmo de consenso. Sin embargo, antes de profundizar en él, veamos las características comunes que comparten la mayoría de los algoritmos de consenso.

Una participación

Los validadores deben aportar una participación: algo de valor que desincentiva el comportamiento deshonesto. Si hacen trampa, pierden su participación. La participación puede ser poder de cómputo, criptomonedas o reputación.

Una recompensa

Los validadores también reciben una recompensa por participar de forma honesta, normalmente compuesta por comisiones de transacción o monedas recién creadas.

Transparencia

Por último, el sistema debe ser transparente, de modo que cualquiera pueda verificar si un validador se está comportando correctamente.

Tipos de Algoritmos de Consenso

Prueba de trabajo (PoW)

La prueba de trabajo se implementó por primera vez en Bitcoin. En un sistema PoW, los validadores (llamados mineros) hacen hashing de datos repetidamente hasta que producen un resultado que cumple las condiciones de la red. Una función hash toma cualquier entrada y produce una salida de longitud fija. La misma entrada siempre produce la misma salida, pero cambiar incluso un solo carácter cambia el resultado por completo.

La red establece un objetivo: por ejemplo, el hash de un bloque debe comenzar con cierta cantidad de ceros. Los mineros deben intentar billones de entradas diferentes para encontrar una que produzca un hash válido. Esto requiere grandes cantidades de hardware especializado y electricidad.

En PoW, tu participación es el coste de ese hardware y esa electricidad. Las máquinas ASIC diseñadas para minar no tienen uso fuera de las redes de criptomonedas, por lo que los mineros están altamente incentivados a seguir las reglas. Para cualquier otra persona, verificar que un minero produjo un bloque válido requiere solo un cálculo hash.

La prueba de trabajo sigue siendo el mecanismo de consenso para Bitcoin y proporciona un alto grado de seguridad gracias al coste computacional en sí.

Prueba de participación (PoS)

La prueba de participación se propuso como una alternativa a la prueba de trabajo. En lugar de comprometer recursos de cómputo, los validadores inmovilizan criptomonedas como garantía. No se requiere hardware especializado; un ordenador estándar puede participar.

Los validadores proponen o votan el siguiente bloque. Si se acepta un bloque, el validador gana una parte de las comisiones de las transacciones. Si un validador intenta hacer trampa proponiendo transacciones no válidas, pierde parte o la totalidad de la garantía bloqueada. Este mecanismo, llamado slashing (penalización), sustituye el coste energético de la prueba de trabajo por una penalización financiera directa.

Ethereum pasó de la prueba de trabajo a la prueba de participación en septiembre de 2022, un evento conocido como The Merge. Esto convirtió a Ethereum en una de las redes más grandes que ejecutan prueba de participación y redujo significativamente su consumo de energía. Muchas otras cadenas de bloques importantes ahora también usan variantes de la prueba de participación.

Una innovación habilitada por la prueba de participación es el staking líquido, que permite a los stakers recibir un token representativo por sus fondos bloqueados y usarlo en otros lugares dentro de las finanzas descentralizadas. Esto ha ampliado la participación en el staking más allá de quienes pueden cumplir los requisitos mínimos para ejecutar un nodo validador completo.

Prueba de participación delegada (DPoS)

En la prueba de participación delegada, los titulares de tokens votan por un conjunto de delegados responsables de validar transacciones. El número de delegados activos suele ser pequeño, lo que hace que la producción de bloques sea más rápida que en los sistemas estándar de prueba de participación.

Los titulares de tokens delegan su poder de voto en lugar de ejecutar ellos mismos nodos validadores. Los delegados que se comporten de manera deshonesta pueden ser expulsados por la comunidad al votar en su contra, creando una rendición de cuentas reputacional junto con la participación económica. DPoS se usa en varias redes blockchain y prioriza el rendimiento por encima de la descentralización máxima.

Preguntas frecuentes

¿Qué es un algoritmo de consenso de blockchain?

Un algoritmo de consenso de blockchain es un conjunto de reglas que permite que todos los participantes en una red distribuida acuerden el estado del libro mayor. Asegura que cada nodo mantenga el mismo historial de transacciones sin necesidad de una autoridad central que los coordine.

¿Cuál es la diferencia entre prueba de trabajo y prueba de participación?

La prueba de trabajo exige que los validadores gasten poder de cómputo y electricidad para producir bloques válidos. La prueba de participación exige que los validadores inmovilicen criptomonedas como garantía. Ambos enfoques crean incentivos económicos para un comportamiento honesto, pero la prueba de participación usa mucha menos energía.

¿Ethereum todavía usa prueba de trabajo?

No. Ethereum pasó a la prueba de participación en septiembre de 2022 mediante una actualización llamada The Merge. Bitcoin sigue usando prueba de trabajo.

¿Se puede atacar una red de prueba de participación?

Una red de prueba de participación puede atacarse potencialmente mediante una entidad que controle una gran proporción de la participación total. Los mecanismos de slashing están diseñados para que estos ataques sean extremadamente costosos, ya que el atacante perdería una parte significativa de sus fondos apostados si se le sorprende intentando manipular el libro mayor.

¿Por qué diferentes cadenas de bloques usan diferentes algoritmos de consenso?

Los distintos mecanismos de consenso implican compensaciones entre seguridad, descentralización, uso de energía y velocidad de transacción. Se considera que la prueba de trabajo es muy segura pero intensiva en energía. La prueba de participación es más eficiente en energía, pero introduce una economía de validadores diferente. Los proyectos eligen mecanismos según sus prioridades en estos factores.

Reflexiones finales

Los algoritmos de consenso son la base que hace posible los blockchains distribuidos. Permiten que participantes que no se conocen o no confían entre sí se pongan de acuerdo sobre un historial compartido de transacciones sin una autoridad central. Comprender cómo funciona el consenso es fundamental para entender cómo funcionan las blockchains y cómo se mantienen seguras.

Lecturas adicionales

  • Prueba de trabajo (PoW) vs. Prueba de participación (PoS)

  • ¿Qué es el Trilema Blockchain?

  • ¿Qué hace que una blockchain sea segura?

  • ¿Qué es Bitcoin y cómo funciona?

  • Consenso híbrido PoW/PoS explicado