HPDFEvaluateCMSSignerQCStatements Function
Legge le dichiarazioni di certificato qualificato eIDAS e la dichiarazione PSD2 del certificato del firmatario nei dati della firma CMS
Dichiarazione
function HPDFEvaluateCMSSignerQCStatements(const CMSDER: TBytes;
out Info: THPDFQCStatementDescriptor; out CertCount: Integer): boolean;
Unità
HPDFSignVerify
Parametri
| Nome | Scopo |
|---|---|
CMSDER | Dati CMS SignedData codificati in DER, come il /Contents di una firma PDF |
Info | Riceve le dichiarazioni ETSI EN 319 412-5 (QcCompliance, QcSSCD, QcType, QcLimitValue, QcPDS) e la dichiarazione PSD2 ETSI TS 119 495 del certificato del firmatario |
CertCount | Riceve il numero di certificati incorporati nei dati CMS; 0 quando i dati non possono essere analizzati |
Valore restituito
false quando i dati CMS non possono essere analizzati o non contengono un certificato leggibile, e Info resta allora vuoto. Un certificato senza dichiarazioni QC restituisce comunque true, con Info.HasQCStatements lasciato a false
Certificato del firmatario
Viene valutato il certificato che il SignerInfo identifica; quando nessuno corrisponde, si usa il primo certificato incorporato, che è dove i builder CMS collocano il firmatario
Esempio
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;
Note d'uso
- La funzione esamina solo il contenuto del certificato; non verifica la firma, la catena di certificazione né lo stato di trusted list dell'emittente
- Per una firma in un documento caricato,
THotPDF.GetLoadedSignatureQCStatementsrestituisce le stesse dichiarazioni senza prima estrarre i dati CMS