HPDFEvaluateCMSSignerQCStatements Function
קוראת את הצהרות התעודה המוסמכת של eIDAS ואת הצהרת ה-PSD2 של תעודת החותם בנתוני חתימת CMS
הצהרה
function HPDFEvaluateCMSSignerQCStatements(const CMSDER: TBytes;
out Info: THPDFQCStatementDescriptor; out CertCount: Integer): boolean;
יחידה
HPDFSignVerify
פרמטרים
| שם | מטרה |
|---|---|
CMSDER | SignedData של CMS בקידוד DER, כמו /Contents של חתימת PDF |
Info | מקבל את הצהרות ETSI EN 319 412-5 (QcCompliance, QcSSCD, QcType, QcLimitValue, QcPDS) ואת הצהרת ה-PSD2 של ETSI TS 119 495 מתוך תעודת החותם |
CertCount | מקבל את מספר התעודות המוטמעות בנתוני ה-CMS; 0 כשהנתונים אינם ניתנים לניתוח |
ערך מוחזר
false כשנתוני ה-CMS אינם ניתנים לניתוח או אינם מכילים תעודה קריאה, ואז Info נשאר ריק. תעודה ללא QC statements עדיין מחזירה true, כאשר Info.HasQCStatements נשאר false
תעודת החותם
נבחנת התעודה ש-SignerInfo מזהה; כשאף תעודה אינה תואמת, נעשה שימוש בתעודה המוטמעת הראשונה, שם בוני CMS מציבים את החותם
דוגמה
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;
הערות שימוש
- הפונקציה בוחנת את תוכן התעודה בלבד; היא אינה מאמתת את החתימה, את שרשרת התעודות או את מצב רשימת האמון של המנפיק
- עבור חתימה במסמך טעון,
THotPDF.GetLoadedSignatureQCStatementsמחזירה את אותן הצהרות בלי לחלץ קודם את נתוני ה-CMS