TPDFlibSignatureVerifier

אבטחה וחתימות

תיאור

מונה שדות חתימה ב-PDF וחותמי CMS, מאמת חתימה נבחרת מבלי לטעון את ה-PDF השלם לזיכרון, ומדווח על כיסוי המהדורה החתומה המדויק בנפרד משלמות קריפטוגרפית

המאמת מקבל קובץ, זרם בבעלות הקורא, או מחרוזת בתים ANSI דרך OpenPDF, OpenPDFStream, או OpenPDFString

בחירה

Count := Verifier.GetSignatureCount;
Verifier.GetSignatureFieldName(0, FieldName);
SignerCount := Verifier.GetSignerCount(0);
Result := Verifier.VerifySignatureByName(FieldName, 0, Report);

VerifySignatureByIndex בוחר את שדה ה-PDF לפי אינדקס מבוסס-אפס, בעוד ש-VerifySignatureByName משתמש בשם השדה המלא של AcroForm ושתי השיטות מקבלות אינדקס חותם CMS מבוסס-אפס

דוח אימות

IntegrityResultתוצאת שלמות CMS קריפטוגרפית או PKCS#7 מורשת עבור החותם הנבחר
CoverageStatusscInvalid, scSignedRevision, או scWholeDocument
ByteRangeValidTrue רק כאשר כל הטווחים חסומים, הרווח של Contents מדויק, והמהדורה החתומה מסתיימת ב-%%EOF שלה עצמה
ContentsGapValidTrue רק כאשר הבתים שהושמטו הם בדיוק אסימון ה-/Contents ההקסדצימלי הנבחר
HasLaterRevisionsTrue כאשר החתימה הנבחרת תקפה עבור מהדורה מצטברת קודמת אך קיימים בתים מאוחרים יותר
SignedRevisionLengthאורך הבתים של המהדורה המאומתת על ידי החתימה הנבחרת
DocumentLengthאורך הבתים הנוכחי של ה-PDF
NativeErrorקוד שגיאה של Windows CryptoAPI כאשר אימות השלמות נכשל

שיטות תאימות

VerifySignature, GetSignatureMetadata, GetSignerCertificate, ו-VerifySignerCertificateChain נותרות זמינות ובוחרות את שדה 0 וחותם 0

השתמש ב-GetSignatureMetadataByIndex, GetSignatureMetadataByName, GetSignerCertificateByIndex, GetSignerCertificateByName, VerifySignerCertificateChainByIndex, או VerifySignerCertificateChainByName לבחירה מפורשת