Todos los días vemos como surgen nuevas tecnologías de blockchain en nuestro medio. No importa cuanto tratamos de captar de la última tecnología, ella siempre tiene algo nuevo que ofrecer. ¿Alguna vez te has preguntado cuál es la raíz de todas estas tecnologías de blockchain? Bueno, los algoritmos de consenso son la raíz principal de esta tecnología revolucionaria.

Los algoritmos de consenso son lo que hace que todas estas secuencias de consenso de blockchain sean diferentes una de las otras. La red blockchain cuenta con millones y millones de personas en el mismo espacio. Entonces, ¿por qué  no interfieren unas con otras o existen mutuamente?

La respuesta está en la arquitectura de la red blockchain. La arquitectura esta diseñada de forma inteligente y los algoritmos de consenso son el núcleo de esta arquitectura.

Si realmente quieres saber cómo funciona la secuencia de consenso de blockchain, debes sumergirte mucho más profundo de lo que crees. Es por eso que estaré cubriendo todo lo que hay que saber sobre los algoritmos en esta guía. Entonces, sigamos con esto!

Tabla de contenidos

Capítulo-1: ¿Que es un algoritmo de consenso?
Capítulo-2: El problema con la tolerancia a fallas bizantinas
Capítulo-3: ¿Por qué necesitamos algoritmos de consenso?
Capítulo-4: Blockchain: El esqueleto de la organización de datos de la red descentralizada
Capítulo-5: Algoritmo de consenso: El alma de la red
Capítulo-6: Diferentes tipos de algoritmos de consenso
Capítulo-7: Otros tipos de algoritmos de consenso
Capítulo-8: Notas finales

 

Capítulo-1: ¿Que es un algoritmo de consenso?

La definición técnica sería:

Los algoritmos de consenso son procesos de toma de decisiones para un grupo, donde cada individuo dentro del grupo construye y apoya la decisión que funcione mejor para ellos. Es una forma de resolución donde los miembros deben apoyar la decisión mayoritaria, les guste o no.

En términos simples, es solo un método para tomar decisiones dentro de un grupo. Déjame aclarar con un ejemplo. Imagina un grupo de diez personas que querían tomar una decisión sobre un proyecto que los beneficie a todos. Cada uno puede sugerir una idea, pero la mayoría estará a favor de la que más les beneficie. Los demás tendrán que lidiar con esa decisión, les guste o no.

Ahora imagina lo mismo con miles de personas. ¿No haría eso que las cosas se dificultaran dramáticamente?

Los algoritmos de consenso no solo están de acuerdo con la mayoría de los votos, sino que también están de acuerdo con aquel que los beneficie a todos. Así que, siempre es una victoria para la red.

Los modelos de consenso de blockchain son métodos usados para crear igualdad y equidad en el mundo online. Los sistemas de consenso utilizados para este acuerdo se denominan teoremas de consenso.

Estos modelos de consenso de blockchain consisten en algunos objetivos particulares, tales como:

  • Llegar a un acuerdo: El mecanismo reúne todos los acuerdos del grupo tanto como puede.
  • Colaboración: Cada uno en el grupo apunta a un mejor acuerdo que resulte en los intereses colectivos del grupo.
  • Cooperación: Cada miembro trabajara en equipo y dejara de lado sus propios intereses.
  • Igualdad de derechos: Cada uno de los participantes tiene el mismo valor en la votación. Esto significa que el voto de cada persona es importante.
  • Participación: Todos los que están dentro de la red deben de participar en la votación. Nadie se quedar fuera o nadie puede quedarse fuera de la votación.
  • Actividad: Cada miembro del grupo es igualmente activo. No hay miembros con más responsabilidades que otros en el grupo.

Diferentes tipos de algoritmos de consenso

 

Algoritmos de consenso blockchain

Capítulo-2: El problema con la tolerancia a faltas bizantinas

La tolerancia a faltas bizantinas es un evento particular de fallas. Se le llama problema de los generales bizantinos. La mejor forma de experimentar esa situación es con un sistema informático distribuido. Muchas veces puede haber un mal funcionamiento de los sistemas de consenso.

Estos componentes son los responsables de la información conflictiva. Los sistemas de consenso solo pueden funcionar con éxito si todos los elementos trabajan en armonía. Sin embargo, incluso si uno de los componentes en de este sistema funciona mal, todo el sistema podría fallar.

Los componentes defectuoso siempre causan inconsistencia en el sistema de tolerancia a faltas bizantinas, y es por eso que no es ideal utilizar estos sistemas de consenso para una red descentralizada.

Los expertos le llaman “El problema de los generales bizantinos”. ¿Sigues confundido?

Permite me aclararlo con un ejemplo de consenso.

Imagina que hay un grupo de generales, cada uno posee el control del ejército bizantino. Van a atacar una ciudad y tomar el control, pero para eso, tendrán que decidir cómo atacar.

Puedes pensar que es algo fácil. Sin embargo hay una ligera dificultad. Los generales sólo pueden comunicarse por medio de un mensajero, y algunos generales traidores intentarán sabotear el ataque.

Pueden enviar información falsa a través del mensajero, o el mismo mensajero puede convertirse en el enemigo.

El mensajero podría sabotear intencionalmente haciendo entrega de información errónea.

Es por eso que el problema debe ser tratado con cautela. En primer lugar, de alguna forma tenemos que hacer que cada general tome la misma decisión y, en segundo lugar, asegurarnos de que incluso el menor número de traidores no pueda hacer que la misión fracase.

Puede parecerte algo simple; sin embargo, no lo es. Según la investigación, se necesitarían 3n+1 generales para lidiar con n traidores. Tomaría cuatro generales para hacer frente a un solo traidor, lo que hace que sea un poco complicado.

 

Capítulo-3: ¿Por qué necesitamos algoritmos de consenso?

El problema principal con Bizantino es el poder llegar a un acuerdo. Si se produce un solo fallo, los nodos no podrán llegar a un acuerdo o tendrán un valor de dificultad mayor.

Por otro lado, los algoritmos de consenso no se enfrentan a este tipo de problema. Su objetivo principal es el de alcanzar una meta específica por cualquier medio.

Por eso, cuando podría haber resultados contradictorios en un sistema distribuido; es mejor usar algoritmos de consenso para una mejor salida.

 

Capítulo-4: Blockchain: El esqueleto de la organización de datos de la red descentralizada

Ahora echemos un vistazo dentro de la tecnología blockchain para obtener una mejor vista de toda la red.

  • Es una nueva forma de organizar la base de datos.
  • Puede almacenar todo lo que cambia según la red.
  • Todos los datos se ordena en un bloque como materia.

Sin embargo, no veras ninguna descentralización en el mismo blockchain. Esto se debe a que blockchain no proporciona el entorno descentralizado. Es por eso que necesitamos algoritmos de consenso para asegurarnos de que el sistema esté completamente descentralizado.

Por lo tanto, la tecnología blockchain solo permitirá crear una base de datos con estructura diferente, pero no llevará a cabo el proceso de descentralización. Es por esto que blockchain se considera el esqueleto de toda la red descentralizada.

 

Capítulo-5: Algoritmos de consenso: El alma de la red

El método es bastante simple en realidad. Estos modelos de consenso de blockchain son solo la forma en la que se llega a un acuerdo. Sin embargo, no puede haber ningún sistema descentralizado sin algoritmos de consenso comunes.

