From fda4e80e1448c5bd816eccc651e9444516f6ab95 Mon Sep 17 00:00:00 2001 From: Martin Thoma Date: Sun, 21 Jul 2024 15:32:03 +0200 Subject: [PATCH] MAINT: Deal with cryptography>=43 moving ARC4 --- pypdf/_crypt_providers/_cryptography.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pypdf/_crypt_providers/_cryptography.py b/pypdf/_crypt_providers/_cryptography.py index b8515cd44b..f5537612d2 100644 --- a/pypdf/_crypt_providers/_cryptography.py +++ b/pypdf/_crypt_providers/_cryptography.py @@ -29,7 +29,13 @@ from cryptography import __version__ from cryptography.hazmat.primitives import padding -from cryptography.hazmat.primitives.ciphers.algorithms import AES, ARC4 +from cryptography.hazmat.primitives.ciphers.algorithms import AES + +try: + # 43.0.0 - https://cryptography.io/en/latest/changelog/#v43-0-0 + from cryptography.hazmat.decrepit.ciphers.algorithms import ARC4 +except ImportError: + from cryptography.hazmat.primitives.ciphers.algorithms import ARC4 from cryptography.hazmat.primitives.ciphers.base import Cipher from cryptography.hazmat.primitives.ciphers.modes import CBC, ECB