|
Entschlüsselt den Objektgraphen eines geladenen PDF mit Standard-Sicherheit im Speicher
Delphi syntax:
procedure DecryptLoadedDocument(const Password: AnsiString);
Description
DecryptLoadedDocument validiert das übergebene Benutzer- oder Besitzerkennwort für ein PDF, das bereits mit LoadFromFile oder LoadFromStream geladen wurde. Es unterstützt die Standard Security Handler RC4-40, RC4-128, AES-128, AES-256 und AESV4, entschlüsselt geladene Strings und Streams, löscht den geladenen Verschlüsselungszustand und erlaubt SaveLoadedDocument, eine unverschlüsselte Kopie zu schreiben
Bei Dokumenten mit V=4 werden die unabhängigen Standardwerte StrF und StmF getrennt aufgelöst. Ein Crypt-Filter auf Stream-Ebene kann StmF über einen ausgerichteten DecodeParms-Eintrag überschreiben, dessen Name Identity, V2 oder AESV2 wählt. Nach der Entschlüsselung werden der verbrauchte Filter und seine ausgerichteten Parameter entfernt, sodass die spätere Stream-Dekodierung mit dem nächsten deklarierten Filter beginnt
Aus Kennwörtern abgeleitete Dateischlüssel, Schlüssel pro Objekt, AES-Kontexte und temporärer Klartext werden bei Erfolg und auf Ausnahmepfaden ausdrücklich überschrieben. Die Kennwort-Überladungen von LoadFromFile und LoadFromStream rufen diese Methode automatisch auf, während nicht unterstützte Verschlüsselungsrevisionen vor der Ausgabe eine Exception auslösen
Code Example
PDF.LoadFromFile('Protected.pdf', 'user-password');
PDF.SaveLoadedDocument('Unencrypted.pdf');
|