Ni siquiera importará si los nodos confían entre sí o no. Tendrán que ir por ciertos principios y llegar a un acuerdo colectivo. Para hacerlo, tendrán que revisar todos los algoritmos de consenso.

Hasta ahora no hemos encontrado ningún algoritmo específico de blockchain que funcione para cada tecnología de blockchain. Tomemos un vistazo a los diferentes tipos de algoritmos de consenso para obtener una mejor visión de la imágen completa.

 

Capítulo-6: Diferentes tipos de algoritmos de consenso

Lista de todos los algoritmos de consenso

  • Prueba de trabajo (PoW)
  • Prueba de participación (PoS)
  • Pueba de participación delegada (DPoS)
  • Prueba de participación arrendada (LPoS)
  • Prueba de tiempo transcurrido (PoET)
  • Práctica de tolerancia a faltas bizantinas
  • Tolerancia a faltas bizantina simplificada
  • Tolerancia a faltas bizantina delegada
  • Grafo de acíclico dirigido
  • Proof-of-Activity
  • Proof-of-Importance
  • Proof-of-Capacity
  • Proof-of-Burn
  • Proof-of-Weight

Proof of Work

Proof of work o prueba de trabajo, es el primer algoritmo de blockchain introducido en la red blockchain. Muchas tecnologías de blockchain utilizan estos modelos de consenso para confirmar todas sus transacciones y producir bloques relevantes para la red chain.

El sistema de contabilidad descentralizado recopila toda la información relacionada con los bloques. Sin embargo, hay que tener especial cuidado con los bloques de transacciones.

Esta responsabilidad recae en todos los nodos individuales llamados mineros y el proceso que utilizan para mantenerla se llama minería. El principio central detrás de esta tecnología es el de resolver problemas matemáticos complejos y dar soluciones fácilmente.

Podrías estar pensando ¿Qué es un problema matemático?

Estos problemas matemáticos requieren de gran cantidad de poder computacional. Por ejemplo, Función Hash o saber como encontrar la salida sin la entrada. Otro es la factorización de enteros y también cubre rompecabezas de viajes.

Esto sucede cuando el servidor siente que tiene un ataque DDoS y para encontrarlo el sistema de consenso requiere de muchos cálculos. Aquí es donde los mineros son útiles. La respuesta a todo el problema con la ecuación se llama hash.

Sin embargo la prueba de trabajo tiene ciertas limitaciones. La red parece crecer mucho y con esto necesita mucho poder computacional. Este proceso está aumentando la sensibilidad general del sistema.

 

pow

¿Por qué el sistema se ha vuelto tan sensible?

La secuencia de consenso de blockchain depende principalmente de datos e informaciones precisas. Sin embargo, la velocidad del sistema carece tremendamente. Si un problema se complica demasiado, tomará más tiempo para generar un bloque.

La transacción se retrasa y el flujo de trabajo de trabajo se detiene. Si el problema de generación de bloques no se puede resolver en un tiempo específico, generar bloques se convertirá en un milagro.

Sin embargo, si el problema se vuelve demasiado fácil para el sistema, entonces será propenso a un ataque DDoS. Además, la solución debe verificarse de forma más precisa porque no todos los nodos pueden verificar posibles errores.

Si pudieran, entonces la red carecería de su característica más importante – Transparencia.

¿Cómo se implementa la prueba de trabajo (PoW) en una red blockchain?

En primer, lugar los mineros resolverán todos los problemas y después de eso nuevos bloques serán creados  y se confirmaran las transacciones después de eso. Es imposible decir cuán complejo puede ser un problema.

Depende en gran medida del número máximo de usuarios, la potencia de corriente mínima y la carga general de la red.

Los nuevos bloques vienen con la función hash, y cada uno de ellos contiene la función hash del bloque anterior. De esta manera, la red agrega una capa adicional de protección y previene cualquier tipo de violación. Una vez que un minero resuelve el problema, se crea un nuevo bloque y se confirma la transacción.

¿Donde es usado exactamente el algoritmo de consenso prueba de trabajo (PoW) en blockchain ?

El más popular es el bitcoin. Bitcoin introdujo este tipo de algoritmo de consenso antes que cualquier otra criptomoneda. Los modelos de consenso de blockchain permitieron cualquier tipo de cambio en la complejidad del problema, basado en el poder general de la red.

Toma alrededor de 10 minutos para crear un nuevo bloque. Otro ejemplo sería Litecoin que también ofrece el mismo sistema.

Otro usuario del algoritmo blockchain es Ethereum, este uso la prueba de trabajo en 3 o 4 grandes proyectos en la plataforma. Sin embargo, Ethereum ha pasado a la prueba de participación (PoS).

¿Por qué la tecnología blockchain usa la prueba de trabajo en primer lugar?

Debes de estar preguntándote por qué diferentes tecnologías de blockchain usan la prueba de trabajo para empezar.

Esto se debe a que la prueba de trabajo ofrece protección DDoS y reduce el impacto de la participación minera. Estos algoritmos de blockchain presentan una gran dificultad para los hackers ya que el sistema requiere mucho poder y esfuerzo computacional.

Por otro lado, ningún minero puede decidir sobre la red en general porque la toma de decisiones no depende de la cantidad de dinero sino de de cuanta potencia computacional tengas para formar nuevos bloques.

¿Cuales son los principales problemas del algoritmo prueba de trabajo?

No todos los algoritmos de consenso son perfectos; La prueba de trabajo tampoco es tan diferente. Tiene muchas ventajas, pero también viene con muchos defectos. Veamos cuales son sus principales defectos.

  • Gran consumo de energía 

La red blockchain tiene millones y millones de microchips diseñados que se activan constantemente. Este proceso requiere mucho jugo.

Actualmente Bitcoin ofrece 20 mil millones de hashes por segundo. Los mineros en la red usan microchips específicamente diseñados para ejecutar los hash. Este procedimiento permite a la red agregar capas de protección contra ataques botnet.

El nivel de seguridad de la red blockchain basada en la prueba de trabajo requiere mucha energía y es intensivo. El consumo es tan grande que se esta convirtiendo en un problema para el mundo donde nos estamos quedando sin energía. Los mineros en el sistema tienen que enfrentar una gran suma de dinero debido al consumo de electricidad.

La mejor solución para este problema es una fuente de energía barata.

  • Centralización de mineros

Con el problema de la energía, la prueba de trabajo avanzará en busca de soluciones de electricidad más barata. Sin embargo, el principal problema sería si un minero fabricante de Bitcoin crece. Dentro de un cierto tiempo, el fabricante puede llegar a necesitar mucha más energía y tratar de crear nuevas reglas en el sistema de minería.

Esta situación llevará la centralización dentro de la red descentralizada. Es por eso que es otro gran problema que enfrentan estos algoritmos de blockchain.

¿Que hay sobre el ataque del 51%?

Permíteme aclarar lo que significa realmente el ataque del 51%. Este ataque significaría un posible control de la mayoría del poder de minado por parte de una persona o grupo de mineros. En este escenario el atacante tendrá el poder suficiente para controlar todo en la red.

Pueden detener a otras personas de poder generar nuevos bloques. Los atacantes también pueden recibir recompensas basadas en sus tácticas.

Permíteme aclararlo con un ejemplo de consenso.

Imagina un escenario en el que Alice le envía a Bob algunas criptomonedas a través de la red blockchain. Alice está involucrada en el ataque pero Bob no. La transacción es efectuada, pero los atacantes no permiten que ninguna cantidad de dinero sea transferida iniciando una bifurcación en la cadena.

