PDF Verschlüsselung ist der Prozess des Schützens des Dokuments mit einem Passwort sowie einigen kryptografischen Algorithmen, einschließlich AES oder RC4. Sie können auch verschiedene Berechtigungen festlegen, um den Zugriff des Benutzers auf verschiedene Vorgänge einzuschränken. Sie können beispielsweise nur das Drucken, das Hinzufügen von Anmerkungen, das Ausfüllen von Formularen usw. zulassen. In diesem Artikel erfahren Sie, wie Sie PDF Dateien mit C++ verschlüsseln. Darüber hinaus behandelt dieser Artikel auch, wie Sie verschiedene Berechtigungen festlegen und passwortgeschützte PDF Dateien mit C++ entschlüsseln.
- C++ API zum Verschlüsseln oder Entschlüsseln von PDF Dateien
- Verschlüsseln Sie PDF Dateien mit C++
- Entschlüsseln Sie PDF Dateien mit C++
C++ API zum Verschlüsseln oder Entschlüsseln von PDF Dateien
Aspose.PDF for C++ ist eine native C++-API, mit der Sie PDF Dokumente erstellen, lesen und bearbeiten können. Darüber hinaus können Sie PDFs mit Passwörtern verschlüsseln und die verschlüsselten PDFs innerhalb weniger Codezeilen entschlüsseln. Sie können die API aus dem Abschnitt Downloads herunterladen oder sie mit NuGet installieren.
Verschlüsseln Sie PDF Dateien mit C++
Im Folgenden werden die Schritte zum Verschlüsseln einer PDF Datei mit Aspose.PDF for C++ beschrieben.
- Laden Sie das PDF Dokument mit der Klasse Document.
- Verwenden Sie die Klasse DocumentPrivilege, um verschiedene Berechtigungen festzulegen, z. B. das Drucken zulassen, das Ändern von Inhalten zulassen usw.
- Rufen Sie Document.Encrypt(String, String, SharedPtr , CryptoAlgorithm, bool) Methode zum Verschlüsseln der PDF.
- Speichern Sie das PDF mit der methode Document->Save(String).
Das folgende Codebeispiel zeigt, wie eine PDF Datei mit C++ verschlüsselt wird.
For complete examples and data files, please go to https://github.com/aspose-pdf/Aspose.Pdf-for-C
// Laden Sie ein vorhandenes PDF Dokument
auto doc = MakeObject<Document>(L"..\\Data\\SecurityAndSignatures\\input.pdf");
// Way1: Vordefinierte Privilegien direkt verwenden.
System::SharedPtr<Aspose::Pdf::Facades::DocumentPrivilege> privilege = Aspose::Pdf::Facades::DocumentPrivilege::get_Print();
doc->Encrypt(L"user", L"owner", privilege, CryptoAlgorithm::AESx128, false);
doc->Save(L"..\\Data\\SecurityAndSignatures\\SetPrivelegesWay1_out.pdf");
// Way2: Basierend auf einem vordefinierten Privileg und ändern Sie einige spezifische Berechtigungen.
System::SharedPtr<Aspose::Pdf::Facades::DocumentPrivilege> privilege2 = Aspose::Pdf::Facades::DocumentPrivilege::get_AllowAll();
privilege->set_AllowPrint(false);
privilege->set_AllowModifyContents(false);
doc->Encrypt(L"user", L"owner", privilege2, CryptoAlgorithm::AESx128, false);
doc->Save(L"..\\Data\\SecurityAndSignatures\\SetPrivelegesWay2_out.pdf");
// Weg 3: Basierend auf einer vordefinierten Berechtigung und Änderung einiger spezifischer Adobe Professional-Berechtigungskombinationen.
System::SharedPtr<Aspose::Pdf::Facades::DocumentPrivilege> privilege3 = Aspose::Pdf::Facades::DocumentPrivilege::get_ForbidAll();
privilege->set_ChangeAllowLevel(1);
privilege->set_PrintAllowLevel(2);
doc->Encrypt(L"user", L"owner", privilege3, CryptoAlgorithm::AESx128, false);
doc->Save(L"..\\Data\\SecurityAndSignatures\\SetPrivelegesWay3_out.pdf");
// Way4: Mischt way2 und way3
System::SharedPtr<Aspose::Pdf::Facades::DocumentPrivilege> privilege4 = Aspose::Pdf::Facades::DocumentPrivilege::get_ForbidAll();
privilege->set_ChangeAllowLevel(1);
privilege->set_AllowPrint(true);
doc->Encrypt(L"user", L"owner", privilege4, CryptoAlgorithm::AESx128, false);
doc->Save(L"..\\Data\\SecurityAndSignatures\\SetPrivelegesWay4_out.pdf");
Entschlüsseln Sie PDF Dateien mit C++
Im Folgenden sind die Schritte zum Entschlüsseln einer PDF Datei mit Aspose.PDF for C++ aufgeführt.
- Laden Sie die PDF Datei mit der Klasse Document und geben Sie den Pfad und das Kennwort des Dokuments an.
- Entschlüsseln Sie die Datei mit der methode Document->Decrypt().
- Speichern Sie das entschlüsselte PDF mit der methode Document->Save(String).
Das folgende Codebeispiel zeigt, wie Sie eine PDF Datei mit C++ entschlüsseln.
For complete examples and data files, please go to https://github.com/aspose-pdf/Aspose.Pdf-for-C
// Laden Sie ein vorhandenes PDF Dokument
auto doc = MakeObject<Document>(L"..\\Data\\SecurityAndSignatures\\Decrypt.pdf", L"password");
// PDF entschlüsseln
doc->Decrypt();
// Speichern Sie das aktualisierte Dokument
doc->Save(L"..\\Data\\SecurityAndSignatures\\Decrypt_out.pdf");
Fazit
In diesem Artikel haben Sie gelernt, wie Sie PDF Dateien mit C++ verschlüsseln oder entschlüsseln. Das Codebeispiel hat auch gezeigt, wie Sie verschiedene Berechtigungen beim Verschlüsseln einer PDF Datei festlegen können. Weitere Informationen zur C++ PDF API finden Sie unter Dokumentation.