HPDFEvaluateCMSSignerQCStatements Function

Lit les déclarations de certificat qualifié eIDAS et la déclaration PSD2 du certificat du signataire dans les données de signature CMS

Déclaration

function HPDFEvaluateCMSSignerQCStatements(const CMSDER: TBytes;
  out Info: THPDFQCStatementDescriptor; out CertCount: Integer): boolean;

Unité

HPDFSignVerify

Paramètres

NomObjectif
CMSDERCMS SignedData encodé en DER, comme le /Contents d’une signature PDF
InfoReçoit les déclarations ETSI EN 319 412-5 (QcCompliance, QcSSCD, QcType, QcLimitValue, QcPDS) et la déclaration PSD2 ETSI TS 119 495 du certificat du signataire
CertCountReçoit le nombre de certificats embarqués dans les données CMS ; 0 lorsque les données ne peuvent être analysées

Valeur de retour

false lorsque les données CMS ne peuvent être analysées ou ne contiennent aucun certificat lisible, et Info est alors vide. Un certificat sans déclarations QC renvoie quand même true, avec Info.HasQCStatements laissé à false

Certificat du signataire

Le certificat identifié par le SignerInfo est évalué ; quand aucun ne correspond, le premier certificat embarqué est utilisé, car c’est là que les générateurs CMS placent le signataire

Exemple

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;

Notes d’utilisation

API associées