En otros casos, los mineros se unirán a uno de los lados, donde tendrán mayor potencia computacional combinada en esos bloques. Es por eso que otros bloques con vidas más cortas son rechazados. Como resultado, Bob no recibirá el dinero.

De todos modos, esta no es la solución más rentable ya que tomaría una gran cantidad de energía minera, y después de que el incidente sea expuesto, los usuarios comenzaran a abandonar la red, y eventualmente el costo de mercado  se reducirá.

Prueba de participación (PoS)

¿Que es una prueba de participación?

Prueba de participación o Proof of Stake (PoS) es un algoritmo de consenso que lidia con los principales problemas del algoritmo prueba de trabajo (PoW). Con este, cada bloque se valida antes de que la red añada otro bloque. Hay un pequeño giro en esta. Los mineros pueden unirse al proceso de minería usando sus monedas para participar.

La prueba de participación es un nuevo tipo de concepto en la que cada individuo puede minar o incluso validar nuevos bloques solo en función de la cantidad de monedas que posea. Entonces, en este escenario mientras mas monedas tengas, más posibilidades tendrás.

¿Cómo funciona?

En este algoritmo de consenso, los menores son elegidos antes.

Aunque el proceso es completamente aleatorio, no todos los menores pueden participar en el. Todos los mineros de la red son elegidos aleatoriamente. Si tienes una cantidad específica de monedas almacenadas previamente en tu billetera, entonces estarás calificado para ser un nodo en la red.

Después de ser un nodo, si quieres calificar para ser minero necesitarás depositar una cierta cantidad de monedas, después de eso habrá un sistema de votación para elegir a los validadores. Cuando todo esté listo, los mineros van a apostar la cantidad mínima requerida para el replanteo de una billetera especial.

El proceso es bastante simple en realidad. Los nuevos bloques se crearán de forma proporcional al número de monedas en función de la cartera. Por ejemplo, si tu posees el 10% de todas las monedas, podrás minar un 10% de bloques nuevos.

Hay muchas tecnologías de blockchain que usan una variedad de pruebas de participación. De igual forma, todos los algoritmos funcionan de la misma manera para minar nuevos bloques. Cada minero recibirá una recompensa por el bloque al igual que una que una parte de las tarifas de transacción.

 

pos

¿Que pasa en un pool de prueba de participación?

Hay otras formas de participar en la apuesta. Si la cantidad apostada es muy alta, puedes unirte a un grupo o pool y obtener ganancias a través de ello. Puedes hacerlo de dos maneras.

En primer lugar, puedes hacer un préstamo de tus monedas a otro usuario que participara en pool y luego compartirá las ganancias contigo. Pero, tendrás que encontrar una persona confiable para ello.

La otra forma Seria unirte al pool por tu cuenta. De esta forma, todos los que participan en ese pool dividirán las ganancias basados en la cantidad colocada por cada uno.

Prueba de participación: ¿Cuáles son sus beneficios?

En primer lugar, este tipo de algoritmo de consenso no requiere de ningún tipo de respaldo de hardware. Solo necesita un sistema informático funcional y una conexión a Internet estable. Cual quier persona que tenga suficientes monedas en la red podrá validar las transacciones.

Si una persona invierte en la red, esta no se depreciará con el tiempo como otras invenciones. Lo único que afectaría el beneficio son las fluctuaciones de precios. El blockchain basado en el algoritmo de consenso prueba de participación es mucho mas eficiente con respecto a la energía. Ni siquiera necesita demasiado consumo eléctrico.

También reduce los riesgos de un ataque de 51%,

Aunque la prueba de participación parezca mas lucrativa que la prueba de trabajo, existe una diferencia significativa. El principal inconveniente del sistema es que la descentralización total nunca sera posible.

Esto se debe a que solo un puñado de nodos puede participar. Individuos con una mayor cantidad de monedas eventualmente llegaran a controlar la mayor parte del sistema.

PoW vs PoS

Criptomonedas populares que usan prueba de participación como base de la tecnología blockchain

PIVX

Esta es otra moneda de privacidad que tiene tarifas de transacción casi nulas. PIVX fue previamente bifurcado de Dash, pero se movió a la prueba de participación dejando la prueba de trabajo. También aseguran un mejor replanteamiento usando un nodo maestro para distribuir bloques.

If you want to start taking PIVX, then you have to download the official wallet and then sync it with the blockchain. After that, you have to transfer some of the currency into the wallet and then leave it connected like that.

Si deseas comenzar con PIVX, debes descargar la billetera oficial luego sincronizarla con blockchain. Después de eso, debes de transferir parte de la moneda a la billetera y luego dejarla conectada.

NavCoin

Muchas criptomonedas bifurcaron la secuencia de consenso original de de Bitcoin; NavCoin es una de ellas. El proyecto es completamente de código abierto. También migraron a la prueba de participación mucho antes que la mayoría de criptomonedas

Para obtener el máximo beneficio, tu computadora deberá estar conectada a la red durante periodos mas prolongados. Como la prueba de participación es exepcionalmente liviana, puedes dejarla en funcionamiento por mucho mas tiempo sin preocupaciones.

Stratis

Esta es otra prueba de consenso de blockchain que se ejecuta en prueba de participación. Los servicios se hacen principalmente para empresas. Las empresas pueden usarlo para construir sus propias Apps sin su propia red blockchain.

La plataforma ofrece desarrollo de aplicaciones en las cadenas laterales que previenen todo tipo de lag en la red. Ellos comenzaron un proyecto de prueba de trabajo pero al final pasaron a la prueba de participación.

 

Algoritmos blockchain: Consenso de prueba de participación delegada 

La prueba de participación delegada (DPoS) es una variación de la prueba de participación típica. El sistema es bastante robusto y agrega una forma diferente de flexibilidad a toda la ecuación.

Si quieres algoritmos de consenso rápidos, eficientes y descentralizados la prueba de participación delegada es la mejor opción. El problema de las partes interesadas se resuelve de manera democrática. Cada componente de la red puede convertirse en un delegado.

Aquí, en lugar de mineros o validadores, los nodos se denominan delegados. Al determinar la producción de bloques, este sistema puede realizar una transacción en solo un segundo. Ademas, este sistema fue diseñado para garantizar todos los niveles de protección contra problemas regulatorios.

Testigos que validan todas las firmas

Por lo general, los testigos están libres de regulaciones y otras palabras neutrales. El testigo estándar en los contratos tradicionales tiene un lugar especial para que los testigos validen. Solo se aseguran que las personas se pongan en contacto a una hora determinada.

En la prueba de participación delegada, los testigos pueden generar bloques de información. También existe un concepto de votación para elegir a los mejores testigos. La votación solo ocurre cuando el sistema piensa que esta totalmente descentralizado.

Todos los testigos son pagados justo después de que se produce un bloque. La tasa se selecciona previamente a través de un sistema de votación.

Cambio de parámetros especiales en delegados electos

Al igual que los testigos, los delegados también son elegidos. Los delegados elegidos se utilizan para cambiar los parámetros generales de la red. Con los delegados, tendrás acceso a las tarifas de transacción, los intervalos de bloque, los tamaños de bloques y el pago de testigos.

Para cambiar un parámetro en la red, la mayoría de los delegados deben votar por lo mismo, pero a los delegados no se le paga como a los testigos.

Cambiando la regla típica

Para ejecutar el sistema sin problemas, es necesario agregar diferentes características de vez en cuando. El proceso de agregar esta característica no se puede hacer sin una posible parte interesada. Los testigos pueden unirse y cambiar las políticas, pero no están programados para hacerlo.

