Prueba de participación

De Wikipedia, la enciclopedia libre
Saltar a: navegación, búsqueda

Un algoritmo de prueba de participación, también conocido por las siglas PoS (del inglés Proof-of-Stake), es un protocolo de consenso distribuido para redes distribuidas que asegura una red de una criptomoneda mediante la petición de pruebas de posesión de dichas monedas. Con PoS la probabilidad de encontrar un bloque de transacciones - y recibir el premio correspondiente - es directamente proporcional a la cantidad de monedas que uno tiene acumuladas (evitando así que la confianza venga dada por la cantidad de trabajo invertida)[1]

Es un sistema diferente al usado en la primera y más conocidas de las criptomonedas, el Bitcoin, para validar transacciones electrónicas, el cual usa el sistema de prueba de trabajo.

Se basan en la suposición de que quienes poseen más unidades de una moneda basada en PoS están especialmente interesados en la supervivencia y el buen funcionamiento de la red que otorga valor a dichas monedas y por tanto son ellos los más indicados para cargar con la responsabilidad de proteger al sistema de posibles ataques. Es por eso que el protocolo los premia con una menor dificultad para encontrar bloques (es inversamente proporcional al número de monedas que demuestren poseer).[1]

Estrategias[editar]

Peercoin, lanzado en 2012, fue la primera criptomoneda que usaba prueba de participación. Realmente era un algoritmo híbrido entre prueba de trabajo y prueba de participación en la que la participación es dada por las monedas-día o, en inglés coin-age del minero. Por eso a veces se le llama prueba de monedas-día o en inglés proof-of-coin-age. Las monedas días es una medida de las monedas que posee y el número de días que está en el monedero. Para minar un bloque en Peercoin un minero tiene que resolver un problema SHA-256 similar al de Bitcoin. Sin embargo, la dificultad del problema a resolver será bajada basándose en la cantidad de coin-age que está dispuesto a gastar. Para implementarlo el bloque incluye una transacción especial coinstake en la cual se gastan coin-age. Los coin-ages cosumidos en la trasacción coinstake decide como de difícil es la prueba de trabajo. El objetivo de todo esto es asegurar que el proceso de minado es aleatorio y no depende mayormente del poder computacional del minero.[2] [3]

Posteriormente se han desarrollado otras formas de algoritmos de prueba de participación como:[3]

  • Prueba de participación pura: Consiste en simplemente hacer la construcción de bloques más fácil para aquellos que pueden mostar que contralan una gran cantidad de moneda. Es similara a como actúa Peercoin solo que la age no se tiene en cuenta. las desventaja de este enfoque es que, a diferencia de Peercoin en el cual se gasta la coin-age después de construir un bloque, el más rico siempre tiene más facilidad para construir las pruebas los bloques de la cadena
  • Prueba de depósito o en inglés Proof-of-deposit: En este enfoque cuando las monedas son usadas por los creadores de bloques para crear un bloque, son congeladas hasta que que se confirmen cierta cantidad de bloques. Esto es similar a la que se hace con las coin-age: En lugar de recompensar a un minero por almacenar monedas que no han sido gastado durante un largo tiempo en el pasado, el sistema recompensa a los mineros que están dispuestos a tener monedas inmovilidad durante largo tiempo en el futuro.

Problemas[editar]

Los algoritmos de prueba de participación son un área activa de investigación y se tienen una serie de problemas. ​

Problema de nada en juego[editar]

El problema de nada en juego, en inglés nothing-at-stake o también stake-grinding consiste en que realmente confirmar bloques, salvo la consideración de que están dañando el sistema del que son participantes, no tiene ningún coste real por lo que no se incentiva el consenso. Veamos un ejemplo:[3]

