Título: «Entendiendo el ciclo de vida del validador» por Jim McDonald

Compilador: Juan

Comprender el ciclo de vida de un validador

Ethereum 2.0 utiliza prueba de participación para garantizar la seguridad de su red. Los procesos informáticos llamados "validadores" votarán por el siguiente bloque a empaquetar (en lo sucesivo, "testigos") y también se propondrán permitir que los bloques se empaqueten. en. Sin embargo, los validadores no sólo están "encendidos" y "apagados": realizan una serie de transacciones durante su vida. Este artículo proporcionará un análisis en profundidad del ciclo de vida de un validador, mostrando lo que sucede durante cada estado y transición de estado, qué desencadena la transición de estado y el tiempo requerido para cada transición de estado (Nota 1).

un símbolo del tiempo

En Ethereum 2.0, el tiempo normalmente se mide en épocas. Una época consta de 384 segundos, que son aproximadamente 6 minutos y medio. Para facilitar la comprensión, el tiempo medido de esta manera se traduce aproximadamente en minutos, horas y días, con las correspondientes notas a pie de página cuando se dispone de información precisa.

Descripción general del ciclo de vida

Antes de profundizar en los detalles, echemos un vistazo a una descripción general del ciclo de vida de un validador y los términos utilizados para describir sus diferentes estados.

Figura 1: descripción general del ciclo de vida del validador

Aquí están las etiquetas de estado:

Depositado: el protocolo de depósito ha sido aceptado por la red Ethereum 1.0 Pendiente: el protocolo de depósito ha sido aceptado por la red Ethereum 2.0 Activo: los validadores están presenciando y proponiendo bloques Salida: los validadores están abortando El proceso de presenciar y proponer bloques se está perdiendo - el validador fue sorprendido haciendo trampa y está en el proceso de abortar la testificación y proponiendo bloqueos y ha salido - el validador ya no participa en la testificación

También se define un metaestado: Testigo, es decir, el estado en el que todos los validadores deben participar para presenciar y proponer bloques (activo, saliendo y cortando). Este estado es importante porque los validadores en estos estados necesitan acceder a la red Ethereum 2.0 para mantenerse al día con sus responsabilidades y evitar ser penalizados.

Diagrama 2: Metaestado del testigo

Después de definir estos estados es hora de analizar cada estado y las transacciones entre ellos en detalle.

Estado depositado

Aceptar el protocolo de depósito es el comienzo del ciclo de vida del validador. La aceptación ocurre en la cadena Ethereum 1.0 porque de ahí provienen los fondos del validador. En este momento la cadena Ethereum 2.0 no tiene conocimiento de este depósito.

Los validadores permanecerán en este estado de depósito durante aproximadamente 7 horas y media (Nota 2) para garantizar que no habrá una reorganización de la cadena que afecte las transacciones de Ethereum 1.0 y potencialmente invalide el protocolo de depósito. Luego de esto, el verificador pasará al estado pendiente (Nota 3).

Diagrama 3: Transición del estado depositado al estado listo Estado pendiente

Una vez que el depósito haya existido en la cadena Ethereum 1.0 durante el tiempo suficiente, se agregará a la cadena Ethereum 2.0. Esto marca que este validador ha sido reconocido oficialmente por Ethereum 2.0. Si se han depositado al menos 32 ETH (nota 4), el validador ahora estará listo para comenzar a testificar.

Los validadores en preparación se colocarán en una cola: Ethereum 2.0 solo permite que un pequeño número de validadores inicien o detengan la verificación a la vez (Nota 5) para garantizar que el conjunto de validadores sea estable. Si la cola está vacía, el validador en preparación se activará después de aproximadamente 25 minutos (Nota 6): si este es un período muy ocupado, pueden pasar días o incluso semanas antes de que se active el validador. Pero una vez que el validador sale de la cola de espera, se activa.

Figura 4: Transición del estado listo al estado activo Estado activo

Se espera que los validadores pasen su ciclo de vida principal en un estado activo. Los validadores activos participarán en el testigo actual cada 6 minutos y ocasionalmente propondrán trabajo blockchain (Nota 7). Un validador permanecerá activo hasta que suceda una de las siguientes cosas:

Los validadores fueron penalizados por no desempeñar sus funciones cuando se les exigía participar en las certificaciones, lo que provocó que los fondos cayeran por debajo de 16 ETH. El usuario solicita que se detenga la validación enviando una transacción adecuada (que no puede iniciarse durante los primeros 9 días en que este validador esté activo). Se demostró que el validador estaba haciendo trampa.

En los dos primeros casos, el validador se agrega a la cola de validadores que desean dejar de validar (el número de validadores que están a punto de salir del estado activo es el mismo que el de los validadores que están a punto de entrar en el estado activo. El número es limitado y lleva unos minutos tener 1 persona)

Figura 5: Transición del estado activo al estado saliente

En el tercer caso, los validadores se agregan a una cola de validadores sorprendidos haciendo trampa para recibir un castigo.

Figura 6: Transición del estado activo al estado de corte

Tenga en cuenta que es posible depositar ETH adicional en un validador activo enviando un acuerdo de depósito adicional que incluya la misma información del validador (recuerde siempre que el saldo válido no puede exceder los 32 ETH). Esto ayuda a evitar situaciones en las que los fondos de un validador caen por debajo de 16 ETH y se agregan a la cola de salida.