Los delegados necesitan mantenerse neutrales aunque son solo empleados de las partes interesadas.

Riesgo de doble ataque

En la prueba de participación delegada, el riesgo de duplicar gastos se reduce en gran manera. Esto puede ocurrir cuando una red blockchain falla al incluir una transacción previamente realizada en la base de datos.

La red puede verificar su estado de salud sin la ayuda de nadie y puede detectar cualquier tipo de perdida. De esta manera, se asegura un 100% de transparencia en la base de datos.

Las transacciones se realizan como prueba de participación

Aunque el sistema es una variación de la prueba de participación, el núcleo del sistema de transacciones sigue operando completamente en el algoritmo de prueba de participación. El proceso de transacción de la prueba de participación garantiza una capa adicional de protección contra sistemas de consenso defectuoso.

¿Quien usa la prueba de participación delegada?

Uno de los nombres mas populares en el mercado es el de Lisk. Esta plataforma de blockchain le ofrece a los desarrolladores una plataforma con la cual crear aplicaciones descentralizadas basadas en JavaScript sin problema alguno.

Tiene una gran cantidad de elementos en común con Ethereum, pero, el sistema utiliza la prueba de participación delegada en lugar de prueba de participación.

La participación funciona de manera diferente con este.

Prueba de participación arrendada (LPoS)

Otro giro a la prueba de participación clásica es la prueba de participación arrendada o leased proof of stake (LPoS). Este nuevo algoritmo de consenso fue introducido por la plataforma Waves. Al igual que cualquier otra plataforma tecnológica de blockchain, Waves también garantiza una mejor funcionalidad con un muy bajo consumo de energía.

La prueba de participación original tenia algunas limitaciones para la participación. Las personas con una cantidad limitada de monedas puede que nunca participen. Para mantener la red con éxito, solo queda un puñado de individuos con mas monedas para ofrecer.

Este proceso permite que el sistema cree comunidades centralizadas dentro de una plataforma descentralizada, lo cual aparentemente no es lo deseado.

En la prueba de participación arrendada, los pequeños propietarios tienen finalmente la oportunidad de participar. Pueden arrendar sus monedas a la red y tomar beneficio de ello.

Después de la introducción de la nueva prueba de participación arrendada, la situación cambio por completo. Las limitaciones del sistema anterior se pueden resolver sin problemas. El objetivo principal de la plataforma Waves era ayudar a los pequeños inversionistas.

Las personas con pequeñas cantidades de monedas en sus billeteras nunca tendrán la oportunidad de obtener beneficios como los peces gordos. De esta manera se establece el tema principal de los algoritmos de consenso – Transparencia.

Prueba de tiempo transcurrido (PoET)

La prueba de tiempo transcurrido o proof of elapsed time (PoET) es uno de los mejores algoritmos de consenso. Este algoritmo en particular se usa principalmente en redes blockchain privadas, donde tendrán que obtener permiso para poder acceder a la red. Estas redes privadas deben decidir los derechos mineros o los principios de votación.

Para asegurarse de que todo funcione correctamente, el algoritmo PoET utiliza una táctica particular para cubrir la transparencia en la red. Los algoritmos de consenso también garantizan un inicio de sesión seguro en el sistema, ya que la red requiere una identificación antes de dejar que los mineros se unan.

No hace falta decir que este algoritmo de consenso da la oportunidad de elegir de forma justa a los ganadores.

Veamos cual es la estrategia principal de estas asombrosas secuencias de consenso.

  • Cada persona en la red tiene que esperar una cantidad de tiempo, pero, el limite de tiempo es totalmente aleatorio.
  • El participante que haya terminado su parte justa de tiempo de espera estará en registro para crear un nuevo bloque.

Para justificar estos escenarios el algoritmo debe de considerar dos cosas:

  • En primer lugar, si el ganador eligió realmente un tiempo aleatorio y no un tiempo mas corto para así obtener la victoria.
  • Si la persona realmente espero el tiempo que se le fue asignado.

PoET depende de un requisito especial del CPU. Se llama Intel Software Guard Extension. Esta extensión de Software Guard ayuda a ejecutar códigos únicos dentro de la red. PoET usa este sistema y se asegura de que ganar siempre sea justo.

El sistema SGX de Intel

Como los algoritmos utilizan el sistema SGX para verificar la imparcialidad de la selección, echemos un vistazo más profundo a este sistema.

Primero, un sistema de hardware especial crea una certificación para usar un código de confianza en particular. El código se configura en un entorno seguro. Cualquier parte externa puede usar este certificado para verificar si esta o no esta libre de interferencias.

En segundo, el código se ejecuta en un área aislada de la red donde nadie puede interactuar con el.

El primer paso es necesario para demostrar que realmente está utilizando el código de confianza en la red y no otro truco aleatorio. La red principal nunca debe descubrir si el primer paso no se ejecuta correctamente.

El segundo paso impide que cualquier usuario manipule el sistema para que piense que se está ejecutando el código. El segundo paso garantiza la seguridad del algoritmo.

El código de confianza

Permítanme simplificar algunas cosas de este código.    

Uniéndose a la red blockchain                    

  • Un nuevo usuario primeramente descargara el código de confianza a blockchain.
  • Después de que inicie el proceso, se obtendrá un par de llaves especiales.
  • Usando esas llaves, el usuario puede enviar el certificado SGX a la red y solicitar acceso.

Participando en los sistemas de lotería

Los usuarios obtendrán un temporizador firmado de la fuente de confianza

Después de eso, el usuario tendrá que esperar hasta que el tiempo que se le haya otorgado finalice por completo.

Por último, el usuario obtendrá una certificación para completar la labor requerida

El protocolo también garantiza un nivel diferente de protecciones basado en el SGX. Este sistema cuenta la cantidad de veces que un usuario gana la loteria. Al hacer esto, sabrán si el SGX del usuario esta comprometido o no.

 

Algoritmos blockchain: Práctica de la tolerancia a faltas bizantinas  (PBFT)

La práctica de la tolerancia a faltas bizantinas en inglés practical byzantine fault tolerance (PBTC) se centra principalmente en el estado de máquina. Replica el sistema pero elimina el problema de los generales bizantinos. Ahora, ¿como lo hace?

Bueno, el algoritmo asume desde el principio que podría haber posibles fallos en la red y que algunos nodos independientes pueden tener fallas de funcionamiento en algún momento.

El algoritmo está diseñado para sistemas de consenso asíncronos y optimizados de una forma más eficiente para enfrentarse a todos los problemas.

Además, todos los nodos dentro del sistema se organizan en un orden específico.  Se selecciona un nodo como el principal y otros funcionan como plan de respaldo. Aunque, todos los nodos dentro del sistema funcionan en armonía y se comunican entre sí.

El nivel de comunicación es bastante alto, esto se debe a que quieren verificar toda la información que sea encontrada en la red. Esto elimina el problema de la información poco confiable.

También, con este nuevo proceso, son capaces de descubrir incluso si uno de los nodos está comprometido. Todos los nodos llegan a un acuerdo por mayoría de votos.

Los beneficios del algoritmo de consenso PBFT

El algoritmo de práctica de tolerancia a faltas bizantinas comparte algunos datos interesantes con nosotros. El modelo fue diseñado principalmente para casos de uso práctico, y son extremadamente fáciles de implementar. Por lo tanto, PBFT posee una cierta ventaja sobre todos los otros algoritmos de consenso.

  • No hay necesidad de confirmación:

