1. Arquitectura y aislamiento
Zign opera con arquitectura hexagonal: el núcleo de firma y certificación está desacoplado de los adaptadores de entrada (portal web, API REST, webhooks) y de los adaptadores de salida (Prestador de Servicios de Certificación, almacenamiento, correo, blockchain). Esto permite sustituir proveedores sin cambiar reglas de negocio y contener el impacto de una falla externa.
Las operaciones largas o dependientes de terceros (emisión de constancias, envío de correos, anclaje diario, análisis con IA) se procesan mediante colas con bloqueo por trabajo, reintentos e idempotencia, de modo que un reintento nunca duplica una constancia ni un cargo.
- Multi-tenencia lógica: cada documento, sobre, constancia y llave pertenece a una organización, con jerarquía padre-hijo para grupos corporativos y marca blanca.
- Separación estricta de código cliente y servidor: las credenciales privilegiadas y las llaves de proveedores solo existen en el runtime de servidor, nunca en el navegador.
- Ambientes separados de pruebas (sandbox) y producción, con llaves distintas; sandbox no contacta al PSC real ni consume certificados.