EncryptionUtils
EncryptionUtils
Огляд
EncryptionUtils є класом у Aspose.PDF FOSS для Python.
Утилітний клас для PDF-сумісного AES-CBC, шифрування RC4 та виведення ключа.
Цей клас надає 15 методів для роботи з об’єктами EncryptionUtils у програмах Python. Доступні методи включають: compute_file_encryption_key, compute_hash_v5, compute_owner_key_v4, compute_user_key_v4, compute_user_owner_keys_v6, decrypt_aes_cbc, decrypt_rc4, decrypt_writer_encrypted_stream, derive_object_key, encrypt_aes_cbc, encrypt_perms_v6, encrypt_rc4 та 3 додаткових методи. Усі публічні члени доступні будь-якій програмі Python після встановлення пакету Aspose.PDF FOSS для Python.
Методи
| Сигнатура | Опис |
|---|---|
| `encrypt_aes_cbc(key: bytes, data: bytes, iv: bytes | None)→bytes` |
decrypt_aes_cbc(key: bytes, data: bytes) → bytes | Розшифруйте дані, зашифровані за допомогою encrypt_aes_cbc. |
encrypt_rc4(key: bytes, data: bytes) → bytes | Шифруйте дані за допомогою алгоритму RC4 (ARC4). |
decrypt_rc4(key: bytes, data: bytes) → bytes | Розшифруйте дані за допомогою алгоритму RC4 (ARC4). |
decrypt_writer_encrypted_stream(file_key: bytes, algorithm: str, obj_id: int, data: bytes) → bytes | Розшифруйте байти потоку, створені методом :meth:PdfWriterV0._encrypt_data. |
compute_owner_key_v4(owner_password: str, user_password: str, key_length: int, revision: int) → bytes | Обчисліть значення пароля власника (O) згідно з Алгоритмом 3.3. |
compute_file_encryption_key(password: str, o_value: bytes, p_value: int, file_id: bytes, key_length: int, revision: int, encrypt_metadata: bool) → bytes | Обчисліть ключ шифрування файлу згідно з Алгоритмом 3.2. |
compute_user_key_v4(password: str, o_value: bytes, p_value: int, file_id: bytes, key_length: int, revision: int, encrypt_metadata: bool) → tuple[bytes, bytes] | Обчисліть значення пароля користувача (U) та ключ шифрування згідно з Алгоритмами 3.4/3.5. |
verify_password_v4(password: str, u_value: bytes, o_value: bytes, p_value: int, file_id: bytes, key_length: int, revision: int, encrypt_metadata: bool) → `bytes | None` |
compute_hash_v5(password: bytes, salt: bytes, user_key: bytes) → bytes | Обчисліть хеш для V5/R6 згідно алгоритму 2.B (ISO 32000-2). |
| `compute_user_owner_keys_v6(user_password: str, owner_password: str, file_key: bytes | None)→tuple[bytes, bytes, bytes, bytes]` |
verify_password_v6(password: str, u_value: bytes, o_value: bytes, ue_value: bytes, oe_value: bytes) → `bytes | None` |
encrypt_perms_v6(file_key: bytes, p_value: int, encrypt_metadata: bool) → bytes | Зашифрувати прапорець дозволів і метаданих для R6. |
derive_object_key(file_key: bytes, obj_num: int, gen_num: int, use_aes: bool) → bytes | Отримати ключ, специфічний для об’єкта, згідно Алгоритму 3.1. |
generate_file_id() → bytes | Згенерувати випадковий 16-байтовий ідентифікатор файлу для нових документів. |