🇪🇸 La seguridad de un Stake Pool y qué significa para los Delegantes

:cuba::es: Traducción al español de contenido publicado por Beavr Tim operador del Pool BEAVR.

Palabras y frases claves del ecosistema Cardano que serán respetadas en el idioma inglés, dado su continuo uso en el foro, artículos de sitios web, y redes sociales.

Stake Pool: Entidad de la red que, entre otras cosas, se encarga de producir y validar bloques. Puede actuar individualmente, o como tercero en nombre de varios usuarios de la red que lo elijan para ello.

Slot: Unidad de tiempo de la red Cardano que dura un segundo, dentro de cada Slot puede existir la posibilidad de crear un bloque.

Slot Leader: Stake Pool que se le ha asignado la posibilidad de crear un bloque para un Slot en particular.

Pledge: Es el compromiso del operador con la red, donde dicho operador debe comprometer y exponer de forma pública y permanente sus propios recursos ADA en su Stake Pool.


Aspectos básicos de seguridad para un Stake Pool

Comenzaré diciendo como prefacio que, en el proceso de Staking en Cardano, el usuario que delega sus ADA no corre peligro de perderlas si la seguridad del Stake Pool donde delegó se encuentra comprometida. Entonces, ¿ por qué es importante la seguridad de un Stake Pool ?

Para que un Stake Pool genere recompensas, sus servidores necesitan estar conectados en línea cuando lleguen los Slots donde él ha asignado como Slot Leader. La probabilidad de ser elegido como Slot Leader depende de cuánto Stake posee el Pool. Si los servidores del Stake Pool no están en línea en el momento de tiempo en que llega el Slot, entonces pierde la oportunidad de generar un bloque para la red, y entonces tanto el operador como los delegantes podrían recibir menos, o ninguna recompensa. Por consiguiente, la misión más importante para un operador de Stake Pool es asegurarse de que sus servidores estén en línea y funcionales todo el tiempo.

La documentación que ofrece IOHK para configurar un Stake Pool ilustra bastantes conceptos básicos en cuanto a la seguridad, y cómo ofrecer un servicio constante [1].

1- Aislar las conexiones entrantes al servidor Productor de Bloques, permitiendo solo el tráfico proveniente de los servidores Relays.

2- Aislar las conexiones entrantes a los servidores Relays, permitiendo solo el tráfico proveniente de la Blockchain Cardano y el servidor Productor de Bloques.

3- Aislar la administración de tus servidores a través de un Firewall que permita solo las direcciones IP del administrador, usando además un juego de llaves SSH exclusivos, y eliminando el puerto por defecto del protocolo SSH.

4- Eliminar toda existencia de llaves del Stake Pool accesible mediante Internet, y guardarlas en un sitio sin conexión absoluta.

Debajo se muestra un diagrama del sistema de alto nivel diseñado para el Stake Pool BEAVR que implementa estos conceptos.

¿Qué tipo de ataques puede esperar un Stake Pool, y cómo afecta a los delegantes?

Generalmente hay dos tipos de ataques que un Stake Pool puede esperar.

1- Acceso a los servidores (Productor de Bloques, Relay y Administrador)

2- Ataque Distribuido de Denegación de Servicio (DDoS)

Acceso a los servidores

El primer ataque se basa en explotar configuraciones descuidadas en los servidores para obtener así acceso a ellos. Esto podría permitir al atacante lo siguiente:

1- Obtener el Pledge del operador en caso de que este tenga las llaves alojadas en el servidor.

2- Poner fuera de línea o apagar el servidor.

En el caso del operador Happy, 1M ADA de su Pledge le fue robado en el momento que un atacante obtuvo acceso a su servidor, ya que tenía sus llaves [2] en el servidor atacado. En este ejemplo, se evidencia la importancia para un operador de tener sus llaves alojadas en un dispositivo aislado de internet. El atacante fue capaz de obtener el acceso usando un exploit en la herramienta Docker, la cual es una plataforma virtual que permite a los usuarios crear contenedores, y que varios operadores han estado usando para configurar los Stake Pools de forma rápida.

Este tipo de ataques afecta a los delegantes, ya que se reduce potencialmente las recompensas que puedan llegar a recibir. Si un servidor es apagado, el pool podría perder la oportunidad de producir un bloque. Si el servidor pierde su pledge, tendrá entonces menos cantidad de Stake, y por tanto tendrá probablemente menos oportunidad de ser elegido Slot Leader.

Ataque DDoS

La principal razón de añadir bastantes servidores Relay al Productor de Bloques es para tener redundancia contra ataques DDoS. Este tipo de ataques no han prevalecido en la red Cardano hasta el momento, pero tener múltiples servidores Relay protege al Stake Pool de posibles ataques justo en el momento en que este necesite producir un bloque, ya que es más difícil y costoso generar y coordinar un ataque DDoS hacia las múltiples IP de los servidores al mismo tiempo.

Este tipo de ataques afecta a los delegantes, ya que se reduce potencialmente las recompensas que puedan llegar a recibir. Si un servidor es apagado, el pool podría perder la oportunidad de producir un bloque

En Resumen

Los delegantes no corren ningún riesgo de perder sus ADA cuando la seguridad de un Stake Pool se encuentra comprometida. Lo único que se pierde son las posibles recompensas, ya que los servidores comprometidos pueden desconectarse. El Stake Pool BEAVR implementa varias protecciones, y más para asegurarse de que sus servidores estén funcionando las 24 horas del día, los 7 días de la semana, de modo que usted, el delegante, pueda seguir recibiendo recompensas cuando generamos bloques.

Referencias

[1] Documentación de Cardano, IOHK 2020, https://docs.cardano.org/projects/cardano-node/en/latest/stake-pool-operations/node_keys.html

[2] Foro Cardano, junada 2020, https://forum.cardano.org/t/spos-do-not-repeat-my-mistakes-keep-your-core-node-safe/37766

1 Like

Muchas gracias, Leo!

1 Like