Encryption
Cifrado (protección de datos)
El proceso de codificar información mediante un algoritmo matemático y una clave secreta para que solo las partes autorizadas puedan leer el contenido, protegiendo documentos frente al acceso no autorizado.
Detalle técnico
PDF admite dos mecanismos de cifrado: basado en contraseña (contraseña de usuario para abrir, contraseña de propietario para permisos) y basado en certificado (cifrado de clave pública para destinatarios específicos). Los PDF modernos (2.0) utilizan AES-256 en modo CBC. La contraseña del propietario restringe acciones (impresión, copia, edición), pero estas restricciones dependen del visor y pueden eludirse. Solo el cifrado con contraseña de usuario protege verdaderamente el contenido.
Ejemplo
```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,
}
});
```