Las transacciones en esta red funcionan un poco diferente. Puede finalizar una transacción sin ningún tipo de confirmación, como vemos en el sistema de prueba de trabajo.

Si los nodos concuerdan con un bloque específico, este se finaliza. Esto se debe al hecho de que todos los nodos auténticos se comunican entre sí al mismo tiempo y llegan a un entendimiento del bloque especificado.

  • Reducción de energía:

The new model offers a good amount of reduction in consumption of power than PoW. In the PoW, every block needed individual PoW round. However, in this model, not every miner is solving the typical hashing algorithm.

El nuevo modelo ofrece una buena reducción en el consumo de energía en comparación con PoW. En PoW, cada bloque necesita una ronda individual de PoW. Pero, en este modelo no todos los mineros están resolviendo el típico algoritmo de hashing.

Es por eso que el sistema no necesita tanto poder computacional.

Inconvenientes del sistema

A pesar de que PBFT proporcionó muchas ventajas y hechos prometedores, todavía tiene muchas desventajas. Veamos cuales son

  • Brecha en la comunicación:

El factor más importante de este algoritmo es la comunicación entre los nodos. Cada nodo en la red tiene que asegurarse de que la información que recopilan sea sólida, pero sucede que los algoritmos de consenso solo funcionan de manera eficiente para un grupo pequeño de nodos.

Si el grupo de nodos aumenta en gran medida, el sistema puede tener dificultades para realizar un seguimiento de todos los nodos y no podrá comunicarse con cada uno de ellos.

El documento respalda los estados de este modelo para usar a MAC y a otras firmas digitales para probar la autenticidad de la información. Dicho esto, las MAC no son capaces de manejar el tipo de sistema de la red blockchain, así que al final su uso seria una perdida significativa.

La firma digital puede ser un buen punto, pero mantener la seguridad con todos estos nodos de comunicación se volverá cada vez más difícil a medida que aumenta el número de nodos.

  • Ataque Sybil:

La PBFT es muy vulnerable a los ataques Sybil. En estos ataques, se pueden manipular un grupo de nodos, y al hacerlo, estos comprometen toda la red. Esto también empeora mucho más con las redes más grandes haciendo que la escalabilidad del sistema se reduzca.

Si uno pudiera usar este modelo con otros algoritmos de consenso, probablemente obtenga un combo sólido y seguro.

Tolerancia a faltas bizantinas simplificada (SBFT)

En la tolerancia a faltas bizantinas simplificada, el sistema trabaja un poco diferente.

Primero, un generador de bloques recopilará todas las transacciones a la vez y las validará después de agruparlas agruparlas en un nuevo tipo de bloque.

En términos simples, un bloque recopilará todas las transacciones, las agrupara de manera correcta en otro bloque y finalmente las validará todas juntas.

El generador aplica ciertas reglas que todos los nodos siguen para validar todas las transacciones. Después, un firmante de bloques los valida y agrega su propia firma. Es por eso que si alguno de los bloques omite incluso una de las llaves, la transacción será rechazada.

Diferentes etapas de la tolerancia a faltas bizantinas simplificada

  • La etapa comienza con la fase de creación, donde el usuario del activo producirá un número mayor de ID únicos.
  • La siguiente es la fase de entrega, donde el usuario envía todos los ID a la plataforma.
  • Luego comienza la fase de validación, donde los ID obtienen términos específicos de uso.
  • Una vez que se hayan registrado, se almacenarán y se transferirán a cuentas diferentes. Las transacciones podrían suceder con la ayuda de contratos inteligentes.
  • Por último, las transacciones se hacen públicas.

Another cool feature of this awesome system is the Account manager, which helps in many stages. The primary target is to store all the assets securely. Account manager also stores all the transactional data. The manager can contain all sorts of combinational assets for different types of users.

Otra característica interesante de este increíble sistema es el administrador de cuentas, que ayuda en muchas de las etapas. El objetivo principal es almacenar todos los activos de forma segura. El administrador de cuentas también almacena todos los datos de transacciones. El administrador puede contener todo tipo de combinaciones de activos para diferentes tipos de usuarios.

Puedes pensar en esto como billeteras digitales. Usando estas billeteras digitales, podrás transferir tus activos desde la billetera e incluso recibir algunos a cambio. También puedes usar el administrador de cuentas para formar los contratos inteligentes y cuando se cumpla el requisito especificado, se liberarán los fondos.

¿Pero cómo fluye la propiedad de los activos?

Bueno, en realidad usan un modelo push que contiene direcciones y ID de usuarios para enviarles el activo ganado.

Seguridad y privacidad

SBFT es para una red privada donde la confidencialidad es la prioridad de la red. La plataforma fue diseñada de manera que expone información confidencial con ciertas limitaciones. Es por eso que el sistema utiliza tres tipos de técnicas, como prueba de conocimiento cero, direcciones de uso único y metadatos cifrados.

  • Direcciones de uso único:

Cada vez que un usuario desea recibir algún activo en su billetera, se le asignarán direcciones de uso único. Cada dirección es diferente de la otra y por lo tanto impide que cualquier otro usuario intercepte la transacción.

  • Prueba de conocimiento cero:

La prueba de conocimiento cero, se utiliza para ocultar todos los componentes de una transacción. Aunque, toda la red todavía puede validar la integridad de la transacción. Esto se hace con la ayuda de la prueba de conocimiento cero, donde una parte probara su autenticidad a otra parte.

De esta manera, solo el receptor y el remitente podrá ver los componentes de la transacción.

  • Encriptación de Metadatos:

Los metadatos de las transacciones también son encriptados para garantizar una mayor seguridad. La red permitirá el uso de llaves para validar la autenticidad. De todas formas, para una mejor protección, las llaves se modificarán cada 2 o 3 días.

Además, todos ellos son mantenidos separados y en diferentes partes de la red de datos. Entonces, si uno de ellos es hackeado, se pueden usar otras llaves para generar más llaves únicas. El manejo de estas llaves y su rotación cada pocos días son necesarios para garantizar la integridad de estos algoritmos de consenso.

Chain, una plataforma basada en blockchain usa SBFT para validar todas sus transacciones en la red. Aparte de eso, también están utilizando un módulo de seguridad para hardware (HSM) para una seguridad de nivel industrial. Al utilizar los HSM, están garantizando una seguridad adicional sin la necesidad de fallar un solo punto.

 

Tolerancia a faltas bizantinas delegada (dBFT)

No hay debate sobre el hecho de que la prueba de trabajo (PoW) y la prueba de participación (PoS) son los algoritmos de consenso más conocidos. Si bien gran parte del ecosistema blockchain sigue estos dos algoritmos, algunos están intentando imponer nuevos sistemas de consenso mucho más avanzados. Entre estas marcas pioneras el nombre de NEO se menciona seguro.

Con un crecimiento próspero en los últimos 12 meses, NEO es ahora el pastel de la industria. La marca China ha demostrado bastante potencial. ¿Y por qué no lo harían? Son los inventores del teorema de consenso avanzado: Tolerancia a faltas bizantinas delegada (dBFT)

 

Una tecnología popular de blockchain: NEO

Esta es una de las criptomonedas más populares en el mercado. A veces se le llama como el Ethereum de China. El objetivo principal de la red es crear una economía inteligente en la que pueda compartir sus activos digitales a bajo precio.

