Aplicación de firmas digitales en IronPDF

This article was translated from English: Does it need improvement?
Translated
View the article in English

Una firma digital es un método criptográfico que se puede agregar a documentos PDF existentes utilizando la biblioteca IronPDF. Esto incluye agregar firmas únicas y múltiples firmas con ahorros incrementales.

Certificado de firma digital compatible

IronPDF admite certificados de firma digital en el formato .pfx para Windows y el formato .p12 para macOS. Estos cumplen con el estándar X509Certificate2 . Puede verificar el formato de su certificado de firma digital existente comprobando su extensión de archivo.

Si no tiene un certificado en el formato requerido, consulte esta documentación para crear un nuevo certificado estándar X509Certificate2. El certificado resultante luego puede ser utilizado y aplicado a un documento PDF a través de IronPDF.

Por favor notaIronPDF solo admite X509KeyStorageFlags.Exportable . Algunos certificados tienen KeyStorageFlags configurado en Exportable por defecto. Intentar usar diferentes KeyStorageFlags resultará en una excepción siendo lanzada.

Firma con imagen

Se puede agregar una imagen al documento PDF para indicar visualmente que el documento ha sido firmado digitalmente. Esto se puede lograr utilizando IronPDF con el siguiente fragmento de código:

// Create a PdfSignature object by specifying the certificate file (.pfx) and its password
var sig = new PdfSignature("IronSoftware.pfx", "123456");

// Set the signature image which includes the image path, page number, and its position in the document
sig.SignatureImage = new PdfSignatureImage("IronSoftware.png", 0, new Rectangle(0, 600, 100, 100));
// Create a PdfSignature object by specifying the certificate file (.pfx) and its password
var sig = new PdfSignature("IronSoftware.pfx", "123456");

// Set the signature image which includes the image path, page number, and its position in the document
sig.SignatureImage = new PdfSignatureImage("IronSoftware.png", 0, new Rectangle(0, 600, 100, 100));
' Create a PdfSignature object by specifying the certificate file (.pfx) and its password
Dim sig = New PdfSignature("IronSoftware.pfx", "123456")

' Set the signature image which includes the image path, page number, and its position in the document
sig.SignatureImage = New PdfSignatureImage("IronSoftware.png", 0, New Rectangle(0, 600, 100, 100))
$vbLabelText   $csharpLabel

Asegúrese de que la propiedad del archivo de imagen se establezca en "CopyToOutputDirectory=always" en el proyecto para que la imagen pueda ser encontrada y renderizada en el documento PDF una vez que se haya aplicado la firma.

Para aprender más sobre cómo aplicar firmas digitales a través de IronPDF, consulte Firmar Digitalmente un Documento PDF.

Para soporte técnico, por favor vea Cómo Hacer una Solicitud de Soporte Técnico para IronPDF.

Firmas digitales en el contexto español: eIDAS, PAdES y TicketBAI

El uso de firmas digitales en documentos PDF tiene una regulación específica en España que todo desarrollador de software de facturación debe conocer.

Certificados FNMT y firma PAdES cualificada bajo eIDAS

El FNMT (Fábrica Nacional de Moneda y Timbre) emite certificados digitales reconocidos por el Estado español para ciudadanos, empresas y entidades. Los certificados FNMT son certificados cualificados bajo el reglamento eIDAS (Reglamento UE nº 910/2014), lo que implica que las firmas electrónicas realizadas con ellos tienen plena validez jurídica en toda la Unión Europea.

Para documentos PDF firmados con certificados FNMT en entornos .NET, el estándar de firma recomendado es PAdES (PDF Advanced Electronic Signatures), que es el perfil definido por ETSI EN 319 102 para firmas electrónicas en PDF conforme a eIDAS. Al cargar un certificado FNMT mediante X509Certificate2 en IronPDF, asegúrese de que el certificado incluya la cadena completa de confianza (root CA del FNMT) para que la firma sea validada correctamente por Adobe Reader y los sistemas de la AEAT.

TicketBAI: requisitos de firma XAdES por foral vasca

