HPDFEvaluateCMSSignerQCStatements Function
Läser eIDAS-QCStatements för kvalificerat certifikat och PSD2-uttrycket för signatärscertifikatet i CMS-signaturdata
Deklaration
function HPDFEvaluateCMSSignerQCStatements(const CMSDER: TBytes;
out Info: THPDFQCStatementDescriptor; out CertCount: Integer): boolean;
Enhet
HPDFSignVerify
Parametrar
| Parameter | Syfte |
|---|---|
CMSDER | DER-kodad CMS SignedData, till exempel /Contents i en PDF-signatur |
Info | Tar emot ETSI EN 319 412-5-uttrycken (QcCompliance, QcSSCD, QcType, QcLimitValue, QcPDS) och ETSI TS 119 495-PSD2-uttrycket för signatärscertifikatet |
CertCount | Tar emot antalet certifikat som är inbäddade i CMS-data; 0 när data inte kan parsas |
Returvärde
false när CMS-data inte kan parsas eller inte innehåller något läsbart certifikat, och Info är då tomt. Ett certifikat utan QCStatements returnerar fortfarande true, med Info.HasQCStatements lämnad som false
Signatärscertifikat
Certifikatet som SignerInfo identifierar utvärderas; när inget matchar används det första inbäddade certifikatet, vilket är där CMS-byggare placerar signatären
Exempel
var
Info: THPDFQCStatementDescriptor;
CertCount: Integer;
begin
if HPDFEvaluateCMSSignerQCStatements(CMSDER, Info, CertCount) then
begin
if Info.QCCompliant and Info.QCSSCD then
Writeln('Qualified certificate on a qualified device');
if Info.HasPSD2Statement then
Writeln('PSD2 NCA: ', Info.PSD2NCAName, ' / ', Info.PSD2NCAId);
end;
end;
Användningsanteckningar
- Funktionen granskar endast certifikatinnehållet; den verifierar inte signaturen, certifikatkedjan eller utfärdarens status i förtroendelistor
- För en signatur i ett inläst dokument returnerar
THotPDF.GetLoadedSignatureQCStatementssamma uttryck utan att CMS-data först behöver extraheras