HPDFEvaluateCMSSignerQCStatements Function
Leest de eIDAS-qualified-certificate-statements en het PSD2-statement van het ondertekenaarscertificaat in CMS-handtekeningdata
Declaratie
function HPDFEvaluateCMSSignerQCStatements(const CMSDER: TBytes;
out Info: THPDFQCStatementDescriptor; out CertCount: Integer): boolean;
Eenheid
HPDFSignVerify
Parameters
| Naam | Doel |
|---|---|
CMSDER | Als DER gecodeerde CMS-SignedData, zoals de /Contents van een PDF-handtekening |
Info | Ontvangt de ETSI EN 319 412-5-statements (QcCompliance, QcSSCD, QcType, QcLimitValue, QcPDS) en het ETSI TS 119 495 PSD2-statement van het ondertekenaarscertificaat |
CertCount | Ontvangt het aantal certificaten dat in de CMS-data is ingesloten; 0 wanneer de data niet kan worden geparseerd |
Retourwaarde
false wanneer de CMS-data niet kan worden geparseerd of geen leesbaar certificaat bevat, en Info is dan leeg. Een certificaat zonder QC-statements geeft alsnog true terug, met Info.HasQCStatements op false
Ondertekenaarscertificaat
Het certificaat dat de SignerInfo identificeert wordt geƫvalueerd; wanneer er geen match is, wordt het eerste ingesloten certificaat gebruikt, en daar plaatsen CMS-builders de ondertekenaar
Voorbeeld
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;
Gebruiksopmerkingen
- De functie bekijkt alleen de certificaatinhoud; ze verifieert niet de handtekening, de certificaatketen of de trusted-list-status van de uitgever
- Voor een handtekening in een geladen document geeft
THotPDF.GetLoadedSignatureQCStatementsdezelfde statements terug zonder eerst de CMS-data te extraheren