Diseñar sistemas componibles.
Piezas intercambiables para identidad, firma, tiempo y evidencia.
Las plataformas de firma suelen nacer como productos cerrados: un proveedor de certificados, un método de identificación, un formato, una forma de guardar la evidencia. Funcionan bien hasta que algo cambia: llega un cliente de otro país, aparece un nuevo prestador, una norma exige otro nivel o un algoritmo envejece. Un sistema componible está pensado para ese momento. Sus piezas se pueden cambiar sin rehacer el conjunto.
Qué significa componible
Un sistema es componible cuando está hecho de capacidades independientes, con fronteras claras y contratos explícitos, que pueden combinarse de distintas formas para resolver distintos casos. En firma electrónica, esas capacidades se reconocen con facilidad.
- Identidad. Quién es el firmante: cuentas, identidades nacionales, proveedores externos, verificación de documentos.
- Firma. Con qué se firma: dispositivos locales, firma remota, claves propias, sellos de organización.
- Tiempo. Quién fija la hora: una o varias autoridades de sellado de tiempo, con orden de preferencia y respaldo.
- Confianza. Contra qué se valida: listas de confianza, raíces nacionales, políticas.
- Evidencia. Qué se registra y cómo se conserva: eventos encadenados, informes, archivo.
- Flujo. En qué orden ocurre todo: firmantes, aprobaciones, plazos, notificaciones.
Reglas de diseño
- Interfaces antes que implementaciones. Cada capacidad se define por lo que promete, no por quién la cumple.
- Catálogo, no código. Agregar un prestador o un método debería ser registrar una pieza, no modificar el núcleo.
- Fallos declarados. Si una pieza no responde, el sistema usa la siguiente o deja constancia del nivel alcanzado; nunca baja de nivel en silencio.
- Evidencia común. Todas las piezas escriben en el mismo registro, para que la historia sea una sola.
- Aislamiento. Cada organización ve sólo lo suyo, impuesto en la base de datos y no sólo en la aplicación.
Un sistema de firma componible separa identidad, firma, tiempo, confianza, evidencia y flujo en piezas con contratos claros. Se agregan por catálogo, fallan de forma declarada, escriben en una evidencia común y respetan el aislamiento. Así el sistema crece sin rehacerse.