HPDFEvaluateCMSSignerQCStatements Fonksiyonu

CMS imza verisindeki signer sertifikasının eIDAS qualified-certificate statement'larını ve PSD2 statement'ını okur

Bildirim

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

Birim

HPDFSignVerify

Parametreler

ParametreAmaç
CMSDERPDF imzasının /Contents alanı gibi DER kodlamalı CMS SignedData verisi
InfoSigner sertifikasının ETSI EN 319 412-5 statement'larını (QcCompliance, QcSSCD, QcType, QcLimitValue, QcPDS) ve ETSI TS 119 495 PSD2 statement'ını alır
CertCountCMS verisine gömülü sertifika sayısını alır; veri ayrıştırılamadığında 0 olur

Dönüş değeri

CMS verisi ayrıştırılamadığında veya okunabilir bir sertifika içermiyorsa false döner ve Info boş kalır. QC statement'ı olmayan bir sertifika yine de true döndürür; Info.HasQCStatements false kalır

Signer sertifikası

SignerInfo'nun tanımladığı sertifikat değerlendirilir; hiçbiri eşleşmediğinde gömülü ilk sertifika kullanılır; CMS üreticileri signer'ı genellikle oraya koyar

Örnek

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;

Kullanım notları

İlgili API'ler