¿Cuáles son los problemas abiertos con el algoritmo de prueba de participación de Casper?

Ethereum planea pasar al algoritmo de prueba de participación de Casper en una versión futura llamada Serenity. Hay un comentario de que los "mecanismos básicos de Casper están bastante consolidados ahora".

¿Cuáles son los detalles del algoritmo de Casper que aún no se han especificado? ¿Cuáles son los problemas abiertos y las incógnitas conocidas sobre Casper, en orden aproximado de importancia?

La última investigación de Casper y otras investigaciones está en ethresear.ch

Respuestas (4)

Actualización de marzo/abril de 2017 de Vitalik Buterin sobre Casper

Retransmitido por Jim Manning en Eth News

Todavía tengo que terminar:

(1) Completar el código del contrato CASPER (3/4 hecho).

El 25% restante por implementar es:

  • Un mecanismo de número de secuencia en los mensajes (necesario para verificar completamente las condiciones de corte)

  • Cambiar de verificar firmas ECDSA a verificar código de validación arbitrario

(2) completar la lógica del demonio del validador (en progreso)

El demonio del validador sería un programa que se ejecuta fuera de la cadena (no en la cadena de bloques, sino en la máquina de un usuario) que interactúa con el contrato de Casper para que un nodo sepa cuándo enviar los mensajes adecuados (se puede ver más sobre los mensajes de preparación/confirmación). aquí) para validar un bloque.

(3) completando la regla de elección de horquilla (en progreso)

La regla de elección de bifurcación será una pieza de código que cada nodo está ejecutando para determinar bajo qué condiciones exactas se realizará la cadena canónica (más larga). Esto es para asegurar que un nodo apueste por la cadena ganadora. Si un nodo apuesta por una cadena falsa (maliciosa), ese nodo (validador) pierde su depósito. Este es un aspecto muy importante para asegurar una red blockchain, ya que es donde se determina el consenso sobre qué blockchain es la cadena canónica.

(4) La cuestión del tamaño mínimo de los depósitos del validador. es decir, "¿cuánto ETH tengo que apostar para compensar los costos de gas (tarifas de transacción) de enviar mensajes de preparación/compromiso y obtener una ganancia?"

Respuesta de VB:

Este es un tema complicado. Aquí hay un mínimo implícito porque tienes que pagar gasolina para preparar/comprometerte, por lo que en conjunto no es rentable a menos que deposites al menos 1000-4000 ETH. Una posibilidad en la que estamos pensando es en etapas posteriores aplicar un descuento específicamente para la ejecución asociada con este contrato, pero aún no está ni cerca de finalizarse.

Todo extraído de este artículo del 5 de abril de 2017 de Jim Manning: https://www.ethnews.com/proof-of-stake-vitalik-buterin-shares-casper-contract-code

Crédito: @Vitalik en la sala de chat Gitter de Ethereum Research :

Al 11 de enero de 2016:

  1. ¿Cómo deben establecerse las recompensas y penalizaciones de las apuestas (más precisamente, los parámetros para la regla de puntuación) para CASPER?
  2. ¿Cuántos validadores debe tener CASPER? Dado este valor, ¿cómo debemos apuntarlo?
  3. ¿Cuál es un buen nivel objetivo de participación (como en % de todos los ETH apostados)? ¿Cómo debemos apuntar a este valor?

Para (1) y (3), tenga en cuenta las preocupaciones de minería egoísta; básicamente, desea intentar que la validación NO sea un juego de suma cero para mitigar el riesgo de tales estrategias.

  1. ¿Cómo se debe implementar exactamente la fragmentación desde el punto de vista de la estructura de datos (cantidad fija de fragmentos, cantidad variable de fragmentos, el esquema binario que Vitalik presentó en devcon, etc.)? ¿Debería haber fragmentación a nivel de subcontrato? Mientras piensa en esto, tenga en cuenta el caso de uso objetivo de un desarrollador que intenta crear un token criptográfico escalable en un HLL además de este esquema.
  2. ¿Cómo se deben validar los grupos de transacciones? (por ejemplo, qué tipo de esquema de muestreo aleatorio)

Los problemas actuales son... si realmente funcionará o no. Básicamente, el algoritmo puede reducirse a actuar como un mercado de predicción. Esto debería funcionar en teoría, pero si funciona en la práctica en la realidad es otra cuestión. Pero sabremos más una vez que esté en la red de prueba. Hasta entonces, no hay mucho que criticar, ya que todavía se está desarrollando.

Actualización de noviembre de 2017 (posterior a Devcon3):

Completo

  • Casper Friendly Finality Gadget ("Casper de Vitalik") Especificación y código PoC
  • Papel de prueba de seguridad Casper The Friendly GHOST ("Vlad's Casper") y código PoC

En progreso

  • Red de prueba Casper FFG (pyethapp/pyethereum)
  • Criptoeconomía Casper FFG (optimización de parámetros)
  • Proponedor de bloques Capser FFG
  • Prueba de vida Casper TFG

Casper FFG se implementará antes que Casper TFG.