NEO utiliza la tolerancia a faltas bizantinas delegada para validar todas las transacciones. Si apuestas tu NEO, podrás generar GAS. GAS es la principal plataforma de circulación de la moneda. Tendrá que pagar hasta una cierta cantidad de tarifa de GAS por cada transacción. Es por eso que cuanto más NEO apuestas, más GAS obtendrás.

De todas formas, esta apuesta es un poco diferente a la PoS

Muchos sitios de intercambio ofrecen un sistema de pooling. Aunque, es mejor usar la billetera oficial de NEO en lugar de otra billetera de almacenamiento.

Antes de comenzar nuestro análisis sobre la dBFT, debemos dejarte saber las fallas del padre de este algoritmo – Algoritmo de consenso de tolerancia a faltas bizantinas.

 

Defecto de los generales bizantinos!

Una falla importante del sistema ocurre cuando somos testigos de cualquier tipo de votación y el resultado de la misma. ¿Pero cómo? Para comprender mejor la falla, debes comprender el siguiente ejemplo de consenso.

Ya sabes que los nodos que siguen los algoritmos de consenso de dBFT se conocen como el ejército. Un ejército de nodos tiene un solo general, y siempre siguen el comando de su general.

Ahora imagina que el ejército bizantino está planeando atacar Roma y apoderarse de él. ¡Consideremos que hay nueve generales del ejército bizantino y los generales han rodeado la ciudad y se han preparado para atacar! Pueden apoderarse de Roma sólo si los generales planean atacar o retirarse siguiendo una estrategia única y unificada.

¡Aquí está la trampa! Los generales tienen una naturaleza única: seguirán la decisión que tiene una mayoría del 51% con respecto al voto. Hay otro giro aquí; Los generales no están tomando decisiones sentados en una mesa. En su lugar, se colocan en diferentes lugares y utilizan mensajeros para transferir mensajes.

 

Las cuatro amenazas

Hay cuatro formas que podrían ayudar a los romanos a retener tu trono:

Primero, los romanos podrían intentar sobornar a los generales y ganar su favor. El general que acepte el soborno será considerado como un “General traidor”.

Segundo, cualquier general podría tomar una decisión equivocada que va en contra de la voluntad colectiva. Estos generales son más conocidos como “Generales con funcionamiento incorrecto“.

Tercero, el que envía el mensaje o el mensajero podrían aceptar sobornos de los romanos y entregar decisiones engañosas a los otros generales.

Y por último, los romanos podrían matar al mensajero para sabotear la red de comunicación de los generales.

Por lo tanto, la tolerancia a faltas bizantinas tiene cuatro fallos significativos que hacen que los algoritmos de consenso sean imperfectos.

 

¿Como la tolerancia a faltas bizantinas (dBFT) cambia la escena?

No te preocupes; NEO nos ha mostrado una mejor manera de resolver el problema de los generales bizantinos. Ahora echemos un vistazo a la tolerancia a faltas bizantina delegada de la que NEO está tan orgullosa. El dBFT se centra principalmente en resolver el modelo existente de dos maneras: mejor escalabilidad y rendimiento mejorado.

 

Los oradores y los delegados

Volveremos a utilizar otro ejemplo para aclarar el modelo de dBFT. Consideremos que el ejército bizantino tiene un líder electo en lugar de un general burocrático. Este líder elegido actuará como el delegado de la banda del ejército.

Podrías pensar que los generales serán reemplazados democráticamente por estos delegados electos. Incluso el ejército puede estar en desacuerdo con estos delegados y elegir otro delegado para reemplazar al anterior.

Esto limita el poder burocrático de los generales, y ningún general podría traicionar al ejército en general. Entonces, los romanos ahora no pueden simplemente sobornar y comprar a los generales para que trabajen para ellos.

En la dBFT, los delegados elegidos deben realizar un seguimiento de las decisiones de los nodos individuales. Un registro descentralizado anota todas las decisiones de los nodos.

El ejército de nodos también elige a un orador para compartir su pensamiento común y unificado con el delegado. Para aprobar una nueva ley, los oradores comparten la idea del ejército de nodos con los delegados, y al menos el 66% de los delegados tienen que estar de acuerdo con la moción. De lo contrario, la ley propuesta no pasará.

Si una moción no recibe la aprobación del 66% de los delegados, se rechaza la propuesta y se propone una nueva moción hasta que lleguen a un consenso. Este proceso protege a todo el ejército de los generales traidores o desleales.

 

Los oradores deshonestos

Todavía hay dos escenarios posibles que podrían obstaculizar la integridad del protocolo de consenso de dBFT: un orador deshonesto y un delegado deshonesto.

El protocolo de consenso de dBFT también nos da la solución a estos escenarios. Como hemos dicho, un registro mantiene las decisiones de los nodos en un solo lugar. Los delegados pueden verificar si el orador habla realmente por el ejército. Si la propuesta del orador y el registro no se unen, el 66% de los delegados rechazará la propuesta del orador y lo destituyen de su cargo .

 

Los delegados deshonestos

El segundo escenario tiene un orador honesto y un delegado probablemente traidor. Aquí, los delegados honestos y el orador honesto tratarán de lograr una mayoría del 66% y disminuirán los esfuerzos del delegado deshonesto.

Por lo tanto, puedes ver cómo la dBFT superan las fallas de los generales bizantinos y el consenso BFT por completo. Seguramente, NEO merece elogios de todo el mundo por su esfuerzo por crear un mejor algoritmo de consenso.

 

Grafo acíclico dirigido (DAG)

Muchos expertos en criptografía reconocen a Bitcoin como blockchain 1.0 y Ethereum como blockchain 2.0. Pero hoy en día, estamos viendo un nuevo jugador en el mercado con tecnología aún más moderna.

Algunos también dicen que es el blockchain 3.0. Mientras que muchos de los contendientes están luchando para obtener el título de blockchain 3.0, NXT estará por delante del juego con la aplicación de Grafo acíclico dirigido, también conocida como DAG. Además de NXT, IOTA y IoT Chain también adoptaron a DAG en su sistema.

 

¿Cómo funciona el Grafo acíclico dirigido (DAG)?

Podrías pensar en DAG como un algoritmo de consenso. Pero DAG es básicamente una forma de estructura de datos. Mientras que la mayoría de las blockchains son una “cadena” de “bloques” que contienen datos, DAG es un gráfico continuo donde los datos se almacenan topológicamente. DAG podría ser conveniente para manejar problemas específicos como: procesamiento de datos, enrutamiento, compresión.

Se tarda unos 10 minutos en crear un bloque utilizando el algoritmo de consenso Proof-of-Work. Sí, ¡el PoW es un lento! En lugar de trabajar en una sola cadena, DAG implementa las “cadenas laterales”. Una cadena lateral permite que diferentes transacciones se realicen de forma independiente en múltiples cadenas.

Esto reducirá el tiempo de creación y validación de un bloque. Bueno, en realidad, disuelve la necesidad de bloques por completo. ¡Además, la minería parece ser también una pérdida de tiempo y energía!

Aquí, todas las transacciones están dirigidas y mantienen una secuencia particular. Además, el sistema es acíclico, lo que significa que la posibilidad de encontrar el nodo principal es cero, ya que es un árbol de nodos, no un bucle de nodos. ¡DAG está mostrando al mundo una posibilidad de blockchains sin los bloques!

 

Conceptos básicos de Grafo acíclico dirigido DAG

  • No mas gastos dobles

El blockchain tradicional permite la minería en un solo bloque a la vez. Existe la posibilidad de que más de un minero intente validar un bloque. Esto crea una probabilidad de doble gasto.

