¿Cuál es la diferencia entre prueba de participación y prueba de trabajo?

La red fronteriza de Ethereum actualmente utiliza un algoritmo de consenso de prueba de trabajo (PoW), mientras que una versión futura de la red planea utilizar un algoritmo de prueba de participación (PoS) en su lugar. ¿Cuál es la diferencia entre estos dos tipos de algoritmo?

Esta es una especie de pregunta de prueba, ya que podría encajar en este intercambio de pila o en el intercambio de pila de bitcoin. Tengo curiosidad por ver si consideramos esto dentro o fuera del tema.
Creo que definitivamente está en el tema, la transición de POS es una característica importante de la red

Respuestas (5)

Comencemos por lo que tienen en común: ambos son algoritmos para llegar a un consenso sobre la cadena de bloques.

Sin entrar en demasiados detalles, necesitamos consenso porque cualquiera puede crear un bloque; mientras que solo queremos una cadena única, queremos una forma de decidir en qué bloque debemos confiar.

La prueba de trabajo tiene la buena propiedad de que puedes usar el Teorema de Bayes y las leyes de la Termodinámica para probar que un bloque dado ha requerido una cierta cantidad de trabajo para ser extraído. De esa forma, los usuarios simplemente pueden elegir la cadena válida más larga con la mayor cantidad de trabajo como la cadena correcta.

Pero esto implica que la Prueba de trabajo es extremadamente ineficiente en términos de energía y, por lo tanto, también muy costosa; que incentivan a los mineros a centralizar el poder de hashing, obviamente no deseable para una red cuyo objetivo es minimizar la necesidad de confiar en terceros.

La prueba de participación no se trata de minar, se trata de validar. En efecto, los bloques aún deben ser creados por alguien, y quién puede crear el siguiente bloque depende del algoritmo específico de Prueba de participación, pero el proceso de selección debe tener algún tipo de aleatoriedad, o al menos distribuir las acciones de votación correctamente (de lo contrario, revertimos a un sistema centralizado).

En PoS, cada validador posee alguna participación en la red, ether en el caso de Ethereum, que vinculan . La participación de bonos significa que deposita algo de dinero en la red y, en cierto sentido, lo usa como garantía para garantizar un bloque. En PoW, sabe que una cadena es válida porque hay mucho trabajo detrás de ella, mientras que en PoS confía en la cadena con la garantía más alta.

Existen diferencias importantes entre los diversos algoritmos de prueba de participación que se están desarrollando. Esta pregunta es sobre PoW vs. PoS, así que mantengo la respuesta muy general.

Ethereum va a utilizar Casper, donde la apuesta de los validadores maliciosos se reducirá (parcialmente), por ejemplo, si firman dos bloques (en competencia) con una probabilidad demasiado alta.

¿Tiene un enlace para leer más sobre los algoritmos PoS que se están desarrollando?
@deadalnix: Sí. Puede encontrarlo en vitalik.ca/files/mauve_paper.html
Este enlace no funciona.
@Himanshusharma El enlace está caído ahora, lo siento.
Nuevo enlace al Mauve Paper: cdn.hackaday.io/files/10879465447136/…

El objetivo de un algoritmo de consenso en una red pública de blockchain es permitir que muchos usuarios diferentes acuerden el estado actual de la blockchain, aunque no confíen entre sí ni en ninguna autoridad central. Este es un problema desafiante, y hasta que se lanzó la red Bitcoin, no se había resuelto.

La solución de Bitcoin fue usar algo llamado Prueba de trabajo (o "minería" o "hashing") , donde los usuarios participantes trabajaban para resolver problemas matemáticos difíciles y luego publicaban las soluciones. Debido a que se necesitan recursos del mundo real, como computadoras y electricidad, para encontrar estas soluciones, no hay forma de "hacer trampa" y pretender que usted representa una porción más grande del poder minero en la red de lo que realmente representa. Como resultado, los algoritmos de PoW pueden usar el número y la dificultad de las soluciones que se encuentran para medir cuánto de la red está de acuerdo con el estado actual de la cadena de bloques.. La única forma de evitar que los usuarios legítimos lleguen a un acuerdo sobre el estado de la cadena de bloques es controlar lo suficiente de la potencia informática total para que pueda fingir que el grupo no está de acuerdo consigo mismo, o incluso que su opinión es el verdadero consenso y todo lo demás. los usuarios mienten sobre el estado de la cadena de bloques. Ese requerimiento de recursos es algo bueno , porque significa que interferir con el consenso del grupo requiere muchos recursos (también conocido como dinero).

Desafortunadamente, los algoritmos de consenso de PoW, tal como los conocemos actualmente, requieren un gasto constante y continuo de recursos solo para funcionar normalmente. El trabajo tiene que hacerse sin importar si alguien está tratando de interferir o no , y alguien tiene que pagar por ello. La mayoría de las cadenas de bloques PoW existentes, como Bitcoin, pagan estos costos con la creación de monedas previamente acordada, también conocida como inflación. Este salario tiene que ser repartido ya sea que alguien esté atacando o no, lo que parece bastante ineficiente. Motivados por esta y otras consideraciones, se propuso una nueva solución al problema del consenso descentralizado , denominada Proof of Stake.

En este nuevo algoritmo, la concordancia dentro de la cadena de bloques no se mediría en función de la cantidad de poder de cómputo que concuerde con el estado actual, sino en función de la cantidad de moneda digital que concuerde con el estado actual . Los propietarios de esta moneda digital tienen una participación financiera en el éxito de la cadena de bloques que la rastrea, de ahí el nombre del algoritmo.

