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

NomeScopo
CMSDERDati CMS SignedData codificati in DER, come il /Contents di una firma PDF
InfoRiceve le dichiarazioni ETSI EN 319 412-5 (QcCompliance, QcSSCD, QcType, QcLimitValue, QcPDS) e la dichiarazione PSD2 ETSI TS 119 495 del certificato del firmatario
CertCountRiceve 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

API correlate