Blockchain/Nivel VI · Después de bitcoin/6.2 La era de las altcoins/Lección 4
Peercoin y prueba de participación
Edad de la moneda, el stake que vota y los forks que siguen
MaterialesUna copia del libro blanco de PPCoin“Prueba de participación: Cómo aprendí a amar la subjetividad débil” de Buterin (2014)Una hoja de cálculo para hacer un seguimiento de los cálculos de la antigüedad de las monedas
Curiosidad
- ¿Por qué una red recompensaría la tenencia de monedas en lugar de quemar electricidad?
- ¿Cómo puede un atacante reescribir la historia a partir de claves que tenía hace diez años sin invertir nuevos recursos?
- ¿Qué impide que un validador firme dos bloques diferentes al mismo tiempo?
Explorar
- La prueba de participación se discutió por primera vez en el foro de Bitcoin en 2011; la primera versión funcional provino del desarrollador pseudónimo Sunny King y Scott Nadal, cuyo PPCoin utilizaba la “edad de la moneda” para seleccionar a los productores de bloques. Bajo este modelo, las salidas de transacciones no gastadas (UTXOs) acumulaban peso simplemente por existir en la cadena. Cuanto más tiempo una moneda permanecía sin ser utilizada en una billetera, mayor era su probabilidad de ser elegida para crear el siguiente bloque, vinculando así los derechos de consenso directamente al comportamiento de tenencia a largo plazo y no al poder computacional.
- PPCoin, posteriormente rebautizado como Peercoin, se lanzó en agosto de 2012 como un sistema híbrido: la prueba de trabajo generaba nuevas monedas, mientras que los bloques basados en la prueba de participación, que recompensaban alrededor del 1% anual por las monedas puestas en juego, aportaban gran parte de la seguridad. Durante años también dependió de puntos de control firmados de forma centralizada por sus desarrolladores, una medida de protección que los críticos consideraron un punto de control.
- Los análisis iniciales revelaron una vulnerabilidad crítica conocida como 'nothing at stake'. Dado que forjar bloques no requería recursos físicos además de la compra inicial de monedas, los validadores podían respaldar a bajo costo múltiples forks competidores de la cadena. Si un atacante poseía un stake significativo, podría firmar bloques válidos en ambos lados de una división, generando ambigüedad sobre cuál historia era la canónica sin incurrir en ningún costo marginal por el trabajo adicional.
- Esto generó el problema de los ataques a larga distancia. Un adversario que obtuviera claves privadas antiguas de años atrás podría, en teoría, reescribir toda la historia de la cadena a partir de ese momento. Dado que no se requería ningún cálculo adicional para validar esos bloques históricos, un nodo que se sincronizara desde cero podría aceptar la versión del atacante si parecía matemáticamente válida, lo que socavaría la finalidad de las transacciones que se habían resuelto meses o años antes.
- Vitalik Buterin abordó este problema en 2014 al introducir la “subjetividad débil”. Los nuevos nodos que se unen a la red deben confiar en un punto de control reciente proporcionado por los participantes existentes. Al acordar una altura de bloque específica como punto de partida para la validación, la red evita ataques a largo plazo que dependan de reescribir la historia anterior a dicho punto de control. Este compromiso introduce una dependencia de pares de confianza durante la sincronización inicial, pero protege contra la manipulación histórica.
- Diseños posteriores añadieron mecanismos de slashing para sancionar el mal comportamiento. Si un validador firmaba bloques contradictorios o actuaba de forma maliciosa, sus monedas en stake eran confiscadas. Nxt se lanzó en 2013 como una de las primeras cadenas puramente basadas en prueba de participación, eliminando por completo el elemento híbrido. Estos desarrollos establecieron los parámetros fundamentales para el consenso moderno basado en stake: las sanciones económicas garantizan la honestidad, mientras que la subjetividad débil gestiona la confianza durante el arranque de la red.
Datos clave
- Peercoin se lanzó en agosto de 2012 utilizando un modelo híbrido de prueba de trabajo y prueba de participación.
- La prueba de participación elige a los productores de bloques en función del valor de las monedas bloqueadas, y no del cálculo realizado.
- “Nothing at stake” permite a los validadores apoyar múltiples bifurcaciones con un costo insignificante.
- Los ataques a largo alcance explotan claves antiguas para reescribir la historia de la cadena sin gastar nuevos recursos.
- La ‘subjetividad débil’ requiere que los nuevos nodos confíen en un punto de control reciente para evitar reescrituras históricas.
- Más tarde se añadieron penalizaciones por slashing para confiscar los stakes de los validadores que firman bloques contradictorios.
Ejercicio nueve, seis, tres, uno
9ReunirEnumera 9 mecanismos o parámetros de consenso utilizados en las primeras altcoins (2011-2015). Indica la regla específica para la selección de bloques y cualquier estructura de penalizaciones.
6AgruparAgrupa los 9 en 6 según la forma en que gestionaron la honestidad de los validadores: sin penalizaciones, slashing, arranque híbrido, stake puro, basado en trabajo u otros.
3DestilarReduce los 6 a 3 riesgos fundamentales que la prueba de participación pura debe mitigar en comparación con la prueba de trabajo.
1CristalizarEscribe 1 oración sobre por qué poseer capital crea una estructura de incentivos diferente a la de consumir energía.
Verificación de hechos
Fechas, cifras y afirmaciones verificadas con las fuentes publicadas que se enumeran a continuación.
- S. King & S. Nadal, 'PPCoin: Peer-to-Peer Crypto-Currency with Proof-of-Stake' (2012)
- V. Buterin, 'Proof of Stake: How I Learned to Love Weak Subjectivity' (2014)
- Nxt documentation and release notes (2013)