SetSignProcessCustomSubFilter

Sicherheit und Signaturen

Beschreibung

Prüfen Sie Syntax, Parameter und Rückgabewerte, bevor Sie die Funktion aufrufen Die Codeblöcke bleiben im Original erhalten, damit Beispiele unverändert übernommen werden können.

Prüfen Sie Syntax, Parameter und Rückgabewerte, bevor Sie die Funktion aufrufen Die Codeblöcke bleiben im Original erhalten, damit Beispiele unverändert übernommen werden können.

Wenn die angegebene Zeichenfolge mit ETSI. beginnt (üblicherweise ETSI.CAdES.detached für PAdES-Baseline-Signaturen oder ETSI.RFC3161 für Dokumentzeitstempel), fügt die Bibliothek dem Dokumentkatalog automatisch den Eintrag /Extensions /ESIC <</BaseVersion /1.7 /ExtensionLevel 2>> hinzu, wie von ETSI EN 319 142-1 v1.2.1 §5.6 gefordert. Für mit TPDFlib erstellte PDF-Dateien wird parallel die entsprechende Adobe-Deklaration (/Extensions /ADBE mit /ExtensionLevel 8) hinzugefügt. Das Einfügen ist idempotent und setzt eine vorhandene höhere Erweiterungsstufe niemals herab.

Die Auswahl von ETSI.CAdES.detached aktiviert zusätzlich den Signaturpfad PAdES-B-B: Die resultierende CMS-Nutzlast enthält die authentifizierten Attribute content-type (id-data) und signing-certificate-v2 (RFC 5035 / RFC 5816). Das Attribut signing-time, das Tabelle 1 von EN 319 142-1 verbietet, wird ausgelassen, da die Bibliothek ihr eigenes Attributarray an CryptSignMessage übergibt. Das Signaturzertifikat wird anhand seines SHA-256-Digests identifiziert (oder SHA-384 / SHA-512, wenn SetSignProcessDigestAlgorithm einen größeren Hash auswählt). Aktuelle Builds enthalten außerdem das optionale Tupel IssuerSerial (Distinguished Name des Ausstellers plus Seriennummer), damit strengere PAdES-Validatoren das Signaturzertifikat mit ihrer möglichen Zertifikatskette abgleichen können.

Syntax

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);

Parameter

SignProcessIDEin von den Funktionen NewSignProcessFromFile, NewSignProcessFromStream oder NewSignProcessFromString zurückgegebener Wert.
SubFilterStrBenutzerdefinierter SubFilter-Zeichenfolgeneintrag

Rückgabewerte

0Der Parameter SignProcessID war ungültig oder der Parameter SubFilter lag außerhalb des gültigen Bereichs
1Erfolgreich