Fournisseur de signature distante CSC

THPDFCSCSignatureProvider implémente les API CSC v2 credentials/info, credentials/authorize, credentials/authorizeCheck, signatures/signHash, signatures/signPolling et signatures/timestamp conformément au contrat existant THPDFSignatureProvider

Transport et autorisation

Le fournisseur ne choisit jamais de pile HTTP et ne stocke aucun jeton d’actualisation, secret client, PIN ou OTP

THPDFCSCTransport reçoit la méthode, l’URL, l’autorisation Bearer, le corps JSON, la clé d’idempotence stable, le numéro de tentative, l’identifiant d’opération et le budget de réponse exacts, tandis que THPDFCSCAccessTokenCallback fournit et actualise les jetons d’accès OAuth de courte durée

Lorsqu’un SAD est requis, le fournisseur récupère les métadonnées d’identifiant et la chaîne complète de certificats bornée, demande à THPDFCSCAuthenticationCallback des valeurs d’authentification examinées, obtient un SAD et interroge, si nécessaire, un descripteur d’autorisation asynchrone

Signature et sûreté de rejeu

Sign accepte l’empreinte de la chaîne CMS, transmet l’empreinte et les OID de signature à signatures/signHash et émet, si nécessaire, les paramètres RSA-PSS encodés DER

Les réponses synchrones renvoient immédiatement une signature décodée, tandis que les réponses asynchrones conservent le responseID opaque avant l’interrogation

Un appel multi-condensés n’est accepté que si son nombre tient à la fois dans MaxBatchSignatures et dans la valeur multisign du certificat, et la réponse doit contenir exactement une signature par condensé demandé

Les requêtes transitoires réutilisent une même Idempotency-Key dérivée de l’opération et le cache d’opérations borné renvoie une signature déjà terminée lorsque la même opération, le même identifiant, algorithme et condensat sont soumis à nouveau

Un échec de transport conserve un SAD automatiquement autorisé pour une reprise à l’identique, mais un lot différent ne peut pas consommer ce SAD et doit obtenir une nouvelle autorisation

Budgets et annulation

THPDFCSCOptions.Default borne les octets de réponse, signatures, horodatages, le nombre et les octets de chaînes de certificats, les tentatives, délais Retry-After, interrogations et opérations mises en cache

Cancel est vérifié avant les appels de transport, entre les tentatives et durant les attentes d’interrogation découpées, et l’identifiant d’opération est aussi transmis au transport afin qu’une application puisse annuler sa propre requête HTTP en cours

Chaînes de certificats et horodatages

RefreshCredentialInfo valide et met en cache les métadonnées de clé, algorithme, autorisation, SCAL, multisignature et chaîne de certificats sans signer

GetCertificateChain renvoie des copies défensives d’octets adaptées à l’entrée de certificats CMS, tandis que TimestampDigest demande et décode un jeton RFC 3161 avec nonce facultatif

Fournisseurs de signatures modernes