PoS

From TON Wiki (Es)

Proof of Stake (PoS) es uno de los mecanismos de logro del consenso en las redes blockchain que se utiliza para verificar las transacciones en la red. Este mecanismo implica la verificación de los bloques creados por participantes especiales de la red. Se llaman validadores, ellos registran sus fondos (se trata del staking) para demostrar su buena fe e interés.

Mecanismo de trabajo

El concepto general del mecanismo Proof of Stake incluye los principios siguientes:

  1. Los validadores congelan parte de sus fondos realizando una transacción especial; esto se llama staking y garantiza la responsabilidad del validador en caso de deshonestidad o incumplimiento de sus obligaciones;
  2. Selección del creador de bloques: para uno o varios bloques posteriores en la red, se selecciona un validador para crearlos. El resultado de la elección siempre depende de la cantidad de monedas del validador que se encuentran en el staking, pero solo en parte. Las diferentes variaciones del mecanismo Proof of Stake ofrecen diferentes reglas de selección; esto es necesario para garantizar la descentralización y eliminar la situación en la que la validación de las transacciones y el funcionamiento de la red dependan de un validador más grande;
  3. Los validadores restantes verifican la exactitud del bloque y lo confirman, después de lo cual se realiza el registro en la cadena de bloques;
  4. Los validadores reciben una recompensa por su trabajo. La reciben en forma de cierta parte de la comisión de las transacciones registradas en el bloque, así como, en algunas redes, las monedas nuevas.
  5. En caso de cumplimiento deshonesto de sus obligaciones, los validadores pueden estar sujetos a una multa, al bloqueo total de fondos o a la suspensión de la validación de bloques.

Existen variaciones diferentes del mecanismo PoS, a continuación se muestran algunas de ellas:

  1. Delegated Proof-of-Stake (DPoS). En este mecanismo, los miembros de la red seleccionan delegados para administrar la cadena de bloques. Cada participante puede votar con sus tokens por un delegado específico. El delegado con la mayor cantidad de tokens puede confirmar el bloque y recibir la comisión de la transacción correspondiente como recompensa. Luego el delegado distribuye las recompensas del staking a los usuarios en función de la apuesta de cada usuario.
  2. Leased Proof-of-Stake (LPoS). Este mecanismo es similar al DPoS, pero en lugar de votar, los participantes pueden arrendar sus tokens a otros participantes que crearán bloques de su nombre. Esto hace posible recibir recompensas por apoyar la red sin tener que crear bloques usted mismo.
  3. Bonded Proof-of-Stake (BPoS). En este mecanismo los participantes deben depositar una garantía en forma de una cierta cantidad de tokens para poder crear bloques, y los usuarios que eligen a ese delegado pierden los fondos que fueron destinados a la selección del delegado. Esto asegura que los usuarios sean más conscientes y responsables a la hora de elegir su delegado validador. Nominated Proof-of-Stake (NPoS). En este mecanismo, el nominador ( el usuario) puede seleccionar validadores que crearán bloques de su nombre. Además, igual que en el BPoS, aquí se otorga la responsabilidad a los usuarios que eligen un validador sin escrúpulos: su recompensa se reduce. Esto permite distribuir la responsabilidad por crear los bloques entre los participantes y aumentar la descentralización del sistema.
  4. Pure Proof-of-Stake (PPoS). En este mecanismo cada participante tiene las mismas posibilidades de crear un bloque, independientemente de la cantidad de tokens que tenga. Esto garantiza la máxima descentralización y equidad del sistema. Proof-of-Stake Velocity (PoSV). Este mecanismo tiene en cuenta no solo la cantidad de tokens que posee el participante, sino también la velocidad de su rotación. Cuantos más tokens participen en las transacciones, mayor será la probabilidad de que este participante cree los bloques. Esto incentiva a los usuarios a realizar las transacciones, mejorando así la eficiencia de la red.
  5. Protocolo de consenso DBFT. Este mecanismo es una combinación de Proof of Stake y un algoritmo de consenso que permite a los participantes de la red llegar a un acuerdo sobre el estado de la cadena de bloques, incluso en presencia de nodos no confiables. DBFT proporciona un alto grado de seguridad y confiabilidad de la red al requerir la validación del bloque por el 66 por ciento de los validadores.

