Saltar al contenido principal

Convertirse en Validador

Guía completa para convertirse en un validador de KodeChain y participar en el consenso.

Requisitos

Hardware

  • CPU: 4+ cores
  • RAM: 8 GB mínimo
  • Almacenamiento: 100 GB SSD
  • Red: 10 Mbps estable, IP estática recomendada
  • Uptime: 99%+ recomendado

Financieros

  • Stake Mínimo: 10 KDC exactos
  • Fees de Operación: ~0.1 KDC/mes para transacciones

Técnicos

  • Conocimientos básicos de Linux/Terminal
  • Capacidad de mantener un nodo 24/7
  • Configuración de firewall y networking

Tipos de Validadores

1. Validador DPoS

  • Participa en producción de bloques
  • Tiempo de bloque: 3 segundos
  • 21 delegados activos
  • Recompensas por bloque minado

2. Validador PBFT

  • Valida registros críticos
  • Consenso bizantino
  • Facturación mensual por uso
  • Ideal para aplicaciones enterprise

Proceso de Activación

Fase 1: Preparación (Día 0)

1. Configurar Nodo

Sigue la Guía de Configuración de Nodo.

2. Sincronizar Blockchain

# Verificar sincronización
curl http://localhost:8545/api/blockchain/status

Espera hasta que status sea "synced".

3. Generar Claves

cd handlers
make generate

Genera:

  • keystore-[timestamp].json
  • deposit_data-[timestamp].json
  • withdrawal_credentials.json

IMPORTANTE: Guarda estos archivos de forma segura. Son irrecuperables si se pierden.

Fase 2: Registro (Día 0)

1. Obtener tu Address

cat keystore-*.json | jq -r '.address'

2. Transferir 10 KDC

curl -X POST http://localhost:8545/api/transactions/send \
-H "Content-Type: application/json" \
-d '{
"from": "0xYourFundedAddress",
"to": "0xYourValidatorAddress",
"amount": "10000000000000000000",
"private_key": "your_private_key"
}'

3. Verificar Balance

curl http://localhost:8545/api/blockchain/balance/0xYourValidatorAddress

Debe mostrar exactamente 10.0 KDC.

4. Registrar Validador

curl -X POST http://localhost:8545/api/validator/register \
-H "Content-Type: application/json" \
-d '{
"address": "0xYourValidatorAddress",
"stake": "10000000000000000000",
"consensus_type": "dpos",
"business_id": "my-validator-001",
"metadata": {
"name": "Mi Validador",
"website": "https://myvalidator.com",
"description": "Validador profesional"
}
}'

Respuesta:

{
"success": true,
"message": "Validator registered successfully",
"activation_time": "2025-11-03T10:30:00Z",
"status": "activating"
}

Fase 3: Período de Activación (24 horas)

Durante las próximas 24 horas:

  • El stake queda bloqueado
  • El validador aparece como "activating"
  • El nodo debe permanecer en línea y sincronizado

Verificar Estado

curl http://localhost:8545/api/staking/status/0xYourValidatorAddress

Fase 4: Activación (Día 1)

Después de 24 horas, activa tu validador:

curl -X POST http://localhost:8545/api/staking/activate \
-H "Content-Type: application/json" \
-d '{
"address": "0xYourValidatorAddress"
}'

Respuesta:

{
"success": true,
"message": "Validator activated successfully",
"status": "active",
"consensus_type": "dpos"
}

Fase 5: Validación Activa

Una vez activado:

  • Comienzas a participar en consenso
  • Produces bloques (DPoS) o validas (PBFT)
  • Ganas recompensas por bloques
  • Tu reliability score se actualiza

Responsabilidades del Validador

1. Uptime

  • Mantener nodo en línea 24/7
  • Uptime mínimo: 95%
  • Downtime > 5% puede resultar en penalties

2. Sincronización

  • Mantener blockchain sincronizada
  • Responder a sincronizaciones de peers
  • Participar en beacon chain (cross-chain)

3. Producción de Bloques (DPoS)

  • Producir bloques cuando sea tu turno
  • Incluir transacciones válidas
  • Firmar bloques correctamente

4. Validación (PBFT)

  • Participar en 3 fases: Pre-Prepare, Prepare, Commit
  • Responder en < 1 segundo
  • Verificar transacciones correctamente

5. Seguridad

  • Proteger claves privadas
  • Mantener sistema actualizado
  • Monitorear logs por actividad sospechosa

Recompensas

Distribución de Fees

Total Fee = 100%
├── Validador: 70% - Burn Rate
├── Desarrollo: 30%
└── Burn: 1-10% (dinámico)

