Firmador digital de documentos para Costa Rica

Firmador es un pequeño programa de escritorio para firmar documentos que cumplan la Política de Formatos Oficiales de los Documentos Electrónicos Firmados Digitalmente publicada por el MICITT.

Esta herramienta se ha diseñado para ser simple, fácil de usar y que funcione en múltiples sistemas operativos. La descarga es relativamente ligera y requiere tener instalado Java 8 y los controladores de Soporte Firma Digital.

Por ahora firma documentos PDF. En próximas versiones el programa soportará otros formatos de documento electrónico oficial y otras mejoras.

El programa es software libre y abierto a la colaboración de cualquier persona interesada para mejorar su código o utilizarlo para cualquier propósito.

Firmador tiene su propio sitio web: https://firmador.libre.cr

25 comentarios en “Firmador digital de documentos para Costa Rica

  1. Geovanny:

    Alguien tiene el manual para implementar /usar el firmador desde sistemas web?

    1. Francisco de la Peña:

      Hola Geovanny, el principal obstáculo para firmar desde web es que debe haber una comunicación entre el programa de firma y el sitio web. No todos los navegadores permiten acceso a dispositivos USB y en el caso de las tarjetas de Firma Digital de Costa Rica no se puede operar con ellas por USB en crudo y necesitan un middleware propietario, por lo que la forma para poder firmar un documento en remoto se complica.

      La forma más rudimentaria sería generar un bloque tipo CMS (PKCS#7) para firmar localmente en lugar de descargar el fichero y volverlo a subir entero. Si no hay ningún tipo de comunicación, podría generarse en pantalla un bloque base64 de ese bloque CMS para copia-pega en una aplicación, donde se firmaría y se subiría de vuelta. Algo parecido a lo que se hace con el firmador de factura electrónica de Hacienda.

      Si por el contrario se desea que verdaderamente exista esta comunicación, tengo un artículo de blog donde se explica resumidamente cómo lograrlo ( https://fran.cr/soluciones-modernas-para-usar-firma-digital-desde-la-web/ ) aunque requiere instalar software en las máquinas que generen un certificado autofirmado para la comunicación por TLS con el sitio web y esto es bastante más complicado. Mi objetivo es llegar a este punto, aunque ahora mismo estoy enfocado en agregar firma visible al firmador de forma accesible (texto en lugar de imagen), algo que ya tengo funcional y he comenzado la semana pasada a implementarlo.

  2. Cornelio Urbina:

    Quisiera saber si con este formador se pueden firmar documentos en word, PDF y Excel. En caso afirmativo cómo se hace. Asumiendo que se cuenta con el software BCCR y el firmador instalado. Gracias por su respuesta

    1. Francisco de la Peña:

      Hola, por el momento permite firmar PDF. Para firmar Word y Excel se puede realizar desde esos mismos programas (Word y Excel, versión escritorio). También es posible exportar los documentos de Word y Excel a PDF y firmar el PDF con la herramienta Firmador. Existe soporte parcial para firma XML (XAdES) y de OpenDocument (LibreOffice) pero todavía necesita mejoras. Saludos.

  3. Norman A:

    Buenas tardes, gracias por su aporte, nada más que me aparece error cuando intento firmar con el “firmador.libre.cr”, quisera saber ¿si existe alguna solución o si bien existen otros programas para firmar pdf de software libre?

    1. Francisco de la Peña:

      Buenas tardes Norman, ¿qué tipo de error le aparece? Quizás pueda solucionarse.

      La aplicación de firmador.libre.cr se creó por la falta de alternativas, el propósito es poderla mejorarla y mantenerla a lo largo del tiempo.

  4. Gerardo:

    No soy de CostaRica, uso drivers athena tambien, pero mi proveedor me dice que no tiene los drivers de linux (deb, rmp, x64 y x86) ni de mac (tengo solo los de windows), podrias compartirmelos?

    1. Francisco de la Peña:

      Buenas, en la web soportefirmadigital.com se pueden descargar ingresando el número de serie que viene en las tarjetas de Athena. Suele ser el que aparece en el identificador del token. Suele venir en el reverso de las tarjetas, o identificado en Windows como idprotect#xxxxxxxxxxxxxxx donde las x es el número de serie a utilizar. Si no funcionara para descargar desde ahí, me avisas.

  5. Robert Svensson:

    Estimado Francisco. Solamente querría agradecerle y decir MUCHAS GRACIAS por esta herramienta muy útil que realmente funciona y cumple con lo que promete, y además gratuita! Un comentario: Como la firma se ubica en exactamente el mismo lugar en cada página (en el caso de archivos PDF multipáginas) tenía que usar otra herramienta gratuita (http://www.sodapdf.com/) para separar las páginas a archivos conteniendo una sola página en cada archivo, para luego poder colocar la firma en el lugar exacto en cada página.

    1. Francisco de la Peña:

      Hola Robert, muchas gracias y qué alegría que resulte de utilidad la aplicación.
      En cuanto a lo que mencionas, el firmador permite mover de posición la firma visible: el rectángulo que aparece se puede arrastrar con el mouse.
      Si se van a agregar múltiples firmas se puede mover para reubicarlo y por tanto sin necesidad de modificar el documento. A no ser que no haya entendido bien a lo que te referías.
      Saludos.

  6. Luis:

    Hola, buenas tardes. Estoy usando ahora el iOs Big Sur en mac y el firmador libre sirve unas veces y otras no. (no se abre la ventana de guardar documento) (en otras aplicaciones de firma digital con otros firmadores, si funciona.
    Encontré que re-iniciando la computadora, y realizando la firma con el firmador libre (como la primera acción luego de reiniciar) si logra abrir la ventana de guardar documento.
    Alguna solución?
    Muchas gracias.

    1. Francisco de la Peña:

      Buenas tardes Luis:
      Si se trata de una intermitencia (a veces funciona y a veces no), es posible que haya problemas de conectividad de red o de DNS, ya que el firmador se conecta a los servidores de Firma Digital para consultar la información de estado de revocación de certificados (CRL, OCSP) y solicitar un sello de tiempo al servicio TSA del SINPE. En caso de problemas de conectividad el firmador podría tras un rato mostrar un mensaje de error.
      También podría ser causa de algún bloqueo de red debido a algún filtro de red en caso de que esté en una red corporativa.
      Hoy mismo me informaron que estaban reportando algunos problemas con el proveedor de internet Tigo, aunque quizás se deba solamente a una inestabilidad en los servidores DNS. Si fuera problema de DNS es posible configurarlos por otros alternativos.
      También podría ser algún otro problema dentro de macOS no identificado, aunque en pruebas locales con Big Sur no he tenido problemas para firmar múltiples veces. Desconozco si en su caso intentando desconectar la tarjeta del lector y volviéndola a conectar permite evitar el reinicio.
      Saludos.

  7. Carlos Zamora:

    Hola, existe algún url espejo para bajar el instalador?
    Me parece que no encuentra el sitio.

    1. Francisco de la Peña:

      Hola Carlos, ¿tiene por casualidad instalado algún sistema Antivirus de marca ESET? Este antivirus tiene un filtro que es incompatible con subdominios de algunos sitios web y hace que muchos sitios web no carguen por error de certificado. Si fuera el caso, es posible agregar una excepción o desactivarlo temporalmente para cargar el sitio web. No es un falso positivo sino un problema de este antivirus (este antivirus utiliza una técnica man in the middle para escanear tráfico TLS) y el sitio web utiliza técnicas modernas de seguridad incompatibles con este mecanismo del antivirus.
      Si no fuera el caso de usar este antivirus, agradecería que me indicara el mensaje de error que aparece. Muchas gracias.

    2. Francisco de la Peña:

      Buenas nuevamente Carlos, también es posible que si se hubiera seguido la guía de soportefirmadigital.com para la instalación del firmador libre, que el video contiene la dirección https://www.firmador.libre.cr cuando debería ser https://firmador.libre.cr (sin el www) para que cargue correctamente. Agregaré en el futuro un subdominio de cuarto nivel solo para mitigar el problema existente en la documentación de Soporte Firma Digital.
      Saludos.

    3. Francisco de la Peña:

      Buenas noches Carlos:
      Disculpas por las molestias, efectivamente ayer no estaba funcionando el sitio web, el cache de DNS me impidió encontrar el problema y no estaba afectando a otros dominios. Ya se ha corregido la situación y debería poder acceder de nuevo.

  8. Adonay Solís:

    Hola, buenas noches. Desde el día jueves, no logro ingresar al sitio web https://firmador.libre.cr, me genera un error de “Servidor no encontrado”. ¿Existe algún problema con el sitio web?

    1. Francisco de la Peña:

      Buenas noches Adonay, muchísimas gracias por el aviso. Acabo de revisar y efectivamente hay una confusión en la configuración de DNS (técnicamente, uno de los nameservers tiene problemas con la firma NSEC y provocando una respuesta SERVFAIL, debido al conflicto con otros nameservers definidos para otro servidor). Estoy tratando de mitigar la situación. Tan pronto como lo tenga listo le aviso por aquí.

  9. Adonay Solís:

    Hola, buenas trades. ¿Quisera saber si el programa actualmente permite firmar en otros formatos de documento electrónico oficial distinto del PDF? Gracias

    1. Francisco de la Peña:

      Buenas tardes Adonay, el firmador permite firmar documentos en formato OpenDocument (.odt, .ods, .odp, .odg) de LibreOffice. También puede firmar de forma genérica ficheros con la firma por separado (XAdES o CAdES detached). Por el momento no firma documentos de Microsoft Office.
      Hay planes de agregar soporte de firma de facturas electrónicas en el futuro, e investigar opciones para firmar documentos de Microsoft Office pero no hay una fecha para su desarrollo.

        1. Francisco de la Peña:

          Con gusto. El firmador tiene otras características avanzadas no mostradas en la interfaz, entre las que destacan firma de documentos desde sitio web, imagen personalizada en la firma visible, opción para lanzarlo para firma automática sin interfaz gráfica para servidores, firma con sello electrónico (persona jurídica), entre otras.
          Existe una breve documentación sobre estas características en el documento “preguntas-frecuentes.md” en el repositorio de código fuente.

Deja un comentario

Tu dirección de correo electrónico no será publicada.