Ventajas y desventajas de Proof-of-Stake

Ventajas de Proof of Stake:·

  • Eficiencia energética: PoS no necesita mucho gasto de energía, ya que no se requieren cálculos complejos. Esto lo hace más ecológico y económico en comparación con el PoW.
  • Velocidad: el proceso de verificación de las transacciones y creación de bloques nuevos es más rápido en los sistemas basados en PoS, ya que no es necesario esperar a que se resuelvan tareas matemáticas complejas.
  • Seguridad: PoS se considera más seguro que PoW, ya que los atacantes deberían controlar una parte significativa de la participación en el sistema para poder interrumpir su funcionamiento. Además, la mayoría de los sistemas basados en PoS tienen mecanismos de protección contra los ataques del 51%.
  • Reducción de la centralización: en los sistemas basados en PoS, cada participante tiene la misma oportunidad de verificar las transacciones y crear bloques nuevos, lo que reduce la posibilidad de centralización del poder.

Desventajas de Proof of stake:

  • Riesgo de concentración de participación: si una pequeña cantidad de participantes controla la mayor parte de la participación en el sistema, ellos pueden abusar de su poder e influir en los resultados de la verificación de transacciones y en la creación de bloques nuevos.
  • Opacidad: en los sistemas basados en PoS es difícil determinar qué participantes participan en el proceso de validación de transacciones y en la creación de bloques nuevos.

PoS en TON

La cadena de bloques TON utiliza el enfoque Proof-of-Stake (PoS) para generar nuevos bloques en las cadenas de fragmentos (chardchain) y masterchein. El enfoque es implementado por un conjunto de validadores que apuestan mediante una transacción especial de masterchain para tener derecho a generar y validar un bloque nuevo.

Luego un subconjunto más pequeño de validadores se asigna a cada fragmento de forma pseudoaleatoria y determinista, rotando aproximadamente cada 1024 bloques. Este subconjunto de validadores propone y llega a un consenso sobre cuál será el próximo bloque de la cadena fragmentada mediante la recopilación de las transacciones propuestas por los clientes en los nuevos bloques candidatos válidos. Existe un orden pseudoaleatorio para determinar qué bloque candidato tiene la mayor prioridad para comprometerse en cada turno.

Los validadores y otros nodos verifican la validez de los bloques candidatos propuestos; si un validador firma a un candidato a registrarse no válido, puede ser penalizado automáticamente con la pérdida de parte o la totalidad de su apuesta o la suspensión del conjunto de validadores por un tiempo. Luego, los validadores deben llegar a un consenso para confirmar el siguiente bloque utilizando una variante eficiente del protocolo de consenso BFT (Byzantine Fault Tolerant), similar a PBFT o Honey Badger BFT. Si se llega a un consenso, se crea un nuevo bloque y los validadores dividen las comisiones de las transacciones incluidas en él, más obtienen algunas monedas recién creadas ("acuñadas").

Cada validador puede seleccionarse para participar en múltiples subconjuntos de validadores; en este caso, se espera que todos los algoritmos de validación y consenso se ejecuten en paralelo. Después de que se hayan generado todos los bloques nuevos de la cadena de fragmentos o de que haya expirado el tiempo de espera, se genera un nuevo bloque masterchain, que incluye los hashes de los últimos bloques de todas las cadenas de fragmentos. Esto se hace sobre la base del consenso de todos los validadores de BFT.

Enlaces

  1. Full Node
  2. Chain-based Proof of Stake
  3. ¿Qué es Proof of Stake (PoS)?
  4. Catchain Consensus: An Outline