El problema que resuelve
Comprende el modelo antes de escribir la primera línea.
Integrar activos digitales en una aplicación obliga hoy a elegir entre dos malas opciones.
Si la aplicación guarda las llaves de sus usuarios, se convierte en custodio: asume la responsabilidad regulatoria, concentra el riesgo y se vuelve el objetivo. Si delega la custodia en el usuario con una frase de recuperación de doce palabras, pierde a la mayoría en el primer paso y condena al resto a perder el acceso tarde o temprano.
Nyx elimina la elección con un reparto criptográfico. La llave privada nunca existe completa en ningún servidor, y tampoco depende de que el usuario recuerde nada.
┌─────────────────────────────────────────────────────────────┐
│ Navegador del usuario │
│ │
│ • genera la llave (CSPRNG verificado) │
│ • la reparte en 3 fragmentos (Shamir, umbral 2) │
│ • firma cada operación │
│ • reconstruye la llave para exportarla │
│ │
│ Fragmento A ──► IndexedDB del dispositivo │
│ Fragmento B ──► Nyx (cifrado en reposo) │
│ Fragmento C ──► sobre cifrado en el cliente ──► Nyx │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ API de Nyx │
│ │
│ • custodia UN fragmento, lo entrega solo a su dueño │
│ • guarda un sobre que no puede abrir │
│ • verifica la ceremonia biométrica │
│ • retransmite operaciones YA firmadas al bundler │
│ │
│ Lo que no hace: firmar, reconstruir, exportar llaves │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ Cadena — cuenta inteligente Safe + ERC-4337 │
└─────────────────────────────────────────────────────────────┘La consecuencia práctica: dos fragmentos reconstruyen la llave. Nyx tiene uno y un sobre que no puede abrir. Un compromiso total de la infraestructura de Nyx no produce una sola firma.
