Recursos del Grupo GIDI

Herramientas para tu
seguridad digital.

Descargá nuestras herramientas y encontrá lo necesario para instalarlas y empezar a trabajar.

Disponible para descargar

Firmador PFSI

Firmá documentos PDF con tu certificado digital y un token criptográfico, desde una interfaz gráfica.

Aplicación: Firmador GIDI · Versión 2.2.2

  • Elegí el PDF, la carpeta de destino y el nombre de salida.
  • Ubicá el sello visible sobre la página y reducí su tamaño hasta 20 × 7 mm.
  • Indicá ancho y alto en milímetros; el texto se ajusta al tamaño elegido.
  • Conservá las firmas previas mediante firma incremental y controles de integridad.
  • Firmá otro documento reutilizando la sesión del token, cuando el dispositivo lo permita.

Para cambiar las medidas, colocá el sello, indicá el ancho y el alto y pulsá «Aplicar tamaño». En etiquetas pequeñas puede ser necesario ampliar el PDF para leer el texto.

Linux · Paquete Debian / Ubuntu

Instalador .deb

Ubuntu 24.04 LTS · 64 bits (amd64)
Versión 2.2.2: etiquetas desde 20 × 7 mm, medidas exactas y texto ajustable. Conserva la detección de varios controladores sin duplicados.

↓ Descargar versión 2.2.2

32,1 MiB · Arquitectura x86_64
firmador-gidi_2.2.2+ubuntu24.04.1_amd64.deb

En otras versiones de Debian o Ubuntu, verificá las dependencias antes de instalar. Este paquete requiere Python 3.12; no es un instalador universal.

Comprobar la descarga

Compará el resultado de sha256sum firmador-gidi_2.2.2+ubuntu24.04.1_amd64.deb con este SHA-256:

9c3b34b696f174364d442cbceeef38ef1600c242343764e6f36f153844136a83

Descargar sumas de verificación


Debian 13

Debian 13 (Trixie) · 64 bits (amd64)
Paquete para Python 3.13. Incluye etiquetas desde 20 × 7 mm y ajuste de ancho y alto en milímetros.

↓ Descargar versión 2.2.2

Arquitectura x86_64
firmador-gidi_2.2.2+deb13.1_amd64.deb

Paquete 2.2.2 para Debian 13 / Python 3.13. Esta versión está pendiente de prueba de ejecución y firma en Debian 13.

Comprobar la descarga de Debian 13

Descargá las sumas de verificación en la misma carpeta que el instalador y ejecutá:

sha256sum --ignore-missing -c SHA256SUMS

Instalación

  1. Descargá el paquete y abrí una terminal en la carpeta donde lo guardaste.
  2. Ejecutá el siguiente comando:

Ubuntu 24.04 / Python 3.12

sudo apt install ./firmador-gidi_2.2.2+ubuntu24.04.1_amd64.deb

Debian 13 / Python 3.13

sudo apt install ./firmador-gidi_2.2.2+deb13.1_amd64.deb

Después, buscá Firmador GIDI en el menú de aplicaciones.

Antes de comenzar

Necesitás un token compatible, su controlador instalado y un certificado vigente con su clave privada disponible en el dispositivo.

Instalá el controlador PKCS#11 para Linux de tu token. Los controladores de SafeNet, Longmai y FEITIAN se obtienen por separado del fabricante o proveedor; no vienen incluidos. Consultá los modelos y el estado de compatibilidad.

Dependencias del sistema: Python 3.12 para el paquete de Ubuntu 24.04 o Python 3.13 para el de Debian 13, Tkinter, libc6 ≥ 2.35, libstdc++6, libgcc-s1 y xdg-utils. APT resuelve las dependencias disponibles en los repositorios de tu distribución.

La clave privada permanece en el token. El PIN no se guarda para reutilizar la sesión.

Validá el documento firmado

Accedé al servicio que prefieras y seleccioná allí tu PDF firmado.

Los controles de integridad del firmador no reemplazan la validación de confianza de la autoridad certificante y del estado de revocación.

Terminal · Firma de varios PDF

Firmadores múltiples Bash

Firmá varios documentos con el mismo certificado del token. Aceptan archivos individuales o patrones como *.pdf; solicitan el PIN y la selección del certificado una sola vez por lote.

Con sello automático

Incluye la marca de agua PFSI · Facultad de Ingeniería en el fondo del sello. Busca espacio primero en la última página y después en la primera, sin tapar contenido. Si no encuentra lugar, firma igualmente sin sello visible.

↓ Descargar script con sello

Salida: nombre_firmado.pdf. Sin espacio para el sello: nombre_firmado_sin_sello.pdf. Los campos de firma existentes indicados explícitamente conservan su posición.

Sin sello visible

Firma digitalmente los PDF sin sello ni marca de agua visible. Incluye detección de varios controladores y evita mostrar dos veces el mismo token.

↓ Descargar script sin sello

Salida: nombre_firmado.pdf. No cambia el nombre de los documentos originales.

Preparación — una vez en cada máquina

Guardá los scripts en una carpeta permanente. Necesitás Python 3, su módulo de entornos virtuales y el controlador del token. En Debian 13 o Ubuntu:

sudo apt install python3-venv
bash /ruta/scripts/firma_PDF_token_Sello_pie_multiple.sh --instalar
bash /ruta/scripts/firma_PDF_sinsello_multiple.sh --instalar

Reemplazá /ruta/scripts por la carpeta donde descargaste los scripts. Si usás solo uno, ejecutá únicamente su comando de preparación. Las dependencias se instalan en .venv-firma-pdf, junto a los scripts. Creá el entorno en cada máquina; no lo copies desde otro sistema.

