Saltar al contenido

Qué es el consenso

Qué es el consenso

¿Qué es el consenso?

Son elementos críticos de todas las redes de cadenas de bloques porque son responsables de mantener la integridad y seguridad de estos sistemas distribuidos. El primer algoritmo de consenso creado para la criptomoneda fue Test of Work (PoW), diseñado por Satoshi Nakamoto, e implementado en Bitcoin como fórmula para superar el fracaso bizantino.

El consenso es el acuerdo producido por consentimiento entre todos los miembros de un grupo o entre varios grupos. La “falta de consenso” expresa desacuerdo.

El consenso difiere de la mayoría cuando la mayoría está de acuerdo en que también hay una minoría que no está de acuerdo, mientras que en el consenso no hay desacuerdo.

Una decisión consensuada, sin embargo, no implica un consentimiento activo de cada uno, sino una aceptación en el sentido de no negación. En este tipo de modalidades de decisión, la democracia griega ha encontrado su base.

Una simple red informática consiste en un servidor central que tiene el control de la base de datos y clientes que pueden conectarse para leer la información. En este caso, sólo el servidor central puede modificar la base de datos, por lo que siempre hay una versión fiable de la información (la que está en el servidor). Sin embargo, es un sistema vulnerable porque un fallo del servidor bloquea completamente el funcionamiento de la red.

Qué es el consenso

Algoritmo de consenso

Un algoritmo de consenso puede definirse como el mecanismo por el cual una red de cadenas de bloques alcanza el consenso. Las cadenas de bloques públicas (descentralizadas) se construyen como sistemas distribuidos y, como no dependen de una autoridad central, sus nodos (también distribuidos) deben acordar la validez de las transacciones. Aquí es donde entran en juego los algoritmos de consenso, velando por que se respeten las reglas del protocolo y por que todas las transacciones se realicen de forma fiable, lo que implica que las monedas sólo pueden gastarse una vez.

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

Ejemplos de consenso

El protocolo Bitcoin obliga a los mineros a trabajar (prueba de trabajo), repitiéndose inútilmente una y otra vez hasta que obtienen un número arbitrario para construir un bloque. Bitcoin podía funcionar perfectamente sin pruebas de trabajo, siempre que todos los participantes fueran honestos y altruistas. La prueba de trabajo es un método para establecer un consenso entre un número de personas interesadas, ninguna de las cuales está subordinada a la otra, y existen considerables incentivos para resistirse a este consenso.

Antes de que se genere un nuevo bloque, puede haber muchos pagos circulando por la red sin una respuesta objetiva sobre qué pagos deben ser validados. Algunos pueden ser inválidos, así que todos deben ser revisados. Algunos pueden no incluir un cargo por transacción, por lo que puede decidir incluir la transacción o ignorarla. Por último, puede haber un conjunto de dos o más pagos que no pueden ser válidos simultáneamente. Por ejemplo, si alguien intenta gastar los mismos bitcoins en dos transacciones que aún no han sido confirmadas, habría que tomar una decisión sobre qué pago permitir.

Qué es el consenso

Por lo tanto, para un determinado conjunto de pagos, puede haber muchos bloques posibles que se pueden construir con ellos, ninguno de los cuales es objetivamente el más correcto. Tampoco habrá necesariamente un acuerdo sobre qué resultado es preferible, porque los diferentes bloques posibles benefician a diferentes personas. En primer lugar, está el beneficio que resulta de generar un bloque en forma de nuevas bitcoins. Esto es necesario porque, si no existiera, habría muy pocos incentivos para iniciar la contabilidad. Con esta recompensa, cada minero prefiere naturalmente que el nuevo bloque sea su propia propuesta, y no la de ningún otro.