|
This class represents the standard security handler encryption
dictionary. This is definitively detailed in:.
The ISO PDF Specification, ISO 32000-1:2008 PDF 1.7; Table: 21,
page 60.
The ISO PDF
Specification, ISO 32000-2:2017 PDF 2.0; Table: 21, page 77.
Adobe Supplement to the ISO 32000, BaseVersion: 1.7,
ExtensionLevel: 3; Table: 3.19, page 16.
The standard encryption dictionary extends the base encryption
dictionary with entries specific to the standard password-based
security handler. It stores the hashed and encrypted forms of the
owner and user passwords.
The O entry holds data derived from the owner password. The U
entry holds data derived from the user password and the document
encryption key. Together, these entries allow a reader to verify a
supplied password and recover the document encryption key.
In PDF 2.0 (revision 6), the OE and UE entries hold the document
encryption key encrypted under the owner and user passwords
respectively. This design means the encryption key is not derived
from the password but is instead a random key stored in encrypted
form.
The P entry is a set of permission flags stored as a signed
32-bit integer. The bits control operations such as printing,
copying, and modifying the document. These flags are enforced by
conforming readers and are included in the encryption key
derivation to prevent tampering.
The Perms entry, present in revision 6, holds an encrypted copy
of the permission flags and other metadata. A reader verifies this
entry after decryption to confirm that the P flags have not been
altered.
The EncryptMetadata entry controls whether the document's XML
metadata stream is encrypted. When false, the metadata remains
accessible without decryption, supporting metadata indexing by
search engines and other tools.
System.Object
WebSupergoo.ABCpdf14.Elements.Element
WebSupergoo.ABCpdf14.Elements.EncryptionElement
WebSupergoo.ABCpdf14.Elements.StandardEncryptionElement
|