Posted by q3it on jueves, mayo 20, 2021 in Blockchain

He explicado en post anteriores cómo se crean los bloques, cómo se añaden a la Blockchain y también se vió cómo los nodos se comunican entre sí. Se explicó un poco sobre cómo los nodos se ponen de acuerdo para para operar entre ellos, la gran cantidad de esfuerzo requerido para crear un bloque válido mediante la extracción de un hash. En resumen esto es una prueba de trabajo, un bloque válido que en sí mismo demuestra su compromiso con el sistema.
Así que cuando hablamos de marcos de confianza y mecanismos de consenso, estamos hablando de cosas como la prueba de trabajo que permite a los nodos ponerse de acuerdo. En términos generales, el propósito de un mecanismo de consenso en una cadena de bloques es permitir que un grupo de nodos separados distribuya el derecho a actualizar el sistema según un conjunto específico de reglas entre un conjunto de participantes y de forma segura.
Cuando piense en la prueba de trabajo, piense en ella como una recompensa por su participación con potencia de cálculo de la red. Si tienes, digamos, el 10% de la potencia de cálculo en la red debido a la naturaleza aleatoria del hash, puedes esperar que el 10% de las recompensas mineras vayan a ti. Este sistema tiene sus inconvenientes. Por ejemplo, utiliza enormes cantidades de energía en una gran red y como tal no puede soportar grandes volúmenes de transacciones, y debido a ese uso de energía, las tarifas de transacción pueden ser altas y se elevan a medida que la red crece porque esas tarifas tienen que pagar efectivamente por todo ese uso de energía, más el beneficio para los mineros.
Pero la prueba del trabajo es sólo un mecanismo de consenso aunque existen otros más. Uno grande es la prueba de participación, que es un posible reemplazo de la prueba de trabajo y está en la hoja de ruta de desarrollo de las cadenas de bloques Ethereum. Echaremos un vistazo a lo que es la prueba de participación y examinaremos un par de versiones alternativas como lo son: la prueba de participación mínima y la prueba de participación delegada.
Finalmente, echaremos un vistazo a la prueba de importancia. La prueba de estaca o de participación funciona de forma un poco diferente. Los bloques no se extraen, se forjan y en lugar de recompensar a los mineros por la proporción de poder de computación que tienen, recompensa a los participantes llamados falsificadores en base a la proporción de la moneda que poseen. Así que, en términos generales, si tuvieras el 10% de toda la criptodivisa, podrías esperar falsificar el 10% de los bloques en la red y por lo tanto tomar el 10% de todos los honorarios. Al crear un bloque, un falsificador pone su moneda en depósito. Si el bloque resulta incluir una transacción fraudulenta, pierden esa apuesta. Esto incentiva el seguimiento de las reglas y la correcta validación de las transacciones en la red. Este sistema tiene numerosas ventajas. Uno de ellos es que reduciría mucho los costos de transacción porque no se pagaría toda la electricidad que se utiliza en la minería. En su lugar, se paga lo que es efectivamente un tipo de interés sobre el préstamo de una determinada participación.
Este sistema, al no depender de la minería, sería más rápido y eficiente. También hay una protección contra el ataque, porque cualquiera que atacara la red tendría que tener una gran cantidad de capital en la red, lo que haría que tal ataque fuera autodestructivo. Un problema con la prueba de participación es que los individuos con saldos pequeños probablemente nunca tendrán la oportunidad de crear un bloque. La prueba de participación mínima aborda este problema permitiendo a los pequeños propietarios de saldos apostar por un nodo. El nodo tiene acceso a todos los fondos que se le han apostado para determinar sus posibilidades de forjar un bloque. Pero el control de los fondos sigue estando totalmente en manos del individuo que apuesta, que luego se lleva una parte proporcional de los honorarios generados si su menor nodo forja un bloque. La prueba delegada de estaca funciona de manera diferente.
En este caso, el número de fichas monetarias que posee representa el número de votos que tiene para nombrar a un testigo, en el que, entre otros testigos, se confía para procesar y validar las transacciones en cantidades relativas al número de votos que tienen. Si un testigo resulta actuar de manera fraudulenta, puede ser expulsado rápidamente y sustituido por otros testigos. Los principales testigos son los que más reciben, por lo que hay competencia para ser un buen testigo honesto. El modelo de prueba delegada de participación también cuenta con un grupo denominado delegados, que son partes de confianza que gestionan el funcionamiento de una red pero no participan en la validación de las transacciones y bloquean la producción.
La última es la prueba de importancia. Esta es muy parecida a la prueba de participación en que aquellos con una mayor cuota de moneda tienen una mayor probabilidad de forjar bloques. Sin embargo, se lanzan algunas variables más en la mezcla, que dan a cada nodo una puntuación combinada y esa puntuación se utiliza para determinar su cuota de probabilidad de forjar. Las variables utilizadas podrían ser cualquier cosa que se considere saludable para la red. Tal vez quiera favorecer a los nodos que tienen una actividad de transacciones más reciente o tal vez quiera castigar el acaparamiento de moneda disminuyendo la recompensa que recibe un falsificador si poseen dos concentrados de una parte de la riqueza de la red. Todas estas son opciones bajo prueba de importancia.
El consenso, como concepto, es fundamental para cualquier sistema en el que participe más de una entidad. Como la cadena de bloques Ethereum tiene por objeto incluir a cualquier participante que dirija un nodo, es necesario llegar rápidamente a un acuerdo sobre la aceptación de un nuevo bloque como parte de la cadena cuando se extraiga. Sin la posibilidad de llegar a este acuerdo, la cadena de bloques no puede crear nuevos bloques. Un mecanismo de consenso es un conjunto de reglas que permite que varias máquinas que están conectadas entre sí trabajen juntas mientras toleran que algunas máquinas proporcionen datos incorrectos o fallen completamente. Estas propiedades se llaman tolerancia a los fallos y resistencia. Una cadena de bloques necesita un mecanismo de consenso para asegurar que haya un conjunto de reglas para crear y aceptar cada bloque recién creado.