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 цялост за избрания подписващ |
|---|---|
| CoverageStatus | scInvalid, scSignedRevision или scWholeDocument |
| ByteRangeValid | True само когато всички диапазони са ограничени, празнотата Contents е точна и подписаната ревизия завършва със собствен %%EOF |
| ContentsGapValid | True само когато пропуснатите байтове са точно избраният шестнадесетичен токен /Contents |
| HasLaterRevisions | True, когато избраният подпис е валиден за по-ранна инкрементална ревизия, но съществуват по-късни байтове |
| SignedRevisionLength | Брой байтове на ревизията, удостоверена от избрания подпис |
| DocumentLength | Текущ брой байтове на PDF |
| NativeError | Код за грешка на Windows CryptoAPI, когато валидацията на цялостта се провали |
Методи за съвместимост
VerifySignature, GetSignatureMetadata, GetSignerCertificate и VerifySignerCertificateChain остават достъпни и избират поле 0 и подписващ 0
Използвайте GetSignatureMetadataByIndex, GetSignatureMetadataByName, GetSignerCertificateByIndex, GetSignerCertificateByName, VerifySignerCertificateChainByIndex или VerifySignerCertificateChainByName за изричен избор