Saltearse al contenido

Habilitar validación en xahaud

Los validadores son nodos de xahaud configurados con un par de claves pública/privada adicional, utilizado para firmar cada ledger propuesto. Por ello, los validadores son el mecanismo principal para lograr consenso sobre el orden de las transacciones en la red Xahau.

Operar un validador requiere altos niveles de seguridad y disponibilidad:

  • Monitorización continua del servidor
  • Respuesta rápida ante caídas
  • Uso de servidores de respaldo en distintos centros de datos

Ejecutar un validador desde casa es posible, pero difícilmente alcanzará el nivel de confianza necesario (por ejemplo, inclusión en UNLs).

Recomendaciones:

  • No ejecutar otros servicios en el mismo servidor
  • Separar nodos de consulta (RPC/WebSocket) de validadores
  • Proteger el archivo xahaud.cfg:
chmod 400 xahaud.cfg
chown root:root xahaud.cfg

Las claves privadas deben almacenarse de forma segura y offline.

Para evitar ataques Sybil y generar confianza:

  • Firmar un dominio con las claves del validador
  • Publicar un archivo TOML en:
[https://tu-dominio.com/.well-known/xahau.toml](https://tu-dominio.com/.well-known/xahau.toml)

Este archivo permite verificar la identidad del validador o cuentas.

Para mayor seguridad:

  • Solo conectarse a nodos confiables
  • Usar peer_private y ips_fixed
  • Usar firewall

Advertencia: menos de ~5 peers puede causar desincronización.

Xahau usa el Governance Game y listas UNL.

Un validador confiable suele tener:

  1. Alta disponibilidad (24/7)
  2. Alto consenso con la red
  3. Identidad clara (propietario y ubicación)
  4. Participación activa en enmiendas y fees

Proceso:

  1. Generar claves
  2. Crear token de validación
  3. Instalar token en xahaud.cfg

No existe binario oficial, por lo que debes:

Recomendado: hacerlo en máquina offline segura.

Nota: validation_create NO genera tokens de validación, solo claves para identificar nodos.

  1. Ir al directorio:
cd [/ruta/tool]
  1. Generar claves:
./validator-keys create_keys
  1. Se guardan en:
~/.xahaud/validator-keys.json
  1. Opcional: añadir dominio:
./validator-keys set_domain ejemplo.com

O generar token sin dominio:

./validator-keys create_token --keyfile ~/.xahaud/validator-keys.json
  1. Guardar:
  • validator_token
  • attestation="" (si usas dominio)

⚠️ Importante:
El campo token_sequence se incrementa automáticamente.
Tokens antiguos serán ignorados si existe uno más reciente.

  1. Añadir en xahaud.cfg:
[validation_token]
...
  1. Añadir attestation al archivo TOML

  2. Reiniciar xahaud


🔒 Recomendación final:
Mantén siempre las claves privadas fuera del servidor validador.