Gets or sets a value indicating whether the saved file carries an integrity MAC (a PDF MAC token) that a reader holding the file
encryption key checks against every byte of the file. The default is false.
public bool IntegrityProtection { get; set; }
ISO/TS 32004: the encryption dictionary gets a random 32-byte KDFSalt (§5.1.1), permission bit 13 is cleared so a MAC is
required in every revision (§5.1.2), and the trailer an AuthCode dictionary whose standalone token covers the whole file
except the token (§5.2.3, §6.5.1): HMAC-SHA-256 under a random key wrapped with AES-256 key wrap, its key encryption key
derived from the file encryption key with HKDF-SHA-256 (§6.3, §6.4), over the SHA-256 digest of the file (§6.6.2). The save
declares the extension in the catalog's Extensions (ISO_, level 32004, §4). An incremental update of the saved
file, and a complete save with its own key, compute the MAC again.
Needs Aes256 or Aes256Gcm (V 5 or later,
Table 5); a save that combines it with a deprecated algorithm is refused. The MAC proves knowledge of the file encryption key,
so with an empty user password it protects nothing (§6.4, NOTE 2).