Encrypt and Decrypt PDF
Contents
[
Hide
]
Enkripsi File PDF menggunakan Jenis dan Algoritma Enkripsi yang Berbeda
Salah satu cara efektif untuk melindungi file PDF adalah melalui enkripsi. Dalam artikel ini, kita akan menjelajahi cara mengenkripsi dokumen PDF menggunakan Python dengan bantuan pustaka Aspose.PDF.
Enkripsi PDF melibatkan pengacakan isi dari dokumen PDF menggunakan algoritma kriptografi untuk mencegah akses tidak sah. File PDF yang dienkripsi memerlukan kata sandi untuk dibuka dan mungkin memiliki batasan pada tindakan seperti mencetak, menyalin, dan mengedit.
- Kata sandi Pengguna, jika diatur, adalah yang harus Anda berikan untuk membuka PDF. Acrobat/Reader akan meminta pengguna untuk memasukkan kata sandi pengguna. Jika tidak benar, dokumen tidak akan terbuka.
- Kata sandi Pemilik, jika diatur, mengontrol izin, seperti mencetak, mengedit, mengekstraksi, memberi komentar, dll. Acrobat/Reader akan menolak hal-hal ini berdasarkan pengaturan izin. Acrobat akan memerlukan kata sandi ini jika Anda ingin mengatur/mengubah izin.
Cuplikan kode berikut menunjukkan cara mengenkripsi file PDF.
- Membuat jalur file input dan output
- Memuat dokumen PDF menggunakan AsposePDFPythonWrappers
- Menentukan izin untuk dokumen terenkripsi
- Menentukan algoritma enkripsi yang akan digunakan
- Mengenkripsi dokumen dengan kata sandi pengguna dan pemilik yang ditentukan, izin, dan algoritma enkripsi menggunakan metode ‘document.encrypt’
- Menyimpan dokumen terenkripsi ke file output yang ditentukan dengan metode ‘document.save’.
import AsposePDFPythonWrappers as apw
import AsposePDFPython as apCore
import os
import os.path
# Mengatur jalur direktori untuk file sampel
dataDir = os.path.join(os.getcwd(), "samples")
# Mengatur jalur file input
input_file = os.path.join(dataDir, "sample.pdf")
# Mengatur jalur file output
output_file = os.path.join(dataDir, "results", "sample-enc.pdf")
# Memuat dokumen PDF menggunakan AsposePDFPythonWrappers
document = apw.Document(inputFile)
# Menentukan izin untuk dokumen terenkripsi
permission = apCore.Permissions(apCore.Permissions.ExtractContent | apCore.ModifyContent)
# Menentukan algoritma enkripsi yang akan digunakan
cryptoAlgorithm = apCore.CryptoAlgorithm.RC4x128
# Mengenkripsi dokumen dengan kata sandi pengguna dan pemilik yang ditentukan, izin, dan algoritma enkripsi
document.encrypt("user", "owner", permission, cryptoAlgorithm)
# Menyimpan dokumen terenkripsi ke file output yang ditentukan
document.save(output_file)
Mendekripsi File PDF menggunakan Kata Sandi Pemilik
- Membuat jalur file input dan output
- Membuat instance baru dari kelas Document dari modul AsposePDFPythonWrappers
- Mendekripsi dokumen menggunakan metode document_decrypt
- Menyimpan dokumen yang telah didekripsi ke jalur file output menggunakan metode save() dengan fungsi document_save.
import AsposePDFPythonWrappers as apw
import AsposePDFPython as apCore
import os
import os.path
# Mengatur jalur direktori untuk file sampel
dataDir = os.path.join(os.getcwd(), "samples")
# Mengatur jalur file input
input_file = os.path.join(dataDir, "sample_enc.pdf")
# Mengatur jalur file output
output_file = os.path.join(dataDir, "results", "sample-dec.pdf")
# Membuat instance baru dari kelas Document dari modul AsposePDFPythonWrappers
document = apw.Document(input_file, "owner")
# Mendekripsi dokumen menggunakan metode decrypt()
document.decrypt()
# Menyimpan dokumen yang telah didekripsi ke jalur file output menggunakan metode save()
document.save(output_file)