En LibreOffice se pueden firmar digitalmente los documentos y las macros. Cómo firmar digitalmente las macros se trata en el tema Seguridad de macros.
En este tema vamos a tratar la firma digital en documentos, en particular para documentos Writer.
La firma digital, también conocida como firma electrónica, es un conjunto de datos electrónicos que acompañan o que están asociados a un documento electrónico.
Sus funciones básicas son:
- Identificar al firmante de manera inequívoca
- Asegurar la integridad del documento firmado, ya que:
- Asegura que el documento firmado no ha sufrido alteración o manipulación alguna desde el momento en que se firmó.
- Los datos que utiliza el firmante para su firma son únicos y exclusivos y, por tanto, posteriormente, no podría negar que haya firmado el documento
En España, la base legal de la firma digital (firma electrónica) está recogida en la Ley 59/2003 de Firma Electrónica y se desarrolla en más profundidad en la sección Base legal de las Firmas. La sección también explora bajo qué circunstancias la ley equipara la firma electrónica a la firma manuscrita
Para firmar un documento digitalmente es necesario disponer de un certificado digital o, en España, de un DNI electrónico.
El certificado electrónico o el DNI electrónico contiene unas claves criptográficas que son los elementos necesarios para firmar.
Estos certificados electrónicos tienen el objetivo de identificar inequívocamente a su poseedor y son emitidos por Proveedores de Servicios de Certificación.
Para España podemos consultar el Portal Firma - Los certificados electrónicos para conocer más acerca de estos certificados. Esta web es la oficial del Gobierno de España.
Firmar un documento Writer
Para firmar digitalmente un documento se necesita una clave personal, el certificado (o en España también el DNI electrónico).
El certificado digital se almacena en el equipo del usuario. El certificado digital es un código electrónico resultante de la combinación de una clave privada, que debe ser secreta, y sólo conoce el propio usuario, y de una clave pública, que el usuario agrega a los documentos cuando los firma.
Al firmar digitalmente un documento, se calcula un tipo de suma de comprobación a partir del contenido del documento y de la clave personal. La suma de comprobación y la clave pública se almacenan con el documento.
Cuando el documento sea abierto más tarde en cualquier equipo que disponga de una versión actual de LibreOffice, se calcula de nuevo la suma de comprobación y se compara con la que está almacenada en el documento. Si ambas coinciden, significará que se está viendo el documento original y sin cambio alguno. Además, el programa puede mostrar la información de clave pública del certificado, clave que se puede comparar con la clave que se publica en la página web de la autoridad de certificación.
Para firmar un documento Writer basta con hacer clic en la barra de estado en el segmento reservado para la firma digital.
Segmento Firma digital en la barra de estado de Writer
También podemos activar la opción desde el menú Archivo > Firmas digitales > Firmas digitales.
En ambos casos se presenta el diálogo Firmas digitales desde el que podemos consultar, insertar o eliminar firmas digitales en el documento.
Diálogo Firmas digitales, permite consultar, insertar o eliminar firmas digitales
Tras hacer clic sobre el botón Firmar el documento se muestra el diálogo Seleccione un certificado, que permite ver una lista de los certificados instalados en el equipo, ver su certificado, o agregarlo al documento con un doble clic sobre la línea.
Diálogo Seleccione un certificado
En el momento en que se firma o se añade una firma al documento, el documento se guarda. No es necesario por tanto realizar un guardado posterior, que como veremos a continuación, eliminaría las firmas.
Modificar un documento firmado digitalmente
Un documento que ha sido firmado digitalmente puede ser modificado, sin restricción alguna. Si deseamos evitar su modificación debemos recurrir a las técnicas vistas en el tema Guardar con contraseña.
Lo que ocurre al guardar de nuevo un documento firmado digitalmente, modificado o no, es que se anula la firma digital. Writer presenta un aviso antes de guardar los cambios:
Aviso al intentar guardar un documento firmado digitalmente
Si guardamos los cambios no existirán firmas digitales, por lo que nada garantiza que el documento sea el original. Si el documento ya no tiene firma, es correcto deducir que puede haber sido alterado.
Verificar que un documento ha sido firmado digitalmente y mantiene la firma válida.
El resultado de la validación de firma se muestra en la barra de estado y dentro del diálogo Firma digital.
Documento firmado digitalmente
En la barra de estado se puede presentar alguno de los símbolos y mensajes siguientes tras abrir un documento firmado:
- Indica que la firma digital es válida.
- Indica que la firma digital es correcta, pero no se han podido validar los certificados, o no se han firmado todas las partes del documento.
- Indica que la firma digital no es válida.
Haciendo un doble clic sobre el segmento Firma digital, o activando la opción desde el menú Archivo > Firmas digitales > Firmas digitales, se muestra el diálogo Firmas digitales donde podremos consultar las distintas firmas insertadas.
En un documento Writer (ODF) pueden coexistir varias firmas, tanto de documento como de macro.
Si hay un problema con al menos una de las firmas contenidas, el resultado (negativo) de validación de dicha firma se asume para todas las firmas, y por tanto indicará que la firma digital no es válida; debemos presumir de nuevo que el documento puede haber sido alterado. La barra de estado y el campo de estado del cuadro de diálogo indicarán que la firma no es válida.
Avisos de seguridad
Si recibimos un documento firmado y LibreOffice indica que la firma es válida, no se puede tener absoluta seguridad de que el documento sea realmente el mismo que haya enviado el remitente. La firma de documentos con certificados de software es un método completamente seguro, pero existen muchas maneras de burlar estas medidas de seguridad. Por ejemplo, si una persona obtiene un certificado mediante un nombre falso.
Esto no ocurre con los certificados emitidos por instituciones gubernamentales, como por ejemplo la FNMT en España, pues el procedimiento para emitir certificados incluye la verificación en persona del solicitante, cuando es una persona física.
En cualquier caso, no debemos fiarnos en exclusiva del icono. Debemos examinar y verificar los certificados. Debemos tener en cuenta que la validación de una firma no es una garantía de obligación legal de ningún tipo.
En los sistemas operativos Windows se utilizan funciones de Windows para la validación de firmas. En los sistemas Solaris y Linux, se utilizan archivos proporcionados por Thunderbird, Mozilla o Firefox. Debemos asegurarnos de que los archivos que se utilizan en el sistema sean realmente los originales que proporcionan sus desarrolladores. Los intrusos malintencionados tienen muchas maneras de sustituir esos archivos originales.
Los mensajes relativos a la validación de una firma que vemos en LibreOffice los generan los archivos de validación. El software de LibreOffice no tiene forma de garantizar que los mensajes reflejen el estado auténtico de los certificados. El software de LibreOffice se limita a mostrar los mensajes de otros archivos que el informe de LibreOffice no controla. LibreOffice carece de responsabilidad legal alguna relativa a la autenticidad del estado de una firma digital.