Catálogo completo de características del suite de firma digital sgcSign — estándares de firma, proveedores de claves, perfiles por país, validación, integración con la EU Trust List e informes de validación ETSI para Delphi 7 hasta Delphi 13 Florence, C++Builder y .NET.
ARQUITECTURA
Tres capas, un solo motor
sgcSign separa la gestión de claves, las operaciones de firma y los formatos de salida. Combina cualquier proveedor de claves con cualquier firmador; cambia entre PFX local y KMS en la nube cambiando un solo componente.
Proveedores de claves (IsgcKeyProvider)
Abstrae el acceso a certificados y claves privadas tras una única interfaz. Archivos locales, almacén de certificados de Windows, tokens hardware PKCS#11, Azure / AWS / Google Cloud KMS, HashiCorp Vault, Certum SimplySign y QTSP remotos CSC v2.
Firmadores
Firmadores especializados para cada formato ETSI: TsgcXAdESSigner, TsgcPAdESSigner, TsgcCAdESSigner, TsgcAuthenticodeSigner. Además, TsgcDocumentSigner — una API unificada de alto nivel que selecciona y configura el firmador adecuado a partir de un perfil de país. TsgcSAFTPTSigner produce la firma de factura de la Portaria 363/2010 de Portugal.
Componentes auxiliares
TsgcTSAClient (sellos de tiempo RFC 3161), TsgcOCSPClient (revocación), TsgcSignatureVerifier (validación), TsgcX509Certificate (decodificación de certificados y verificación del emisor), TsgcEUTrustList (LOTL/EUTL), TsgcASiCContainer (empaquetado ZIP ASiC-S/ASiC-E).
ESTÁNDARES DE FIRMA
XAdES, PAdES, CAdES, ASiC y Authenticode
Cobertura completa de formatos de firma ETSI en los cuatro niveles AdES (B-B, B-T, B-LT, B-LTA), además de Microsoft Authenticode para firma de código.
XAdES — ETSI EN 319 132
XML Advanced Electronic Signatures. Modos enveloped, detached y enveloping. Niveles B-B / B-T / B-LT / B-LTA. SignatureParentElement para formatos enveloped que fijan la ubicación de la firma (KSeF /v2/auth/xades-signature). Diacríticos polacos, españoles y alemanes mediante sobrecargas WideString en Delphi 7+.
PAdES — ETSI EN 319 142
PDF Advanced Electronic Signatures. Firmas integradas dentro del PDF; apariencia de firma visible con nombre del firmante, motivo, ubicación, datos de contacto y rectángulo configurable. Compatible con Adobe Acrobat. Niveles PAdES-T y -LT mediante TSA + OCSP.
CAdES — ETSI EN 319 122
Firmas binarias CMS/PKCS#7 sobre cualquier archivo o flujo de datos. Formas detached y attached. CAdES-BES, CAdES-T (con sello de tiempo) y CAdES-XL (a largo plazo con valores de revocación).
ASiC-S / ASiC-E — ETSI EN 319 162
Associated Signature Containers. Archivo en formato ZIP que agrupa uno o varios documentos con una firma XAdES o CAdES. Simple (apASiCS, un solo documento) o extendido (apASiCE, manifiesto + varios documentos). La primera entrada del ZIP es un marcador mimetype sin comprimir para que los verificadores detecten el contenedor en los primeros ~50 bytes.
Authenticode — Firma de código
Microsoft Authenticode para archivos Windows PE (.exe, .dll, .sys, .ocx, .cpl, .scr). Algoritmos de hash SHA-1, SHA-256 (por defecto), SHA-384 y SHA-512. Tokens de sello de tiempo RFC 3161. Firmas anidadas (duales) para compatibilidad con verificadores antiguos y modernos. Disponible en sgcSign Server.
Niveles AdES — B-B / B-T / B-LT / B-LTA
Compatibilidad con los cuatro niveles de conformidad ETSI para cada formato: B-B (básico), B-T (sello de tiempo), B-LT (largo plazo, con valores de revocación), B-LTA (archivado, con sello de tiempo de archivo). Pasa una firma de B-B a B-LT añadiendo un cliente TSA y un respondedor OCSP.
10 PROVEEDORES DE CLAVES
Locales, hardware, nube y QTSP remotos
Cada proveedor implementa IsgcKeyProvider. Cambia entre cualquiera de estas fuentes de claves sin modificar tu código de firma.
Componente
Tipo
Caso de uso
TsgcPFXKeyProvider
Archivo local (PKCS#12)
Archivos PFX/.p12 protegidos por contraseña. Soporte nativo de Windows CNG.
TsgcPEMKeyProvider
Archivo local (PEM)
Certificados PEM con claves PKCS#8 cifradas. Descifrado nativo PBES2 / PBKDF2 / AES-CBC — no requiere DLL de OpenSSL.
TsgcWindowsCertStoreProvider
Almacén de Windows
Almacenes de máquina local y de usuario actual. Integración con Active Directory y directiva de grupo.
TsgcPKCS11Provider
Token hardware
Tarjetas inteligentes y HSM mediante driver PKCS#11 — SafeNet, YubiKey, Nitrokey, Thales, Utimaco, etc.
TsgcAzureTrustedSigningProvider
Nube (Microsoft)
Azure Trusted Signing — el servicio de firma cualificada de Microsoft. Credenciales de cliente OAuth2. Distinto de Azure Key Vault.
TsgcAWSKMSKeyProvider
Nube (AWS)
AWS Key Management Service. Las claves permanecen en AWS; de la red solo salen los hashes de los documentos.
TsgcGCloudKMSKeyProvider
Nube (Google)
Google Cloud Key Management. Autenticación con cuenta de servicio.
TsgcHashiCorpVaultKeyProvider
Nube (autoalojada)
Motor de firma transit de HashiCorp Vault. Las claves nunca salen del clúster Vault.
TsgcCertumSimplySignProvider
QTSP remoto
Certum SimplySign — proveedor cualificado polaco de firma electrónica. Compatible con KSeF, ZUS y PUE.
TsgcCSCKeyProvider
QTSP remoto (CSC v2)
Cliente genérico Cloud Signature Consortium v2 — Universign, D-Trust sign-me, A-Trust, FNMT Cl@ve Firma, Evrotrust, Intesi Group y cualquier QTSP que exponga la API CSC v2.
21 PERFILES POR PAÍS PRECONFIGURADOS
Facturación electrónica europea y firma de contratos laborales
Cada perfil ajusta de antemano el algoritmo de hash, la canonicalización, el nivel de firma, la política de sello de tiempo RFC 3161 y las expectativas de revocación OCSP para cumplir con el regulador del país de destino. Cambia de jurisdicción con una sola línea.
Perfiles de facturación electrónica (12)
Perfil
País
Sistema
Formato
Nivel
spVeriFactu
España
VeriFactu (AEAT)
XAdES-EPES
B-B
spTicketBAI
España (País Vasco)
TicketBAI
XAdES-EPES
B-B
spFacturaeB2B
España
Facturae 3.x / FACe
XAdES-EPES
B-T
spFatturaPA
Italia
FatturaPA (SDI)
XAdES-BES
B-B
spSAFTPT
Portugal
SAF-T PT
RSA-SHA256
B-B
spKSeF
Polonia
KSeF (Krajowy System e-Faktur)
XAdES
B-T
spFacturX
Francia / Alemania
Factur-X / ZUGFeRD
XAdES
B-B
spEFactura
Rumania
e-Factura (ANAF)
XAdES
B-T
spNAVOnline
Hungría
NAV Online
XML-DSig
B-B
spFiskalizacija
Croacia
Fiskalizacija
XML-DSig
B-B
spPeppolBE
Bélgica
Peppol UBL 2.0
XAdES
B-T
spPeppolBG
Bulgaria
Peppol UBL 2.1
XAdES
B-T
spMyDATA
Grecia
myDATA (AADE)
XAdES
B-B
Portugal: además de firmar el propio archivo SAF-T (PT), el componente dedicado TsgcSAFTPTSigner produce la firma por factura de la Portaria 363/2010, la firma RSA-SHA1 cuyos cuatro caracteres en las posiciones 1, 11, 21 y 31 se imprimen en la factura y se incluyen en el campo Q del código QR.
TicketBAI: las variantes por provincia spTicketBAIAraba, spTicketBAIBizkaia y spTicketBAIGipuzkoa incluyen cada una el identificador oficial de política de firma y el digest SHA-256 de la Hacienda de su provincia. spTicketBAI se asigna al par de Bizkaia por compatibilidad con versiones anteriores.
Perfiles de contratos laborales de la UE (9)
Firmas compatibles con eIDAS para los requisitos de derecho laboral de los Estados miembros (por ejemplo, § 126a BGB en Alemania, FEQ en Italia). Preajustadas por jurisdicción; se cargan en TsgcXAdESSigner mediante Profile.LoadProfile(spEmploymentXX).
Perfil
País
Nivel
Hash
Sello de tiempo
OCSP
Notas
spEmploymentDE
Alemania
B-LT
SHA-256
Sí
Sí
QES requerida por el § 126a BGB para contratos en forma escrita.
spEmploymentIT
Italia
B-LT
SHA-256
Sí
Sí
Firma cualificada FEQ; los portales del INPS aceptan XAdES y CAdES.
spEmploymentES
España
B-T
SHA-256
Sí
No
Basta con AdES. Los portales SEPE / TGSS exigen FNMT o DNIe.
spEmploymentFR
Francia
B-T
SHA-256
Sí
No
AdES sirve; se prefiere QES para firma remota bajo DSP2 / RGS.
spEmploymentAT
Austria
B-LT
SHA-256
Sí
Sí
Habitual usar QES mediante Handy-Signatur / ID Austria.
spEmploymentBE
Bélgica
B-LT
SHA-256
Sí
Sí
QES mediante tarjeta eID (BeID).
spEmploymentPT
Portugal
B-LT
SHA-256
Sí
Sí
QES mediante Cartão do Cidadão / Chave Móvel Digital.
spEmploymentNL
Países Bajos
B-T
SHA-256
Sí
No
AdES suele ser aceptada; QES para algunos portales de RR. HH. (UWV).
spEmploymentPL
Polonia
B-T
SHA-256
Sí
No
QES mediante Profil Zaufany o certificado cualificado cuando el contrato va a ZUS / PUE.
VALIDACIÓN Y CONFIANZA
Verifica como lo hace la UE
Pipeline de validación completo más integración con la EU Trust List y el informe de validación XML estandarizado ETSI TS 119 102-2 — prueba legal de validez de firma aceptada por los tribunales laborales de la UE y los verificadores de la administración pública.
Verificación de firma con LTV
TsgcSignatureVerifier cubre todo el pipeline: comprobaciones de digest, verificación de firmas RSA / ECDSA, validación de la cadena de certificados, comprobación de revocación OCSP, RevocationValues embebidos para validación a largo plazo y búsqueda de fragmentos por Id para SignedProperties.
EU Trust List (LOTL / EUTL)
TsgcEUTrustList parsea la List of Trusted Lists ETSI TS 119 612 y las ~31 Trusted Lists por Estado miembro. Clasifica cualquier certificado X.509 como cualificado eIDAS consultándolo en el registro vivo de la UE. Caché en modo offline para despliegues aislados.
Informe de validación ETSI TS 119 102-2
Informe XML de validación estandarizado (v1.2.1) generado para cada verificación — el formato aceptado por los tribunales laborales de la UE y los verificadores de la administración pública como prueba legal de validez de firma.
Sellos de tiempo RFC 3161
TsgcTSAClient se conecta a cualquier autoridad de sellado de tiempo RFC 3161. Eleva las firmas de B-B a B-T, B-LT y B-LTA — verificables mucho después de que el certificado de firma haya expirado.
Revocación OCSP
TsgcOCSPClient realiza comprobaciones Online Certificate Status Protocol RFC 6960. Revocación en tiempo real, con la respuesta OCSP embebida en las firmas B-LT para que el documento siga siendo verificable cuando el respondedor esté después fuera de línea.
Decodificador de certificados X.509 y comprobación del emisor
TsgcX509Certificate expone todos los campos que muestra un decodificador en línea: tamaño de clave, nombres de algoritmo, número de serie (dos puntos y decimal), nombres distinguidos RFC 2253 / LDAP, políticas de certificado, identificadores de clave, huellas SHA-1 / SHA-256 / MD5 y el pin SubjectPublicKeyInfo SHA-256. Verifica criptográficamente la firma del emisor (RSA y ECDSA), resuelve la CA desde la URL AIA caIssuers y ejecuta una comprobación OCSP automática mediante CheckCertificateAuto.
Canonicalización XML (C14N)
C14N inclusiva (xml-c14n11) y C14N exclusiva (xml-exc-c14n) para un procesamiento coherente de firmas XML. Cada perfil de país selecciona la canonicalización que espera su regulador.
BASES
Nativo, autocontenido y multi-versión
Cero DLL externas
Criptografía Windows CNG / BCrypt en todo — no requiere DLL de OpenSSL. PBES2 / PBKDF2 / AES-CBC nativos para PEM PKCS#8 cifrados. WinHTTP para las operaciones de red.
Delphi 7 hasta Delphi 13 Florence
Compatible con todos los compiladores Delphi desde Delphi 7 hasta RAD Studio 13, además de C++Builder. Las unidades modernas están protegidas para compatibilidad heredada (por ejemplo, TsgcASiCContainer requiere genéricos D2010+; compila como unidad vacía en D7).
Implementación .NET
Port espejo en C# para .NET Framework 2.0–4.8, .NET Core, .NET 5–9 y .NET Standard. Mismos nombres de clase Tsgc*; misma superficie de API que la biblioteca Delphi.
Código fuente completo
Código fuente completo incluido con cada licencia. Inspecciona, personaliza, audita y amplía. Nombres de clase de componente registrados para integración en tiempo de diseño en el IDE.
Sellos de tiempo UTC en todo
Todos los sellos de tiempo X.509 / CRL / OCSP / TSA se almacenan como valores TDateTime en UTC, conforme a RFC 5280, RFC 3161 y RFC 6960. Conversión a hora local mediante las propiedades *Local de cada componente.
Cero royalties en tiempo de ejecución
Redistribución binaria gratuita. Firma todos los documentos que quieras sin tarifas por documento ni licencias por despliegue.
EJEMPLOS DE CÓDIGO
La misma API, tres fuentes de claves distintas
Firma una factura VeriFactu con un PFX local
Un único componente de alto nivel (TsgcDocumentSigner)
El perfil selecciona XAdES-EPES, B-B, SHA-256, C14N exclusiva
Cambia a spFatturaPA para Italia o spKSeF para Polonia