Herramientas de usuario

Herramientas del sitio


informatica:software:autofirma

AutoFirma

Aplicación de firma electrónica desarrollada por el Ministerio de Asuntos Económicos y Transformación Digital de España. Al poder ser ejecutada desde el navegador, permite la firma en páginas de Administración Electrónica cuando se requiere la firma en un procedimiento administrativo. También se puede usar como aplicación independiente.

Con el programa AutoFirma puedes firmar documentos PDF, Word, Excel o PowerPoint mediante certificado digital.

Disponible para los siguientes sistemas operativos:

  • Windows 7 o superior.
  • macOS 10.11 o superior.
  • Linux (kernel 2.6 o superior).

Instalación

Arch Linux

Paquete autofirma-bin.

Uso

Firma en línea de comandos

Probado para la versión 1.8.3 bajo Arch Linux:

autofirma sign -i documento.pdf -o documento_firmado.pdf -store pkcs12:/ruta/a/certificado_digital.p12 -filter subject.contains:<IDENTIFICADOR> -password <CONTRASEÑA_CERTIFICADO> -format pades

Para saber qué poner en la opción -filter, podemos usar openssl para ver los datos del certificado:

openssl pkcs12 -nokeys -info -in certificado-digital.p12 | grep -i subject

Por ejemplo, podríamos poner el DNI:

autofirma sign -i documento.pdf -o documento_firmado.pdf -store pkcs12:/ruta/a/certificado_digital.p12 -filter subject.contains:12345678Z -password <CONTRASEÑA_CERTIFICADO> -format pades

También podríamos buscar ese identificador utilizando keytool y fijándonos en lo que aparece en la sección Nombre de Alias:

keytool -list -v -keystore <certificado-digital.p12> | grep Alias

Ejemplo de salida:

Nombre de Alias: rodriguez_perez_manuel___12345678z

Otra forma de encontrar el lias es pasándole la opción listaliases a autofirma:

autofirma listaliases -store pkcs12:certificado-digital.p12

Si conocemos el alias del certificado que queremos usar, en lugar de la opción -filter podemos usar la opción -alias:

autofirma sign -i documento.pdf -o documento_firmado.pdf -store pkcs12:/ruta/a/certificado_digital.p12 -alias rodriguez_perez_manuel___12345678z -password <CONTRASEÑA_CERTIFICADO> -format pades

Firma visible en el documento

Con la firma digital se firma el fichero completo y se añade la firma en los metadatos por lo que no es necesario lo de firmar todas las páginas. Es cierto que Autofirma permite hacer visible en el PDF un “testigo” de la firma, pero lo importante no es eso si no los metadatos.

Con la versión con interfaz gráfica es sencillo, pero para hacerlo desde línea de comandos hay que trabajarlo un poco.

Si queremos que aparezca un texto con el nombre de la persona que firma el documento y la fecha:

autofirma sign -i documento.pdf -o documento_signed.pdf -store pkcs12:certificado-digital.p12 -alias rodriguez_perez_manuel___12345678z -password <CONTRASEÑA> -format pades -config "signaturePositionOnPageLowerLeftX=50\n\
signaturePositionOnPageLowerLeftY=130\n\
signaturePositionOnPageUpperRightX=250\n\
signaturePositionOnPageUpperRightY=245\n\
signaturePage=1\n\
layer2FontColor=black\n\
layer2FontSize=8\n\
layer2FontFamily=1\n\
layer2FontStyle=0"

Si queremos firmar con una imagen (como una firma manuscrita):

autofirma sign -i documento.pdf -o documento_signed.pdf -store pkcs12:certificado-digital.p12 -alias rodriguez_perez_manuel___12345678z -password <CONTRASEÑA> -format pades -config "signatureRubricImage=/home/tempwin/docs/firma_ejemplo.jpg\n\
signaturePositionOnPageLowerLeftX=50\n\
signaturePositionOnPageLowerLeftY=130\n\
signaturePositionOnPageUpperRightX=250\n\
signaturePositionOnPageUpperRightY=245\n\
signaturePage=1"

La imagen debe ser en formato JPEG. También puede indicarse directamente el Base 64 de la imagen. Para ello, ejecutamos el comando base64 -w 0 <archivo.jpg>

Validar / verificar firma

Recursos

informatica/software/autofirma.txt · Última modificación: por tempwin