Protocolos de consenso: ¿Qué son y cómo funcionan?
![]() |
| Artículo por Melina Zuccarino |
El protocolo de consenso es el mecanismo que regula la forma en que los nodos -es decir, cada agente de la cadena de bloques- que sellan bloques llegan a un acuerdo entre sí para poder hacerlo.
Los protocolos de consenso garantizan que los datos alojados en una blockchain sean correctos, y que todos los nodos tengan acceso a ellos. Por lo tanto, el consenso protege la integridad y minimiza el riesgo de ataque por parte de agentes malintencionados.
En este sentido, el consenso es entendido como un proceso, por medio del cual una red de nodos ordena las transacciones y valida los bloques que las contienen antes de ser incorporados a la cadena. Cualquier protocolo de consenso debe confirmar la corrección de todas las transacciones propuestas en un bloque, de acuerdo a las reglas de consenso estipuladas. Dicho consenso se materializa en un protocolo, que contiene instrucciones que le dicen a la blockchain cómo gestionar información nueva.
El protocolo de consenso aprueba nuevos bloques que se incorporan, sin tener que validar esa información previamente con terceros ajenos u organismos centralizados.
Existen muchos protocolos de consenso, y éstos varían a su vez según se trate de blockchains públicas o privadas, pero los más usados son Proof Of Work (PoW) y Proof Of Stake (PoS).
Para introducir el tema, les presento un pequeño video explicativo de qué son los protocolos de consenso y cómo funcionan los mismos:
Proof of Work
El
protocolo de Prueba de Trabajo o Proof of Work consiste en que las partes de una red
realicen con éxito un trabajo computacionalmente costoso -la realización de cálculos aritméticos de gran complejidad- para acceder a los
recursos de dicha red. Este es el protocolo más conocido, y el más antiguo.
Este protocolo funciona bajo el concepto de requerir un trabajo al cliente, que luego es verificado por la red, y una vez que son aprobadas, se le da acceso para que use los recursos de la misma. Este mecanismo sirve para impedir que usuarios maliciosos puedan consumir todos los recursos de forma incontrolada, situación que podría acabar por denegar el servicio prestado al resto de clientes de la red.
Proof of Work (PoW): Funcionamiento
Este protocolo de consenso funciona mediante las siguientes etapas:
- Conexión y Asignación de Tarea: En la primera etapa, un nodo se conecta a la red y recibe una tarea computacionalmente costosa. Esta tarea debe resolverse para obtener una recompensa económica.
- Minería y Resolución del Acertijo: En la segunda etapa, el nodo comienza a resolver el enigma utilizando una gran cantidad de potencia de cómputo. Este proceso se llama minería.
- Verificación y Acceso a Recursos: Una vez que el nodo resuelve la tarea, comparte su respuesta con la red. La red verifica rápidamente si cumple con los requisitos. Si es así, se otorga acceso a los recursos de la red. Si no, se rechaza la solución. En este punto, también se realizan verificaciones para evitar el doble gasto.
- Ganancia y Confirmación: Finalmente, con la confirmación de que la tarea se ha completado, el nodo accede a los recursos de la red y recibe una ganancia por su trabajo computacional.
En el Proof of Work, los nodos de la red que son mineros compiten entre sí para resolver problemas matemáticos de complejidad creciente, para lo cual deben contar con un equipamiento computacional acorde. Cada vez que se quiere agregar información a la blockchain, como puede ser por ejemplo transferir un bitcoin a alguien, para que esa transacción se agregue debe necesariamente resolverse un nuevo problema matemático muy complejo.
El primer nodo que resuelve el problema lo presenta al resto de los mineros para que verifiquen la respuesta, y si el 51% o más de los demás mineros validan la respuesta dada al problema matemático, entonces se minará un nuevo bloque que se agregará a la cadena, y contendrá la información encriptada acerca de la transacción de que se trate, y el minero exitoso ganará una cantidad determinada de bitcoins –block reward– y comisiones por transacción.
Este método asegura que, si una persona quisiera agregar información falsa a la red, debería dedicar muchos recursos para intentar agregar un bloque incorrecto, que probablemente será detectado por el resto de los mineros, salvo que el 51% de los mineros acuerden agregar información falsa.
Con el paso del tiempo se empezaron a conformar “granjas de minado”, que son grupos de computadoras todas trabajando en la resolución de complejos problemas matemáticos, donde cada vez que resuelven uno de ellos, sus dueños ganan bitcoins por minar bloques. También se ocupan de procesar transacciones y actualizar la blockchain. Una crítica al respecto es que tantas supercomputadoras trabajando consumen mucha energía, incluyendo la utilizada para refrigerar los sistemas.
Proof of Stake
La Prueba de Participación o Proof of Stake (PoS) es otro protocolo de consenso utilizado en la tecnología blockchain. A diferencia del Proof of Work (PoW), que requiere que los mineros realicen cálculos computacionales intensivos para validar transacciones y crear nuevos bloques, el Proof of Stake se basa en la participación activa de los usuarios que mantienen criptomonedas en sus billeteras.
Este mecanismo requiere que el usuario demuestre la posesión de una cierta cantidad de criptomonedas para reclamar validar bloques adicionales en la cadena de bloques y recibir la recompensa.
Proof of Stake: funcionamiento
Este protocolo de consenso funciona siguiendo los siguientes lineamientos:
Validación por Staking:
- En
lugar de minar bloques mediante la resolución de problemas matemáticos,
los usuarios con criptomonedas las “apuestan” como garantía
para ser seleccionados como validadores.
- Cuanto más grande sea la cantidad de criptomonedas que un usuario apueste, mayor será su probabilidad de ser elegido para validar transacciones y crear bloques.
Selección de los Validadores:
- En
el PoS, los validadores se eligen de manera pseudoaleatoria, teniendo en
cuenta la cantidad de criptomonedas que han apostado.
- La probabilidad de ser seleccionado como validador es proporcional a la cantidad de monedas en staking.
Creación de Bloques:
- Cuando
un validador es seleccionado, crea un nuevo bloque y lo agrega a la cadena
de bloques.
- A cambio de su trabajo, el validador recibe recompensas en forma de nuevas criptomonedas.
Entonces, hay un algoritmo que va a determinar aleatoriamente entre los nodos quien puede modificar el registro y lo hará en función de la cantidad de tokens que tengan. Se arman pooles de participación (stake pools), en donde el nodo (equivalente al minero en bitcoin) recibe el aporte de dinero de muchos usuarios, lo que le da fuerza y poder para modificar el registro.
En este sistema los nodos que validan nuevos bloques no compiten en velocidad, ni tampoco tienen que resolver complejos problemas matemáticos que requieren mucho poder de cómputo, sino que el validador que más participación tenga en la blockchain, será el que más probabilidad tenga de ser elegido para agregar nuevos datos a la misma.
El validador seleccionado recibirá su recompensa como una tarifa de transacción en la red, dependiendo del monto de su participación. Sin embargo, al ser un sistema aleatorio evita la centralización, ya que de lo contrario el individuo más rico siempre crearía el siguiente bloque aumentando constantemente su riqueza y su control.
Una ventaja de este protocolo de consenso es que puede reducir el consumo de energía, que es uno de los inconvenientes de Proof of Work, ya que su sistema no necesita costosos equipos de computación, necesita el dinero para mantener la red.
Proof of humanity (PoH)
Si bien existen otros protocolos de consenso, como es el Proof of History, habiendo explicado los dos protocolos de consenso más importantes me gustaría introducir otro protocolo más novedoso creado por Santiago Siri, argentino, llamado Prueba de Humanidad o Proof of Humanity (PoH), en donde hay que aportar una prueba de humanidad, es decir una identidad, a la red para poder hacer las validaciones de operaciones. Hay un reconocimiento facial y el resto de los participantes de la red tienen que sponsorearte o aprobar.
Proof of Humanity: Funcionamiento
Este protocolo de consenso funciona de la siguiente manera:
Creación de Perfil:
- Las personas que desean ser incluidas en el registro envían información sobre sí mismas para su verificación.
- Esto puede incluir datos como nombres, fotos, direcciones y otros detalles relevantes.
Validación por Vouching:
- Las personas que ya están en el registro pueden respaldar a otras personas que se registran.
- Al respaldar a alguien, un usuario garantiza que la persona respaldada existe y no es un duplicado de otro humano.
Desafío a Usuarios Sospechosos:
- Los usuarios pueden desafiar las presentaciones pendientes que consideren que no cumplen con los requisitos para la aceptación.
- Cuando una presentación es impugnada, la decisión se somete a resolución de disputas en un sistema de resolución de disputas, como Kleros.
Economía Incentivada:
- Los validadores y los usuarios que respaldan a otros reciben recompensas económicas en forma de criptomonedas.
- Esto
crea un incentivo para participar y mantener la integridad del sistema.
-Photoroom.png)
Comentarios
Publicar un comentario