Uso — elegí una de las dos variantes

Primero ubicáte en la carpeta donde querés guardar los resultados:

mkdir -p "$HOME/FIRMADOS"
cd "$HOME/FIRMADOS"

Con sello automático:

bash /ruta/scripts/firma_PDF_token_Sello_pie_multiple.sh /ruta/entrada/*.pdf

Sin sello:

bash /ruta/scripts/firma_PDF_sinsello_multiple.sh /ruta/entrada/*.pdf

También podés indicar varios archivos: bash /ruta/scripts/firma_PDF_sinsello_multiple.sh "/ruta/Nota uno.pdf" "/ruta/Nota dos.pdf". Si una carpeta contiene espacios, usá "/ruta/carpeta con espacios/"*.pdf.

Los resultados se guardan en la carpeta desde donde ejecutás el comando. No se sobrescriben archivos existentes y se omiten entradas terminadas en _firmado.pdf o _firmado_sin_sello.pdf. Si un documento falla, el lote continúa y muestra un resumen.

Se comprueba la integridad de las firmas anteriores y se firma de manera incremental, conservando los bytes originales. Si las restricciones del PDF impiden agregar una firma, ese documento se rechaza; la opción sin sello no evita esos controles.

Los dos Bash fueron probados con un token SafeNet/Gemalto en Ubuntu. Esta actualización está pendiente de prueba en Debian 13. Se requiere el controlador PKCS#11 del fabricante; con varios dispositivos se puede elegir el token, y con uno solo se selecciona automáticamente cuando se identifica de forma inequívoca.

La comprobación de integridad no sustituye la validación de confianza y revocación del certificado. Para verificar los archivos descargados, guardá SHA256SUMS junto a ellos y ejecutá sha256sum --ignore-missing -c SHA256SUMS.

Interfaz gráfica y los dos Bash

Tokens y controladores

La versión 2.2.2 permite detectar varios controladores PKCS#11 instalados. Evita duplicar un token cuando dos bibliotecas informan el mismo fabricante, modelo y número de serie. Con varios tokens distintos, permite elegir cuál utilizar.

Prueba realizada: firma con los dos Bash y el GUI de Ubuntu usando un token SafeNet/Gemalto. No se verificaron todas las variantes de hardware y firmware de esta tabla.

Token / varianteControlador LinuxEstado de prueba
eToken 5110+
Referencias NIST 4479 y 4480
SafeNet Authentication ClientFamilia SafeNet/Gemalto probada. Validación de las variantes exactas pendiente.
mToken CryptoID
K9 y A3 · firmware 3.12
Referencia NIST 4845
PKCS#11 de Longmai para la variante correspondienteIntegración PKCS#11 preparada; prueba física pendiente.
ePass2003
A3 y X15 · firmware 1.0.11
Referencia NIST 3799
PKCS#11 de FEITIAN; OpenSC si admite la varianteIntegración PKCS#11 preparada; prueba física pendiente.
ePass2003
V1.0 y V1.2 · firmware 1.3.02
Referencia NIST 5151
PKCS#11 de FEITIAN; OpenSC si admite la varianteIntegración PKCS#11 preparada; prueba física pendiente.

Las referencias NIST identifican las variantes informadas; esta página no acredita su vigencia regulatoria. La compatibilidad depende de la combinación de token, firmware, controlador y sistema operativo.

Si el controlador está instalado y el token no aparece

El firmador consulta ubicaciones habituales. Si tu proveedor instala la biblioteca en otra carpeta, creá ~/.config/pfsi/pkcs11.json con su ruta real:

{"modules": ["/ruta/absoluta/al/controlador.so"]}

Para elegir exclusivamente una biblioteca al ejecutar un Bash:

MODULE=/ruta/real/del/controlador.so bash firma_PDF_sinsello_multiple.sh documento.pdf

Usá la biblioteca provista para tu modelo y arquitectura. La detección no inicializa el token ni prueba contraseñas.

Información de fabricantes: Longmai CryptoID · FEITIAN PKI.

PFSI · Grupo GIDI

Acerca de las herramientas PFSI

Programa de Fortalecimiento de la Seguridad Informática

Grupo GIDI · Facultad de Ingeniería - UNMdP
Universidad Nacional de Mar del Plata

Herramientas del Programa de Fortalecimiento de la Seguridad Informática, Grupo GIDI, Facultad de Ingeniería - UNMdP.

Equipo de trabajo

Retrato de Carlos Alberto Rico

Carlos Alberto Rico

Lic. en Sistemas de Información
Director del Departamento de Ingeniería Informática
Director del Grupo GIDI
Profesor Asociado

Retrato de Valeria Alejandra Di Croce

Valeria Alejandra Di Croce

Ingeniera Informática
Vicedirectora del Departamento de Ingeniería Informática
Grupo GIDI
Profesora Adjunta

Retrato de Adolfo Tomás Spinelli

Adolfo Tomás Spinelli

Mg. en Ingeniería de Software
Miembro del Grupo GIDI
Profesor Adjunto

Retrato de Emilia La Grasta

Emilia La Grasta

Estudiante de Ingeniería Informática
Miembro del PFSI

Retrato de la Dra. María Velia Artigas

Dra. María Velia Artigas

Profesora Adjunta e investigadora
Departamento de Ingeniería Industrial
Facultad de Ingeniería

Retrato de Augusto Maletta

Augusto Maletta

Ingeniero en Informática
Docente

Contacto institucional

Juan B. Justo 4302 · (7600) Mar del Plata
Buenos Aires · Argentina

Teléfono: +54 223 604 3240
Correo: pfsi@fi.mdp.edu.ar