..sería muy interesante si pudiera ampliar el aspecto de "cuánta moneda digital concuerda con el estado actual" ya que a primera vista esto parece apuntar hacia otra forma de centralización..

Versión corta: POW requiere que los mineros o la computadora física se enciendan y procesen la transacción. Esto puede ser ineficiente ya que se crean y optimizan mejores computadoras para la minería, lo que puede conducir a una centralización como bitcoin. Bitcoin puede ser visto como centralizado en China por un pequeño grupo de personas que tienen el poder de minería, que puede ser superior al 51%.

POS es más ecológico y no requiere energía. Básicamente, debe bloquear sus monedas/fichas para extraer o procesar transacciones. Actualmente, también hay problemas con el POS, como que un pequeño grupo de personas que poseen la mayoría de tokens/monedas pueden duplicar el gasto. También está el problema de nada en riesgo que dice que si hay una bifurcación, puede continuar en ambas bifurcaciones hasta que una muera. Creo que Vitalik y Vlad pueden haber encontrado una solución de CBB (consenso por apuesta). Leer más aquí:

https://blog.ethereum.org/2015/12/28/understanding-serenity-part-2-casper/

Es incorrecto decir que PoS no requiere energía, ya que las computadoras aún deben encenderse con la mayor frecuencia posible.
@Symeof de hecho. pero el 0,01% del consumo sigue siendo un buen progreso.
@v.oddou: Definitivamente va a ser una mejora. Pero, ¿cómo se te ocurrió ese número?
número superior completo de mi cabeza, no lo tome en serio :) sin embargo, ya no hay necesidad de ejecutar miles de millones de nonces. un raspberry pi puede probar un árbol de merkel, ¿entonces 1 vatio durante unos segundos en comparación con un megavatio durante 10 minutos para un bloque PoW?

the_truth= Estructura de datos acordada (Bloque) que contiene el estado futuro válido de la máquina virtual ethereum (e información relacionada) según lo calculé utilizando las reglas establecidas en el papel amarillo.

rand= número aleatorio de 8 bytes

Prueba de trabajo:

Haré una carrera para encontrar el valor hash de the_truth+ randque sea menor que el nivel de dificultad acordado, premio para el ganador.

Cuando alguien gane, comprobaré que estoy de acuerdo, luego calcularé una nueva versión the_truthy comenzaré una nueva carrera.

Prueba de participación:

Apuesto a que ese the_truthserá el estado futuro acordado de la máquina virtual ethereum

Prueba de trabajo (PoW) y Prueba de participación (PoS) son los dos protocolos que tienen el mismo propósito y el propósito es establecer un consenso sobre la cadena de bloques, es decir, queremos estar de acuerdo en un cierto estado de la cadena de bloques o todos los nodos deben estar de acuerdo en un cierto estado de la cadena de bloques. Entonces, muchachos, cuando se produce un bloque, debe agregarse a la cadena de bloques y todos los mineros intentan extraerlo. Déjame aclararlo.

Cuando llega un bloque, hacemos un hash de todas las transacciones en el bloque y obtenemos un hash de esas transacciones, luego necesitamos encontrar pruebas o en la cadena de bloques se llama "nonce (bits aleatorios)". Una vez más, desde el principio, los mineros reciben el hash del nuevo bloque con transacciones y necesitan encontrar la otra parte (Prueba o nonce), de modo que cuando agregan esos dos juntos en una cadena y después de codificar esta cadena, deben recibir una respuesta y el los mineros saben lo que buscan y esta respuesta es de conocimiento público.

En la cadena de bloques de bitcoin, la cadena de la respuesta que es un hash, debe comenzar con una cierta cantidad de ceros y todos los mineros lo saben. Todo el desafío es encontrar el nonce y es muy difícil encontrar el nonce correcto, por lo que los mineros prueban diferentes nonce diferentes con el hash del bloque para encontrar el nonce correcto, ven su nuevo hash que comienza con cierta cantidad de ceros y si no encuentran ceros al comenzar, nuevamente intentan un nuevo nonce diferente. Intentan esto una y otra vez para encontrar la respuesta correcta. Toma mucho tiempo antes de que un minero encuentre el nonce correcto para obtener la respuesta correcta.

Es costoso e ineficiente porque millones de máquinas utilizan electricidad para encontrar ese nonce.

Esta fue la explicación de la Prueba de Trabajo ...espero que lo hayas entendido. Pasemos a la prueba de participación .

Es como PoW, sin embargo, intenta eliminar los problemas relacionados con las CPU y las GPU. En PoS, el minero que tenga la mayor cantidad de dinero en la billetera tendrá más probabilidades de extraer los nuevos bloques y ya no se llamará minería. En vez de contar CPUs o GPUs o cuanto dinero has gastado en hardware, cuenta el dinero que tienes en blockchain o en tu monedero y esto se hace porque el sistema piensa que cuando tienes mucho dinero en blockchain eres menos. Es probable que dañe la red y extraiga los bloques falsos y, si extrae bloques falsos, disminuirá el valor de su dinero en la cadena de bloques. En este, la persona con más dinero en la cadena de bloques podrá minar el nuevo bloque.

Ethereum está tratando de activar PoS con su nuevo protocolo PoS llamado Casper, es una función que establece que el validador malicioso (en el caso de PoS, el minero se llama validador) que valida el bloque perderá dinero si valida un malicioso. bloque que no es correcto.

Creo que ahora está bastante claro b/w PoW y PoS. Quiero agregar más. En PoS, cuando un validador valida un algoritmo o bloque, simplemente pone algo de dinero o apuesta para validar ese bloque, no puede recuperarlo hasta que se valide el bloque o puede perder el dinero que se pone para resolver ese bloque, si validas un bloque falso en la actualización de casper.