Estado de salida

Cuando un validador existente en la red expresa su intención de detener la verificación, ya sea voluntaria o involuntaria, no lo hará de inmediato, sino que entrará en el estado de salida, al igual que el estado activo anterior. Continuará participando igualmente en presenciar y ofrecer. . Esto garantiza la estabilidad de la red y evita la situación en la que un validador deja inmediatamente de realizar sus funciones si decide irse.

De manera similar a cuando un validador quiere cambiar del estado listo al estado activo, el validador que sale ingresa a una cola que solo permite unos pocos pases a la vez. De manera similar a unirse, el tiempo transcurrido en el estado de salida depende de la cantidad de validadores en la cola.

Figura 7: Transición del estado de salida al estado de salida Estado de corte

Un validador sorprendido haciendo trampa será castigado inmediatamente con 1 ETH, que se deducirá del saldo. Luego ingresará a una cola de corte. Esta cola de corte es similar a una cola de salida, pero se marcará como que requiere penalizaciones adicionales. A continuación, analizaremos este problema en el estado "Salido".

Figura 8: Transición del estado de corte al estado de salida

Un validador puede ser cortado al salir e incluso después de salir (pero antes de que pueda recuperar sus fondos). Esto evita la situación en la que un validador hace trampa y escapa al castigo saliendo antes de que se descubra su trampa a través del mecanismo de salida normal. Esto da como resultado un modelo de estado ligeramente más complejo.

Figura 9: Condiciones de corte extendidas Estado salido

Cuando un validador alcanza el estado de salida, ha completado oficialmente su misión. Ya no necesita participar en presenciar o proponer bloques, y ya no necesita tener información estatal sobre la cadena Ethereum 2.0.

Después del retiro, hay un retraso final de aproximadamente 1 día (nota 8) antes de que los fondos puedan transferirse fuera del validador. Sin embargo, si se marca que el validador ha pasado por el estado de corte, sufrirá dos penalizaciones adicionales.

En primer lugar, el tiempo que lleva antes de que los fondos puedan transferirse en el estado de salida es mayor, 36 días (Nota 9). En segundo lugar, a mitad del ciclo de 36 días, sufrirá más deducciones, cuyo monto se basa en la cantidad de validadores que fueron recortados en los 18 días anteriores a que el validador fuera sorprendido haciendo trampa y los 18 días después de que el validador fuera sorprendido haciendo trampa. El número de validadores que se redujeron. El siguiente cuadro muestra el porcentaje total de la pérdida de saldo efectiva de un validador (nota 10)

Gráfico 10: Saldo efectivo reducido como porcentaje del número de validadores reducidos en la red durante aproximadamente el mismo período de tiempo

Una vez que hayan expirado los 36 días, se podrán transferir los fondos restantes de los validadores recortados.

Como se puede ver en el diagrama del ciclo de vida, un validador salido no puede volver a entrar al estado activo mediante ningún mecanismo. Es decir, una vez que un validador se retira, sus fondos permanecerán inactivos hasta que sean transferidos. Tenga en cuenta que no puede transferir fondos en la fase 0 de Ethereum 2.0: todos los fondos del validador que salgan permanecerán con el validador hasta que se introduzcan las operaciones de transferencia de fondos. El motivo de la falta de operaciones de transferencia es la falta de cuentas de usuario que puedan transferir ETH.

Ciclo de vida extendido del validador

Considerar toda la información anterior en conjunto conducirá a una imagen más completa del ciclo de vida del validador.

Figura 11: Ciclo de vida extendido del validador

Comprender qué se requiere y cuánto tiempo lleva la transición entre diferentes estados es fundamental para garantizar el funcionamiento exitoso de la infraestructura de participación de Ethereum 2.0. Desde el depósito inicial hasta el retiro de fondos, el ciclo de vida muestra lo que puede suceder en cada estado y proporciona una explicación clara del comportamiento del validador en cada momento.

nota

Nota a pie de página 1: Vale la pena señalar que Ethereum 2.0 no establece un mecanismo de estado claro, es decir, el autor propone los nombres de los estados para facilitar la comprensión;

Nota al pie 2: 1.024 bloques de Ethereum 1.0 más 32 épocas de Ethereum 2.0.

Nota a pie de página 3: Esto supone que el protocolo de depósito requiere los 32 ETH completos. Si el protocolo de depósito tiene menos de este umbral, el validador permanecerá en el estado depositado hasta que más protocolos de depósito aumenten el saldo del validador a al menos 32 ETH.

Nota al pie 4: De lo contrario, se puede agregar otro depósito para aumentar el saldo de este validador a esta cantidad.

Nota al pie 5: Cada época es (activo + saliente + validadores recortados)/65536, y el valor mínimo es 4.

Nota al pie 6: 4 épocas.

Nota a pie de página 7: Un validador solo puede presenciar una vez en cada época, y solo un validador designado en cada espacio desempeña el papel de proponente.

Nota al pie 8: 256 épocas

Nota al pie 9: 8192 épocas

Nota al pie 10: tenga en cuenta que debido a que las sanciones pueden ser de hasta el 100 % del saldo válido, la penalización máxima para un validador nunca excederá los 32 ETH, independientemente del saldo real del validador.