THPDFPDFMACValidationInfo Kaydı
Bir PDF MAC validation'ının tam sonucu: status ve mesaj, byte-range ve MAC uzunlukları, digest ve policy ayrıntıları, AES-GCM kullanımı, MAC konumu, imza bağı ve permission-coverage bayrakları
Bildirim
THPDFPDFMACValidationInfo= record
Status: THPDFPDFMACStatus;
ByteRangeLength: Int64;
MACLength: Integer;
DigestAlgorithm: THPDFPDFMACDigestAlgorithm;
PolicyProfile: THPDFPDFMACPolicyProfile;
PolicyAccepted: boolean;
UsedAESGCM: boolean;
Message: string;
Location: THPDFPDFMACLocation;
SignatureObjectNumber: Integer;
SignatureGeneration: Integer;
SignatureDigestMatched: boolean;
FullFileCoverage: boolean;
PermissionsAuthenticated: boolean;
MACRequiredByPermissions: boolean;
end;
Birim
HPDFDoc
Alanlar
| Alan | Amaç |
|---|---|
Status | THPDFPDFMACStatus kararı; MAC sağlam çıktığında pmsValid, aksi durumda belirli başarısızlık durumları |
ByteRangeLength | MAC'in /ByteRange'inin kapsadığı dosya baytı sayısı |
MACLength | Kodlanmış MAC değerinin uzunluğu |
DigestAlgorithm | Denetlenen MAC'in inşa edildiği digest algoritması |
PolicyProfile | MAC'in değerlendirildiği THPDFPDFMACPolicyProfile |
PolicyAccepted | Verilen seçeneklerin digest ve AES-GCM politikası MAC'i kabul ettiğinde true |
UsedAESGCM | MAC payload'ı AES-GCM korumalı olduğunda true |
Message | İnsan-okur sonuç metni; örneğin MAC'in geçerli olduğu ya da neden geçerli olmadığı |
Location | THPDFPDFMACLocation: bağımsız MAC veya bir imzaya bağlı MAC |
SignatureObjectNumber / SignatureGeneration | MAC'in bağlandığı imzanın nesne referansı; Location bağlı bir MAC bildirdiğinde anlamlıdır |
SignatureDigestMatched | Bağlı bir MAC'in digest'i, imzasının byte digest'iyle uyuştuğunda true |
FullFileCoverage | Byte range tüm dosyayı kapsadığında true |
PermissionsAuthenticated | Belgenin permission bit'leri MAC tarafından kapsandığında true |
MACRequiredByPermissions | Belgenin izinleri MAC gerektirdiğinde true; bu durumda eksik MAC, kendisi başlı başına bir validation başarısızlığıdır |
Kullanım notları
THotPDF.ValidatePDFMACve revizyon başına doğrulayıcı tarafından doldurulur; kayıt kullanımdan önce sıfırlanır, o yüzden işlevfalsedöndürdüğünde bile inceleyin- Önce
Status'e, sonraPolicyAccepted'a bakın; böylece kriptografik olarak sağlam ama profilinize takılan MAC ile bozuk olanı ayırt edersiniz - Bağlı MAC'lerde MAC'in imzanın imzaladığı aynı baytları kapsadığını teyit etmek için
SignatureObjectNumber'ıSignatureDigestMatchedile birlikte okuyun