Además, la situación podría llevar a bifurcaciones blandas o incluso duras. El DAG válida una transacción particular basada en el número anterior de transacciones. Esto hace que el sistema blockchain sea más seguro y más robusto.

  • Menos ancho

En otros algoritmos de consenso, los nodos de transacción se agregan a toda la red. Esto hace que el ancho del sistema sea más voluminoso. Mientras que, DAG vincula las nuevas transacciones con el grafo de transacciones más antiguo. Esto hace que toda la red sea ligera y más sencilla para validar una transacción en particular.

  • Más rápido y más inteligente

Como DAG tiene una naturaleza sin bloques, puede manejar transacciones mucho más rápido. De hecho, hace que el PoW y el PoS se vean como los abuelos en una carrera.

  • Favorable para las transacciones más pequeñas

No todos están tramitando millones en una sola transacción. De hecho, los pagos más pequeños son más comúnmente presenciados. Pero las tarifas de pago sustanciales de Bitcoin y Ethereum no parecen ser tan amigables con las cantidades más pequeñas. Por otro lado, DAG es perfectamente adecuado para los más pequeños debido a las insignificantes tarifas de transacción.

 

Capítulo-7: Otros tipos de algoritmos de consenso

Proof-of-Activity

Mientras las personas debatian el tema, PoW vs. PoS, el creador de Litecoin y otros tres autores pensaron en algo brillante. Le hicieron al mundo una pregunta simple: ¿por qué no se pueden combinar el PoW y el PoS en lugar de hacer que luchen entre sí?

Por lo tanto, la idea de un híbrido fascinante vino al mundo: Proof-of-Activity (Prueba de actividad). Combina las dos mejores características: más seguro contra cualquier ataque y es un sistema que no consume mucha energía.

 

¿Cómo funciona Proof-of-Activity?

En el protocolo de consenso Proof-of-Activity, el proceso de minería comienza igual que el algoritmo PoW. Los mineros resuelven un problema para obtener una recompensa. Entonces, ¿dónde está la diferencia crucial con PoW? En PoW, los mineros extraen bloques que tienen una transacción completa.

En la Proof-of-Activity, los mineros extraen solo la plantilla de los bloques. Dicha plantilla tiene dos cosas: la información del encabezado y la dirección de recompensa para los mineros.

Una vez, los mineros extraen estas plantillas de bloques; El sistema se pasa a la PoS. La información del encabezado dentro de un bloque apunta a un inversionista aleatorio. Estos inversionistas luego validan los bloques pre-minados.

Mientras más pueda guardar un validador, mas aumentan las posibilidades de que aprueben un bloque. Solo después de la validación, ese bloque particular entra en la blockchain.

Así es como la Proof-of-Activity utiliza lo mejor de los dos algoritmos de consenso para validar y agregar un bloque a la blockchain. Además, la red paga tanto a los mineros como a los validadores la parte justa de las tarifas transaccionales. De este modo, el sistema actúa contra la “tragedia de los comunes” y crea una mejor solución para la validación de bloques.

 

El impacto de Proof-of-Activity

Una de las mayores amenazas a las que se enfrenta una blockchain es el ataque del 51%. El teorema del consenso reduce la probabilidad del ataque del 51%  a cero. Sucede ya que ni los mineros ni los validadores pueden ser la mayoría, ya que el proceso requeriría una contribución igual al agregar un bloque a la red.

Algunos críticos dicen que el protocolo de consenso Proof-of-Activity tiene algunas fallas graves. El primero sería la enorme cantidad de consumo de energía debido a la función de minería. En segundo lugar, la Proof-of-Activity no tiene ninguna solución para detener la doble firma de los validadores. Estas dos fallas significativas hacen que el teorema del consenso este un poco atrasado.

Two popular blockchains adopt the Proof-of-Activity – Decred and Espers. Still, they have some variations. In reality, Decred is getting considered as the more popular one than the Espers consensus theorem.

Dos blockchains populares adoptaron la Proof-of-Activity – Decred y Espers. Aún así, tienen algunas variaciones. En realidad, Decred se está considerando como el más popular que el teorema de consenso de Espers.

 

Proof-of-Importance

Lo siguiente en nuestra lista es el protocolo de consenso Proof-of-Importance. Este ejemplo de consenso llegó a ser gracias al famoso nombre de NEM. El concepto es un desarrollo del Proof-of-Stake. Aunque, NEM introdujo una nueva idea: la recolección o la adquisición.

El mecanismo de recolección determina si un nodo es elegible para ser agregado a la cadena de bloques o no. Cuanto más coseche en un nodo, más posibilidades tendrá de agregarse a la cadena. A cambio de la recolección, el nodo recibe las tarifas de transacción que el validador cobra como recompensa. Para poder recolectar, debes tener al menos 10,000 XEM en tu cuenta.

Esto resuelve el mayor problema de la Proof-of-Stake. En PoS, el más rico obtiene más dinero en comparación con los validadores que tienen menos dinero. Por ejemplo, si posees el 20% de las criptomonedas, puedes minar el 20% de todos los bloques en la red de blockchain. Esto hace que los algoritmos de consenso favorezcan a los ricos.

 

Características importantes de Proof-of-Importance

  • Adquisición (Vesting)

La característica más intrigante del teorema del consenso es la adquisición o recolección. Como hemos dicho, en primer lugar necesitas tener al menos 10,000 monedas para ser elegible para la recolección. Tu puntaje de Prueba de importancia depende de la cantidad que tengas recolectada. Aunque, los algoritmos de consenso tienen en cuenta el período de tiempo que tiene las monedas en su bolsillo.

  • Sociedad de transacción

El algoritmo Proof-of-Importance te recompensará si realizas transacciones con otros titulares de cuentas NEM. La red los considerará a ustedes dos como socios. Aunque, el sistema te atrapará si planeas hacer una pseudo asociación.

  • El sistema de puntuación

Las transacciones representan un impacto para tu Proof-of-Importance. La puntuación se basa en las transacciones que se han realizado en un período de treinta días. Una suma más frecuente y más sustancial lo ayudará a mejorar su puntaje en la red NEM.

Proof-of-Capacity

El ejemplo de consenso Proof-of-Capacity es una actualización del famoso protocolo de consenso blockchain Proof-of-Work . La característica esencial de esta es el “plotting”. Tendrás que dedicar tu poder de cómputo y almacenamiento en el disco duro incluso antes de comenzar a minar.

Esta misma naturaleza hace que el sistema sea más rápido el PoW. La Proof-of-Capacity puede crear un bloque en solo cuatro minutos, mientras que la Proof-of-Work toma diez minutos para hacer lo mismo. Además, trata de abordar el problema de hash del sistema de PoW. Cuantas más soluciones o planes tenga en su computadora, mayores serán sus posibilidades de ganar la batalla minera.

 

Cómo funciona Proof-of-Capacity Work?

Para comprender la naturaleza misma del teorema del consenso, debes comprender dos conceptos: el plotting y la minería.

Al hacerle plotting al disco duro de tu computadora, básicamente estás creando un “nonce”. Los nonces en el algoritmo Proof-of-Capacity son un poco diferentes de los de Bitcoin. Aquí, tendrá que hashear tu ID y datos hasta que resuelvan los nonces.

Cada uno de los nonces tiene un total de 8,192 hashes agrupados. El número de paquete se conoce de nuevo como las “scoops”. Cada ID puede recibir un total máximo de 4,095 scoops.