El sistema TicketBAI, obligatorio para autónomos y empresas en el País Vasco, requiere que los ficheros XML de tique se firmen con XAdES (XML Advanced Electronic Signatures) antes de su presentación a las haciendas forales. Cada foral tiene su propio endpoint y certificado admitido:

  • Bizkaia (bizkaia.eus): admite certificados de representante de persona jurídica emitidos por FNMT y otras CA acreditadas.
  • Gipuzkoa (gipuzkoa.eus): requiere certificado electrónico de entidad; la validación de firma es obligatoria antes de la presentación del XML.
  • Araba (araba.eus): acepta certificados FNMT de empresa; el XAdES debe incluir el sello de tiempo (timestamp) TSA.

Aunque IronPDF gestiona firmas PAdES sobre documentos PDF (la representación visual del tique), la firma XAdES del XML TicketBAI es responsabilidad del componente de facturación que genera el fichero. IronPDF actúa como componente de generación de la representación PDF del tique ya firmado, no como firmante del XML.

VeriFactu y la leyenda obligatoria estampada en PDF

En el sistema VeriFactu (anti-fraude de software de facturación regulado por la AEAT), la factura generada en PDF debe incluir la leyenda *VERIFACTU** (con asterisco obligatorio entre "VERI" y "FACTU") y el código QR de verificación de la sede electrónica de la AEAT. Estos elementos son responsabilidad del proveedor de software de facturación. IronPDF puede incrustar esta leyenda mediante TextStamper y el código QR mediante ImageStamper sobre el PDF generado.

Nota para ISVs españoles: El incumplimiento de VeriFactu por parte de los proveedores de software de facturación puede acarrear sanciones de hasta 150.000 €/año según la regulación de la AEAT. IronPDF se usa como componente dentro del software certificado; la certificación ante la AEAT es responsabilidad del proveedor.

LOPDGDD y firma de documentos con datos personales

La LOPDGDD (Ley Orgánica de Protección de Datos y Garantía de Derechos Digitales) exige que los documentos PDF que contengan datos personales sean legibles, íntegros y no repudiables. La aplicación de firmas digitales PAdES con IronPDF sobre facturas, nóminas u otros documentos con datos personales contribuye al cumplimiento de estos requisitos de integridad documental.

Preguntas Frecuentes

¿Cómo se aplica una firma PAdES cualificada con certificado FNMT en IronPDF?

Para aplicar una firma PAdES cualificada bajo eIDAS con un certificado FNMT en IronPDF, cargue el certificado .pfx del FNMT mediante X509Certificate2 con X509KeyStorageFlags.Exportable y páselo a PdfSignature. Asegúrese de que el certificado incluya la cadena completa de confianza del FNMT para que la firma sea reconocida por Adobe Reader y los sistemas de la AEAT. IronPDF generará la firma PAdES incrustada en el PDF.

¿Puede IronPDF firmar el XML TicketBAI con XAdES para las haciendas forales de Bizkaia, Gipuzkoa y Araba?

IronPDF gestiona firmas PAdES sobre documentos PDF, no firmas XAdES sobre ficheros XML. La firma XAdES del XML TicketBAI es responsabilidad del componente de facturación que genera el fichero. IronPDF actúa como componente de generación de la representación PDF del tique TicketBAI ya firmado, que luego puede incluir la leyenda VERI*FACTU y el QR de verificación de la AEAT mediante TextStamper e ImageStamper.

Curtis Chau
Escritor Técnico

Curtis Chau tiene una licenciatura en Ciencias de la Computación (Carleton University) y se especializa en el desarrollo front-end con experiencia en Node.js, TypeScript, JavaScript y React. Apasionado por crear interfaces de usuario intuitivas y estéticamente agradables, disfruta trabajando con frameworks modernos y creando manuales bien ...

Leer más
¿Listo para empezar?
Nuget Descargas 19,014,616 | Versión: 2026.5 just released
Still Scrolling Icon

¿Aún desplazándote?

¿Quieres una prueba rápida? PM > Install-Package IronPdf
ejecutar una muestra Mira cómo tu HTML se convierte en PDF.