Previous Next
734
CHAPTER 8 Interactive Features
Validation of a usage rights signature depends on whether the signature dictio-
nary is referenced from the UR or UR3 entry in the permissions dictionary (See
implementation note 142 in Appendix H):
• UR: At the time of signing, the application computes the object digest over a
subset of the PDF objects in the document; that is, the objects that are not
modified, directly or indirectly, by permissible operations, as specified by the
transform parameters dictionary. Appendix I describes the object digest com-
putation. The calculated value of this digest is stored in the DigestValue entry
in the signature reference dictionary (see Table 8.103). An application can com-
pare this entry to its calculated object digest when validating. If the values are
different, the signature is invalid.
Note: The use of UR is not recommended because of the complex (and hence prone
to errors) algorithm. Instead, the UR3 (see below) algorithm should be used.
• UR3 (PDF 1.6): The ByteRange entry in the signature dictionary (see Table
8.102) is required to be present. First, the application verifies the byte range di-
gest to determine whether the portion of the document specified by ByteRange
corresponds to the state of the document at the time of signing. Next, the appli-
cation examines the current version of the document to see whether there have
been modifications to any objects that are not permitted by the transform pa-
rameters.
TABLE 8.105 Entries in the UR transform parameters dictionary
KEY TYPE VALUE
Type name (Optional) The type of PDF object that this dictionary describes; if present, must be
TransformParams for a transform parameters dictionary.
Document array (Optional) An array of names specifying additional document-wide usage rights for
the document. The only defined value is FullSave, which permits a user to save the
document along with modified form and/or annotation data. (See implementation
note 143 in Appendix H.)
Msg text (Optional) A text string that can be used to specify any arbitrary information, such as
string the reason for adding usage rights to the document.
V name (Optional) The UR transform parameters dictionary version. The only valid value is
2.2. If an unknown version is present, no rights are enabled. (Note that this value is a
name object, not a number.) (See implementation note 145 in Appendix H.) Default
value: 2.2.
Previous Next