Supongamos que un atacante con una proporción de monedas inferior al 50% intenta crear una cadena alternativa de k bloques. Este ataque fallará con una probabilidad que crece exponencialmente con k. En la minería de prueba de trabajo un ataque fallido tiene un coste significativo porque el minero podría haber ganado las recompensas al minar en lugar de malgastar los recursos en el ataque fallido. Sin embargo en este tipo de algoritmos el coste no existe. Un minero puede usar su participación para minar en la actual cadena más larga mientras simultáneamente intenta crear una bifurcación de la cadena. Si su cadena alternativa tiene éxito habrá consumido una cantidad grande de su participación. Si falla, el registro de su intento fallido no será reflejada en la cadena más larga. Una actuación racional de un minero podría ser constantemente intentar hacer una bifurcación de la cadena

​ Se han hecho varios intentos para solucionar este problema. La mayoría de esquemas utilizan puntos de control para prevenir bifurcaciones largas lo cual es una pequeña amenaza a considerarse un protocolo de consenso descentralizado. Ethereum a propuesto una técnica a la que llama Slasher que permite el castigo a los mineros que intenten bifurcar la cadena.[3]

Exposición de las monedas[editar]

Con PoS la probabilidad de encontrar un bloque de transacciones es directamente proporcional a la cantidad de monedas que uno tiene acumuladas, lo cual en primera instancia implica que el monedero esté conectado a la red, lo cual a su vez implica que el monedero está expuesto a posibles problemas de seguridad.[1] Para intentar evitar este problema se ha desarrollado una variante del protocolo a la que se llama prueba de participación delegada, también conocido por las siglas DPoS (del inglés Delegated Proof of Stake).[4] En esta variante se permite que los nodos propietarios de monedas deleguen sus privilegios para construir nuevos bloques en un nuevo tipo de nodos llamados representantes. Ejemplo de sistema usando este algoritmo es BitShares.[4]

Ahorrar para atacar[editar]

En algunos sistemas que usan PoS es posible ahorrar derechos para conseguir mucho poder de minado para poder introducir una bifurcación de la cadena. Esto es posible incluso se usan sistemas como Slasher para desalentar las bifurcaciones. Para evitar este tipo de ataques Peercoin limita el parámetro edad a 90 días cuando calcula los coin-age.[3]

Ataque del 51%[editar]

Si un minero obtiene el 51% de la factor de participación, entonces puede mantenerlo para siempre minando encima de sus propio bloques, tomando de esta forma el control de la cadena. Incluso si un participante emergiera, minando recompensas y transacciones, el minero del 51% obtendrá esta nueva participación y lentamente se aproximará hasta llegar al 100%. En el minado por prueba de trabajo, incluso si existiera un minero con el 51% siempre sería posible que algún nuevo minero pudiera emerger con más equipamiento de minería y energía y reducir la mayoría del minero del 51%. Con PoS es mucho más difícil evitar este problema.[3]

Análisis[editar]

Ventajas:

  • Se puede llegar a tener un grado de seguridad equivalente al obtenido con POW pero con un gasto energético menor y prescienciendo de los pools y de la carrera tecnológica del sector minero

Desventajas:

  • Mantener el monedero offline es contraproducente para la seguridad de la red.
  • Dejar el monedero offline es exponerlo a problemas de seguridad
  • Como los fondos que protegen están asociados a una dirección IP, es más difícil mantener el anonimato.
  • Demasiado poder para los mayores propietarios de monedas


Ejemplos[editar]

Es usado en distintas criptomonedas como por ejemplo:


Véase también[editar]

Referencias[editar]

  1. a b c Prueba de trabajo, prueba de participación – ventajas y desventajas. Majamalu el 27 enero, 2014 en Economía, Minería, Opinión
  2. Proof-of-Work vs Proof-of-Stake, 31-8-2014
  3. a b c d e f Bitcoin and Cryptocurrency Technologies. Chapter 8 Arvind Narayanan, Joseph Bonneau, Edward Felten, Andrew Miller, Steven Goldfeder. 25 de agosto 2015
  4. a b Delegated Proof-of-Stake (DPOS). Daniel Larimer. 3 de abril de 2014