Ejemplo de Cálculo

Bloque con 100 transacciones, fee promedio de 0.001 KDC:

Total Fees = 100 × 0.001 = 0.1 KDC
Burn Rate = 5% (supply medio)
Validador = (0.1 × 0.70) - (0.1 × 0.05) = 0.065 KDC
Desarrollo = 0.1 × 0.30 = 0.03 KDC
Burn = 0.1 × 0.05 = 0.005 KDC

Recompensas Estimadas

ActividadBloques/DíaFee PromedioIngreso Diario Estimado
Activo Alto12000.05 KDC39 KDC
Activo Medio8000.05 KDC26 KDC
Activo Bajo4000.05 KDC13 KDC

Nota: Estos son estimados. Los ingresos reales dependen de:

  • Actividad de la red
  • Tu reliability score
  • Número de delegados activos
  • Fees de transacciones

Reclamar Recompensas

Las recompensas se acumulan automáticamente en tu address de validador.

# Ver recompensas acumuladas
curl http://localhost:8545/api/staking/rewards/0xYourValidatorAddress

Penalties y Slashing

Tipos de Penalties

Minor (0.1% stake, -5% reliability)

  • Miss 1-3 bloques consecutivos
  • Respuesta lenta (1-3 segundos)
  • Downtime temporal (< 1 hora)

Severe (0.3% stake, -20% reliability)

  • Miss 4-10 bloques consecutivos
  • Downtime prolongado (1-6 horas)
  • Transacciones inválidas ocasionales

Critical (0.5% stake, reliability = 0, desactivación)

  • Double signing
  • Downtime > 6 horas
  • Comportamiento malicioso
  • Miss > 10 bloques consecutivos

Evitar Penalties

  1. Alta disponibilidad: Usa redundancia, monitoreo
  2. Hardware adecuado: No ejecutes en hardware sub-especificado
  3. Red estable: Conexión de alta calidad
  4. Monitoreo activo: Alertas automáticas
  5. Backups: Claves respaldadas en ubicación segura

Desactivar Validador

Desactivación Voluntaria

curl -X POST http://localhost:8545/api/validator/deactivate \
-H "Content-Type: application/json" \
-d '{
"address": "0xYourValidatorAddress"
}'

Período de Unbonding

Después de desactivar:

  • 7 días de unbonding period
  • No produces bloques durante este tiempo
  • No recibes recompensas
  • Después de 7 días, puedes retirar tu stake

Retirar Stake

curl -X POST http://localhost:8545/api/staking/withdraw \
-H "Content-Type: application/json" \
-d '{
"address": "0xYourValidatorAddress",
"amount": "10000000000000000000"
}'

Best Practices

1. Seguridad

  • Usa hardware wallet para claves de retiro
  • Nunca compartas claves privadas
  • Configura 2FA para acceso SSH
  • Usa VPN para acceso remoto

2. Redundancia

  • Configura nodo de backup (cold standby)
  • Usa UPS para energía ininterrumpida
  • Monitoreo con alertas SMS/email

3. Optimización

  • SSD NVMe para mejor I/O
  • Red de > 100 Mbps
  • CPU moderna (< 3 años)
  • Memoria ECC recomendada

4. Mantenimiento

  • Actualizaciones semanales del OS
  • Actualizaciones de KodeChain cuando se liberen
  • Limpieza de logs mensual
  • Backup de keystore mensual

Métricas de Performance

Reliability Score

Reliability = (Bloques Producidos / Bloques Asignados) × 100%

Ejemplo:

Asignados: 1000 bloques
Producidos: 995 bloques
Reliability = (995 / 1000) × 100% = 99.5%

Ranking de Validadores

Los validadores se rankean por:

  • Confiabilidad (40%): Uptime y bloques producidos
  • Votos (30%): Delegaciones pasivas
  • Bloques Creados (20%): Contribución total
  • Stake (10%): Cantidad stakeada

Monitoreo

Métricas Clave

# Status del validador
curl http://localhost:8545/api/staking/status/0xYourAddress

# Estadísticas de producción
curl http://localhost:8545/api/staking/stats/0xYourAddress

# Próximos bloques asignados
curl http://localhost:8545/api/staking/schedule/0xYourAddress

Ver Guía de Monitoreo para más detalles.

Próximos Pasos

  1. ⚙️ Configuración Avanzada de Nodo
  2. 🔑 Gestión Segura de Claves
  3. 💰 Guía Detallada de Staking
  4. 📊 Configurar Monitoreo
  5. Best Practices

¡Bienvenido a la red de validadores de KodeChain! 🎉