Una de las cosas que se han mejorado en el core del producto sinadura ha sido la carga de certificados y el proceso de firma. Para testar esta mejora hemos realizado las siguientes pruebas.
- Firmar 100 documentos sin TSA y sin validación OCSP con el dni electrónico
- Firmar 100 documentos sin TSA y sin validación OCSP con la tarjeta de izenpe
- Firmar 100 documentos sin TSA y sin validación OCSP con un certificado software (pkcs12)
- Firmar 100 documentos con TSA y sin validación OCSP con el dni electrónico
- Firmar 100 documentos con TSA y sin validación OCSP con la tarjeta de izenpe
- Firmar 100 documentos con TSA y sin validación OCSP con un certificado software (pkcs12)
- Validar 100 documentos
Las conclusiones principales de las pruebas han sido,
- La velocidad de la firma cuando el disposivito es una tarjeta depende principalmente del driver de la tarjeta y no del programa. En este caso por ejemplo el driver del dnie es dos o tres veces más lento que el driver de la tarjeta de izenpe.
- La velocidad de la firma al firmar desde un tarjeta es un orden de magnitud menor que usando la carga de un certificado en software (pkcs12).
- Si introducimos a la firma la validación OCSP o el sello temporal (TSA), la velocidad del proceso firma depende del numero de peticiones que el sistema pueda realizar al servidor OCSP o TSA.
- El proceso de firma no consume cpu ni supone una carga sobre el sistema.
Para conseguir mayor número de firmas por segundo se podría, en el caso de uso de un certificado software, paralelizar el proceso y conseguir así aumentar linealmente la velocidad con el número de procesos ejecutados en paralelo. Teniendo en cuenta que el proceso de firma no consume mucha memoría ni CPU, sería sencillo llegar, por medio de la paralelización, a conseguir entre 50 y 100 firmas por segundo. Aunque esto lo dejamos para otra día en el que tengamos un rato para hacer estas pruebas.
Algunos datos sobre los test realizados
Nota: Todas las pruebas se han realizado en un equipo linux, usando el interfaz gráfico de sinadura 2.0.