SetSignProcessCustomSubFilter
Sécurité et signatures
Description
Définit l'entrée SubFilter avec une chaîne personnalisée pour un processus de signature numérique, en précisant l'encodage de la valeur de signature
Semblable à SetSignProcessSubFilter, mais l’entrée Subfilter est personnalisable
Lorsque la chaîne commence par ETSI. (généralement ETSI.CAdES.detached pour les signatures PAdES de base ou ETSI.RFC3161 pour les horodatages), la bibliothèque ajoute automatiquement au Catalog l’entrée PAdES /Extensions /ESIC <</BaseVersion /1.7 /ExtensionLevel 2>> requise par ETSI EN 319 142-1 v1.2.1 §5.6. Pour les PDF créés avec TPDFlib, la déclaration Adobe équivalente (/Extensions /ADBE avec /ExtensionLevel 8) est ajoutée parallèlement. L’injection est idempotente et n’abaisse jamais un niveau d’extension supérieur existant
La sélection de ETSI.CAdES.detached active aussi la signature PAdES-B-B : la charge CMS porte les attributs authentifiés content-type (id-data) et signing-certificate-v2 (RFC 5035 / RFC 5816), tandis que signing-time, interdit par Table 1 de EN 319 142-1, est omis puisque la bibliothèque fournit son propre tableau à CryptSignMessage. Le certificat est identifié par son condensat SHA-256, ou SHA-384 / SHA-512 lorsque SetSignProcessDigestAlgorithm choisit un hachage plus grand, et les versions actuelles incluent aussi le tuple facultatif IssuerSerial afin que les validateurs stricts puissent vérifier le certificat dans leur chaîne candidate
Syntaxe
Delphi
Function TPDFlib.SetSignProcessCustomSubFilter(SignProcessID: Integer; SubFilterStr: WideString): Integer;
ActiveX
Function PDFlib::SetSignProcessCustomSubFilter(SignProcessID As Long, SubFilterStr As String) As Long
DLL
int DLSetSignProcessCustomSubFilter(int InstanceID, int SignProcessID, const wchar_t * SubFilterStr);
Paramètres
| SignProcessID | Une valeur renvoyée par les fonctions NewSignProcessFromFile, NewSignProcessFromStream ou NewSignProcessFromString |
|---|---|
| SubFilterStr | Entrée de chaîne SubFilter personnalisée |
Valeurs de retour
| 0 | Le paramètre SignProcessID n'était pas valide ou le paramètre SubFilter se trouvait hors limites |
|---|---|
| 1 | Success |