Encryption
Enkripsi (Perlindungan Data)
Proses pengamanan dokumen PDF menggunakan algoritma kriptografi untuk membatasi siapa yang dapat membuka, melihat, mengedit, mencetak, atau menyalin konten.
Detail Teknis
Enkripsi PDF mendukung beberapa penangan keamanan. Penangan standar menggunakan autentikasi berbasis kata sandi dengan dua tingkat: kata sandi pengguna (untuk membuka) dan kata sandi pemilik (untuk mengubah izin). Revisi enkripsi: R2/R3 menggunakan RC4 40/128-bit (tidak aman), R4 menggunakan AES-128, dan R6 (PDF 2.0) menggunakan AES-256 dengan derivasi kunci berbasis SHA-256. Izin mengontrol pencetakan, modifikasi, penyalinan, anotasi, dan ekstraksi. Enkripsi berbasis sertifikat menggunakan kriptografi kunci publik X.509. Perlu dicatat: kata sandi pemilik saja hanya mengontrol kepatuhan perangkat lunak โ konten yang tidak terenkripsi tetap dapat diakses secara teknis.
Contoh
```javascript
// PDF encryption settings
const encryptedPdf = await PDFDocument.create();
await encryptedPdf.encrypt({
userPassword: 'view-password', // required to open
ownerPassword: 'admin-password', // required to edit
permissions: {
printing: 'lowResolution',
modifying: false,
copying: false,
}
});
```