# Declaración de prácticas — Mecanismo de Firma Electrónica Contrivio
Versión 1.0. Descripción técnica. No es una declaración de prácticas de certificación (DPC) de Entidad de Certificación Digital.
## Generación de claves
Se genera un par RSA 2048 con OpenSSL en el servidor, solo después de OTP de activación, acuerdo de uso y autorización de datos necesarios.
## Protección de claves
La clave privada se cifra en reposo con AES-GCM y una clave derivada por HKDF para el propósito `firma_contrivio`. No se reutiliza el mismo material para OTP ni para P12/PFX. No se envía al navegador ni se escribe en logs.
## Algoritmos
SHA-256 para integridad del documento. RSA-SHA256 (`openssl_sign` / `openssl_verify`) sobre los bytes completos del PDF definitivo.
## Hash
`original_hash_sha256` identifica el archivo fuente cuando existe. `signed_hash_sha256` / `sha256` identifican el PDF definitivo firmado. La verificación pública compara esos hashes.
## Firma
Modalidad detached / externa al PDF. El archivo no contiene una firma PAdES embebida. La arquitectura deja espacio para PAdES futuro sin afirmar que exista hoy.
## OTP
HMAC-SHA256 del código ligado a `contador_id` y `operacion_id`, vigencia de 10 minutos, 5 intentos, un solo uso, invalidación de OTP previos de la misma operación, rate limiting.
## Almacenamiento
PDF firmado y, si aplica, Word original, fuera de listado web, con control de acceso por rol. No se sobrescribe un PDF ya firmado: una corrección es una nueva versión y una nueva operación.
## Auditoría
Tabla `firma_auditoria` y tabla `firma_operaciones` con estados de ciclo de vida.
## Verificación
Página pública de operación (código CV / hash / openssl_verify). Descarga del PDF solo autenticada y autorizada.
## Incidentes
Ante compromiso de cuenta o de correo, el profesional debe suspender o revocar el mecanismo. Las firmas previas permanecen verificables.
## Suspensión y revocación
Cambio de estado en `contador_firma_contrivio` con motivo, fecha, IP y User-Agent. No elimina evidencia histórica.
## P12/PFX de tercero
Canal separado. Contrivio no emite ese certificado. Se muestra el sujeto, emisor y vigencia leídos del archivo del profesional.
Política del Mecanismo de Firma Electrónica Contrivio Declaración de prácticas de firma electrónica Política de Tratamiento de Datos Personales Aviso de Privacidad Acuerdo de Uso del Mecanismo de Firma Electrónica Contrivio Matriz de cumplimiento normativo (firma)