Una firma digital es una técnica matemática para verificar la autenticidad del documento. Para los documentos, la firma digital está representada por un certificado con claves privadas y públicas. Como desarrollador de Java, puede firmar fácilmente sus documentos con certificados digitales mediante programación. Este artículo se centrará en cómo firmar electrónicamente documentos con firmas digitales utilizando Java.

Los siguientes temas se discuten/tratan en este artículo:

API de Java para firmar documentos

Usaré la API GroupDocs.Signature para Java para firmar documentos con el certificado digital. Le ayuda a desarrollar aplicaciones Java para firmar electrónicamente documentos digitales de formatos admitidos. También permite firmar imágenes y documentos con firmas electrónicas de tipo Imagen, Código QR, Código de barras, Metadatos, Texto y Sello.

Descargar y configurar

Puede descargar el JAR de la API o simplemente agregar la siguiente configuración pom.xml en sus aplicaciones Java basadas en Maven para probar los ejemplos de código mencionados a continuación.

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-signature</artifactId>
        <version>20.9</version> 
</dependency>

Firme documentos PDF con firmas digitales utilizando Java

Puede firmar electrónicamente sus documentos PDF con firmas digitales siguiendo los sencillos pasos que se mencionan a continuación:

  • Crear una instancia de la clase Firma
  • Proporcione la ruta del documento PDF
  • Cree una instancia de la clase DigitalSignOptions
  • Proporcione la ruta del archivo del certificado
  • Establecer la ruta del archivo de imagen
  • Establezca las opciones de signo requeridas, como la posición (Superior, Izquierda, etc.)
  • Luego llame al método Sign para firmar el documento

El siguiente ejemplo de código muestra cómo firmar los documentos PDF con el certificado mediante Java.

Signature signature = new Signature("sample.pdf");

// Definir opciones de firma digital  
DigitalSignOptions options = new DigitalSignOptions("Signature.pfx");
options.setImageFilePath("signature.jpg");
options.setLeft(100);
options.setTop(200);
options.setPageNumber(1);

// Firmar documento para archivar
signature.sign("output.pdf", options);
Firmar Documento PDF con Certificado Digital usando Java

Firmar Documento PDF con Certificado Digital usando Java

La clase Signature es la clase principal que controla el proceso de firma de documentos. Esta clase proporciona varios métodos para firmar, verificar, actualizar y buscar firmas.

La clase DigitalSignOptions proporciona varios métodos para establecer y obtener opciones de firmas para representar firmas digitales.

Firme documentos de Word con firmas digitales usando Java

Puede firmar electrónicamente sus documentos de Word con firmas digitales siguiendo los sencillos pasos que se mencionan a continuación:

  • Crear una instancia de la clase Firma
  • Proporcione la ruta del archivo de Word
  • Cree una instancia de la clase DigitalSignOptions
  • Proporcione la ruta del archivo del certificado
  • Establecer la ruta del archivo de imagen
  • Establezca las opciones de signo requeridas, como la posición (Superior, Izquierda, etc.)
  • Luego llame al método Sign para firmar el documento

El siguiente ejemplo de código muestra cómo firmar el archivo DOCX con el certificado usando Java.

Signature signature = new Signature("sample.docx");

// Definir opciones de firma digital  
DigitalSignOptions options = new DigitalSignOptions("Signature.pfx");
options.setImageFilePath("signature.jpg");
options.setPassword("1234567890");
options.setReason("Approved");
options.setContact("John Smith");
options.setLocation("New York");
options.setAllPages(true);
options.setWidth(160);
options.setHeight(80);
options.setTop(400);
options.setLeft(100);

// Firmar documento para archivar
signature.sign("output.docx", options);
Firme documentos de Word con certificados digitales usando Java

Firme documentos de Word con certificados digitales usando Java

Obtenga una licencia gratis

Puede probar la API sin limitaciones de evaluación solicitando una licencia temporal gratuita.

Conclusión

En este artículo, ha aprendido a firmar electrónicamente documentos con firmas digitales utilizando Java. Puede obtener más información sobre GroupDocs.Signature para la API de Java utilizando la documentación. En caso de cualquier ambigüedad, no dude en contactarnos en el foro.

Ver también