El siguiente concepto es la “minería” en el disco duro. Como hemos dicho, puede recibir de 0 a 4,095 scoops a la vez y guardarlas en el disco duro. Se te asignará un plazo mínimo para resolver los problemas. Este plazo también indica el tiempo para crear un bloque.

Si puedes resolver los nonces antes que los otros mineros, obtendrás un bloque como recompensa. Un ejemplo famoso podría ser Burst, que ha adoptado el algoritmo Proof-of-Capacity.

 

Los Pros y Contras de Proof-of-Capacity

La minería en el disco duro es mucho más energéticamente eficiente que la Proof-of-work regular. No tendrá que gastar fortunas para obtener costosas plataformas de minería que hemos visto en el protocolo de Bitcoin. El disco duro de la PC de tu hogar es suficiente para iniciar la extracción en este algoritmo de consenso.

Para decir la verdad, este algoritmo de consenso también tiene algunos inconvenientes graves. Primero, el proceso crea una cantidad masiva de espacios de disco redundantes. El sistema favorecerá a los mineros con unidades de almacenamiento más grandes, lo que supone una amenaza para el concepto descentralizado. Incluso los piratas informáticos podrían explotar el sistema e inyectar malwares de minería en el sistema.

 

Proof-of-Burn

Esta secuencia de consenso es bastante impresionante. Para salvaguardar las criptomoneda de PoW, ¡una parte de las monedas serán quemadas! El proceso ocurre cuando los mineros envían unas pocas monedas a una “Eater Address”. Las Eater Address no pueden gastar estas monedas en ningún propósito. Un registro realiza un seguimiento de las monedas quemadas haciéndolas realmente imposibles de usar. El usuario que quemó las monedas también recibirá una recompensa.

Sí, la quema es una pérdida. Pero el daño es temporal ya que el proceso protegerá las monedas a largo plazo de los piratas informáticos y de sus ataques cibernéticos. Por otra parte, el proceso de quemarlas aumenta las apuestas de las monedas alternativas.

Tal escenario aumenta la posibilidad de que un usuario extraiga el siguiente bloque mientras aumenta sus recompensas en el futuro. Así que, la quema podría ser usada como un privilegio minero. La Counterparty es un excelente ejemplo de consenso de una criptomoneda que utiliza este protocolo de consenso de blockchain.

 

Las Eater Address

Para quemar monedas, los usuarios las envían a las Eater Address. Una Eater Address no tiene ninguna clave privada. Por lo tanto, ningún usuario puede acceder a estas direcciones para gastar las monedas que tienen dentro. Además, estas direcciones se generan de forma aleatoria.

Aunque estas monedas son inaccesibles o “se han ido para siempre (!)”, Se consideran como suministros calculados y se etiquetan como quemadas.

 

Los Pros y Contras del algoritmo Proof-of-Burn

La razón principal detrás de quemar las monedas es crear más estabilidad. Sabemos que los jugadores a largo plazo tienden a mantener monedas durante mucho tiempo para obtener ganancias.

El sistema favorece a los inversionistas a largo plazo al ofrecer una moneda más estable y un compromiso a largo plazo. Además, esto mejora la descentralización y crea una red mejor distribuida.

Pero desde cualquier ángulo que mires el escenario, quemar monedas significa desperdiciarlo! Incluso algunas eater addresses tienen más de $100,000 en Bitcoins. No hay forma de recuperar ese dinero, ¡Son quemadas!

 

Proof-of-Weight

De acuerdo, el protocolo de consenso de Proof-of-Weight está en la última posición de nuestra lista de algoritmos de consenso. Esta es una gran actualización del algoritmo Proof-of-Stake. En el Proof-of-Stake, mientras más fichas tengas, más posibilidades tendrás de conseguir más. Esta idea hace que el sistema sea un poco parcial.

Bueno, el Proof-of-Weight intenta resolver la naturaleza tan parcial de los PoS. Las criptomonedas como Algorand, Filecoin y Chia implementan el PoWeight. El Proof-of-Weight considera algunos otros factores además de poseer más monedas como en PoS.

Estos factores se identifican como los “Factores ponderados”. Por ejemplo, Filecoin considera la cantidad de datos de IPFS que tienes y evalúa ese factor. Algunos de los otros factores incluyen, pero no se limitan, a la Proof-of-Spacetime y la Proof-of-Reputation.

Las ventajas fundamentales de este sistema incluyen personalización y escalabilidad. Aunque incentivar podría ser un gran desafío para este algoritmo de consenso.

 

Comparación Entre Los Algoritmos De Consenso

Algoritmos de consenso Plataforma Blockchain  Lanzado desde Lenguajes de programación Contrato inteligente Pros Cons
PoW Bitcoin 2009 C++ No Menos oportunidades de un ataque de 51%

Mejor seguridad

Gran consumo de energía

Centralización de mineros

PoS NXT 2013 Java Si Ahorro de energía

Mayor descentralización

Problema de nada que perder
DPoS Lisk 2016 JavaScript No Ahorro de energía

Escalable

Seguridad incrementada

Parcialmente centralizado

Ataque de doble gasto

LPoS Waves 2016 Scala Si Uso justo

Arrendar monedas

Problemas de descentralización
PoET Hyperledger Sawtooth 2018 Python, JavaScript, Go, C++, Java, and Rust Si Participación barata Necesidad de hardware especializado

No para blockchain público

PBFT Hyperledger Fabric 2015 JavaScript, Python, Java REST and Go Si Sin necesidad de confirmación

Ahorro de energía

Brecha de comunicación

Ataque Sybil

SBFT Chain 2014 Java, Node, and Ruby No Buena seguridad

Validación por firma

No para blockchain público
DBFT NEO 2016 Python,.NET, Java, C++,  C, Go, Kotlin, JavaScript Si Escalable

Rápido

Conflictos en la cadena
DAG IOTA 2015 Javascript, Rust, Java Go,  and C++ En proceso Red de bajo costo

Escalabilidad

Implementación de gaps

Not suited for smart contracts

POA Decred 2016 Go Si Reduce la probabilidad de un ataque de 51%

Contribución equitativa

Gran consumo de energía

Double firma

PoI NEM 2015 Java, C++XEM Si Vesting

Sociedad de transacción

Problemas de descentralización
PoC Burstcoin 2014 Java Si Barato

Eficiente

Distribuido

Favorece a los peces gordos

Problemas de descentralización

PoB Slimcoin 2014 Python, C++, Shell, JavaScript No Preservación de la red No para inversionistas a corto plazo

Perder monedas

PoWeight Filecoin 2017 SNARK/STARK Si Escalable

Personalizable

Problemas con la incentivación

Capítulo-8: Notas finales

Son los algoritmos de consenso los que hacen que la naturaleza de las redes blockchain sean tan versátiles. Sí, no hay un solo algoritmo de consenso blockchain que pueda afirmar que es perfecto. Pero esa es la belleza de la tecnología que poseemos; el cambio constante para mejorar.

Si estos algoritmos de consenso no estuvieran allí, tendríamos que depender de la Proof-of-Work. Te guste o no, el PoW amenaza la descentralización y la naturaleza distribuida de las blockchains.

Toda la idea de la tecnología blockchain es la descentralización y la lucha contra la monarquía. Ya es hora de que la gente común detenga el sistema corrupto y defectuoso.

¡Estamos esperando ansiosamente los cada vez mejores algoritmos de consenso que cambiarán nuestras vidas para un mejor mañana!