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].jsondeposit_data-[timestamp].jsonwithdrawal_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
| Actividad | Bloques/Día | Fee Promedio | Ingreso Diario Estimado |
|---|---|---|---|
| Activo Alto | 1200 | 0.05 KDC | 39 KDC |
| Activo Medio | 800 | 0.05 KDC | 26 KDC |
| Activo Bajo | 400 | 0.05 KDC | 13 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
- Alta disponibilidad: Usa redundancia, monitoreo
- Hardware adecuado: No ejecutes en hardware sub-especificado
- Red estable: Conexión de alta calidad
- Monitoreo activo: Alertas automáticas
- 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
- ⚙️ Configuración Avanzada de Nodo
- 🔑 Gestión Segura de Claves
- 💰 Guía Detallada de Staking
- 📊 Configurar Monitoreo
- ✅ Best Practices
¡Bienvenido a la red de validadores de KodeChain! 🎉