Skip to main content

Module encryption

Module encryption 

Source
Expand description

PDF encryption support according to ISO 32000-1 Chapter 7.6

This module provides encryption using RC4 40-bit and 128-bit algorithms, AES-128 and AES-256 encryption, supporting Standard Security Handler (Revision 2, 3, 4, 5, and 6) and Public Key Security Handler.

Structs§

Aes
AES cipher implementation using RustCrypto (production-grade)
AesKey
AES encryption key
CryptFilter
Crypt filter definition
CryptFilterManager
Crypt Filter Manager
DocumentEncryption
Integration with Document for encryption
EmbeddedFileEncryption
Embedded file encryption handler
EncryptionDictionary
PDF encryption dictionary
EncryptionKey
Encryption key
ExtendedEncryptionDict
Extended encryption dictionary with EFF support
FunctionalCryptFilter
Functional Crypt Filter implementation
ObjectEncryptor
Object Encryptor for encrypting PDF objects
OwnerPassword
Owner password
PermissionCheckResult
Permission check result
PermissionEvent
Permission event for logging
PermissionFlags
Individual permission flags
Permissions
Permission flags for encrypted PDFs
PublicKeyEncryptionDict
Public Key Encryption Dictionary
PublicKeySecurityHandler
Public Key Security Handler
Rc4
RC4 cipher state
Rc4Key
RC4 key for encryption/decryption
Recipient
Recipient information for public key encryption
RuntimePermissions
Runtime permissions enforcer
RuntimePermissionsBuilder
Builder for RuntimePermissions
StandardSecurityHandler
Standard Security Handler
UserPassword
User password

Enums§

AesError
AES-related errors
AesKeySize
AES key sizes supported by PDF
AuthEvent
Authentication event for crypt filters
CryptFilterMethod
Crypt filter method
EncryptionAlgorithm
Encryption algorithm
LogLevel
Log level for permission events
PermissionOperation
Permission operation type
SecurityHandlerRevision
Security handler revision
StreamFilter
Stream filter name
StringFilter
String filter name
SubFilter
SubFilter types for public key security

Traits§

PermissionsValidator
Permissions validator trait
SecurityHandler
Security Handler trait for encryption/decryption operations

Functions§

compute_hash_r6_algorithm_2b
Compute R6 password hash using Algorithm 2.B (ISO 32000-2:2020 §7.6.4.3.4)
generate_iv
Generate random IV for AES encryption

Type Aliases§

PermissionCallback
Callback for permission checks