Modern Signature Providers

HPDFSignatureProvider sépare l'analyse et l'encodage CMS du stockage de la clé privée et de la cryptographie de plateforme

Algorithmes de vérification

HPDFVerifyCMSSignatureEx vérifie les signatures CMS en mode pur Ed25519 et Ed448 via THPDFPlatformSignatureProvider ou un fournisseur fourni par l'appelant et enregistre l'OID de signature exact dans THPDFSignatureInfo.SignatureAlgorithmOID

ML-DSA-44, ML-DSA-65 et ML-DSA-87 utilisent le fournisseur de plateforme lorsqu'il est disponible, mais la vérification de documents chargés ne les active que lorsque le Catalog déclare l'extension de développeur HotPDF PDF 2.0

ML-DSA-44, ML-DSA-65 et ML-DSA-87 utilisent le fournisseur de plateforme lorsqu’il est disponible, mais la vérification de documents chargés ne les active que si le Catalogue déclare l’extension développeur PDF 2.0 de HotPDF

Fournisseurs de signature

THPDFCallbackSignatureProvider adapte les rappels d'application, tandis que THPDFRemoteSignatureProvider applique des limites bornées de relance, d'annulation, d'entrée et de signature autour d'un transport distant

THPDFCSCSignatureProvider implémente la signature distante CSC API v2 sur un transport HTTP fourni par l'application, y compris l'actualisation du jeton OAuth, la découverte des identifiants et chaînes de certificats, l'autorisation explicite et l'acquisition SAD, le signatures/signHash synchrone ou asynchrone, l'interrogation bornée, les horodatages RFC 3161, l'annulation et la relecture idempotente d'opérations

THPDFWindowsKeyStorageSignatureProvider ouvre les clés persistées dans le KSP de carte à puce Microsoft ou tout fournisseur de stockage de clés CNG nommé, rejette facultativement les clés logicielles via la propriété Impl Type, applique une politique d'accès silencieuse ou interactive, et signe les condensés SHA-256 avec RSA PKCS#1 v1.5 ou RSA-PSS

CreateFromKeyHandle adapte un NCRYPT_KEY_HANDLE existant et peut l'emprunter ou le posséder, permettant aux applications qui gèrent déjà l'authentification par carte à puce, TPM ou HSM fournisseur de conserver le contrôle du cycle de vie

HPDFCMSBuildSignedDataWithProvider construit un CMS détaché à partir d'un condensé SHA-256 de document, tandis que HPDFCMSSignPDFStreamWithProvider signe un espace réservé de signature PDF existant via des copies de flux bornées, un hachage de plages diffusées et des correctifs de recherche à largeur fixe sans conserver un second PDF complet

THPDFCSCSignatureProvider implémente la signature distante CSC API v2 sur un transport HTTP fourni par l’application, y compris le rafraîchissement de tokens OAuth, la découverte des identifiants et de la chaîne de certificats, l’acquisition de SAD épinglés par hash explicites, des lots multisign ordonnés bornés, signatures/signHash synchrone ou asynchrone, la scrutation bornée, les horodatages RFC 3161, l’annulation et le replay idempotent adressé par contenu

THPDFPKCS11SignatureProvider sérialise les opérations RSA et ECDSA contre une session PKCS#11 authentifiée et un handle de clé privée possédés par l’appelant, en choisissant les mécanismes RSA PKCS#1 v1.5 par condensé, RSA-PSS ou ECDSA brute sans exporter le matériel de clé

THPDFWindowsKeyStorageSignatureProvider ouvre des clés persistées dans le KSP de carte à puce Microsoft ou tout fournisseur de stockage de clés CNG nommé, rejette optionnellement les clés logicielles via la propriété Impl Type, applique une politique d’accès silencieuse ou interactive, et signe des condensés SHA-2 ou SHA3 avec RSA PKCS#1 v1.5, RSA-PSS ou ECDSA

CreateFromKeyHandle adapte un NCRYPT_KEY_HANDLE existant et peut l’emprunter ou le posséder, permettant aux applications qui gèrent déjà l’authentification carte à puce, TPM ou HSM constructeur de garder le contrôle du cycle de vie

HPDFCMSBuildSignedDataWithProvider construit un CMS détaché depuis le condensé choisi par THPDFCMSSignOptions.DigestAlgorithm, tandis que HPDFCMSSignPDFStreamWithProvider signe un espace réservé de signature PDF existant via des copies de flux bornées, un hachage de plages en flux et des patchs au seek à largeur fixe, sans retenir un second PDF complet

HPDFCMSEstimatePlaceholder dérive une taille CMS sans effet de bord à partir d'une longueur de signature explicite, d'une estimation de fournisseur ou de la taille de clé du certificat RSA, puis tient compte de la forme CMS statique exacte et des réserves dynamiques configurées d'horodatage ou de contre-signature

HPDFCMSSignPDFStreamWithProviderAutoSize et HPDFCMSSignPDFStreamWithExternalSignerAutoSize reconstruisent les espaces réservés non signés trop petits avant de signer ; les relances post-signature requièrent la capacité de fournisseur spcSafeSignRetry, et les rappels de signataire externe ne sont jamais répétés après avoir renvoyé une signature

Voir le dimensionnement automatique des espaces réservés CMS pour les options de dimensionnement, les contrats de reconstruction, la politique de reprise et les diagnostics

Voir le fournisseur de signature distante CSC pour les contrats de transport, d’autorisation, de reprise, de scrutation et de budget

Voir CMS placeholder auto-sizing pour les options de dimensionnement, les contrats de reconstruction, la politique de relance et les diagnostics

Voir CSC remote signature provider pour les contrats de transport, d'autorisation, de relance, d'interrogation et de budget

Contrat de requête de fournisseur

THPDFSignatureProviderRequest porte l'algorithme et l'OID de signature, l'OID de condensé, le type d'entrée message ou condensé, la longueur de sel PSS, la clé publique ou le certificat, l'identifiant de clé, l'identifiant d'opération, la signature et le contexte d'algorithme

Un fournisseur de signature renvoie spsValid avec une signature non vide, tandis que les fournisseurs de vérification utilisent spsValid ou spsInvalid ; les résultats non pris en charge, malformés, d'erreur de fournisseur et annulés restent distincts