Aller au contenu
100 % local · 0 Ko téléversésCompresser un PDF

Chiffrement PDF expliqué : RC4 vs AES-128 vs AES-256

Le chiffrement PDF est la protection cryptographique appliquée aux flux de contenu d'un PDF afin que le fichier ne puisse pas être lu sans mot de passe. La spécification PDF a pris en charge plusieurs algorithmes au fil de son histoire, et tous ne sont plus sûrs. Cette page explique ce que fait chaque algorithme, quelle version PDF l'a introduit et lequel vous devriez choisir en protégeant un fichier aujourd'hui.

Mécanisme

Comment fonctionne le chiffrement PDF

Quand un writer PDF chiffre un fichier, il génère une clé de chiffrement de fichier aléatoire, utilise cette clé pour chiffrer les flux de contenu (et certaines autres chaînes du fichier), puis stocke la clé de chiffrement de fichier dans un dictionnaire de chiffrement protégé par le mot de passe de l'utilisateur. Pour ouvrir le fichier, un visualiseur demande le mot de passe, dérive une clé de celui-ci, utilise cette clé pour déchiffrer la clé de chiffrement de fichier, puis utilise la clé de chiffrement de fichier pour déchiffrer le contenu.

La conséquence importante : le mot de passe n'est pas stocké dans le fichier. Ce qui est stocké est une valeur chiffrée avec le mot de passe. Pour vérifier un mot de passe, le visualiseur tente de déchiffrer cette valeur et compare le résultat à un marqueur de texte clair connu. C'est pourquoi il n'y a pas de récupération de mot de passe — le fichier ne contient pas le mot de passe, seulement quelque chose verrouillé par lui.

Algorithme

RC4 — obsolète et cassé

RC4 est un chiffrement de flux conçu en 1987 et largement utilisé dans les années 90 (PDF, SSL, WEP). PDF 1.2 a introduit RC4 40 bits ; les versions ultérieures l'ont étendu à RC4 128 bits. RC4 est désormais obsolète en PDF et considéré cassé pour un usage de sécurité moderne. Spécifiquement :

  • RC4 40 bits est trivialement cassable par force brute sur du matériel moderne.
  • RC4 128 bits n'est pas cassable par force brute, mais RC4 a des biais statistiques qui fuient de l'information sur le texte clair, et plusieurs attaques pratiques sur des PDF chiffrés avec RC4 ont été publiées.
  • Les visualiseurs modernes avertissent ou refusent d'ouvrir des fichiers chiffrés avec RC4 dans certaines configurations.

Ne créez pas de nouveaux PDF chiffrés avec RC4. Si vous en rencontrez un, déchiffrez-le (avec le mot de passe) et re-chiffrez-le avec AES-128 ou AES-256.

Algorithme

AES-128 — solide, largement pris en charge

AES-128 a été introduit dans PDF 1.5 (2003, Acrobat 6/7). AES est un chiffrement par bloc ; AES-128 utilise une clé de 128 bits. Le mode AES de PDF utilise CBC avec un vecteur d'initialisation aléatoire de 16 octets par chaîne. AES-128 n'a pas d'attaques pratiques contre lui et est largement pris en charge par tous les visualiseurs PDF modernes. C'est un défaut raisonnable quand AES-256 n'est pas disponible.

Algorithme

AES-256 — le standard actuel

AES-256 a été introduit dans PDF 1.6 Extension Level 3 (2008, Acrobat 9). Il utilise une clé de 256 bits et, dans la conception originale PDF 1.6 Ext Level 3, dérive la clé du mot de passe avec SHA-256. Une révision ultérieure (PDF 2.0 / Extension Level 8) a ajouté une dérivation de clé plus forte utilisant PBKDF2 avec de nombreuses itérations, rendant la force brute beaucoup plus difficile. C'est parfois appelé « AES-256 R6 » ou « compatibilité Acrobat X ».

Préférez AES-256 chaque fois que votre outil l'offre. Si vous avez le choix entre l'ancienne et la nouvelle dérivation de clé, choisissez la nouvelle (basée sur PBKDF2).

Historique

Quelle version PDF a introduit quel algorithme

  • PDF 1.2 (1996) — RC4 40 bits.
  • PDF 1.3 (1999) — RC4 128 bits.
  • PDF 1.5 (2003) — AES-128 (V4, R4).
  • PDF 1.6 Ext Level 3 (2008) — AES-256 (V5, R5).
  • PDF 2.0 / Ext Level 8 (2017) — AES-256 avec dérivation de clé PBKDF2 (V5, R6).

Pratique

Quel algorithme choisir

Pour nouveaux fichiers : AES-256 avec dérivation de clé PBKDF2 (R6) si le signataire et les visualiseurs destinataires le prennent en charge ; sinonAES-128. Ne choisissez jamais RC4 pour un nouveau fichier. Le mot de passe importe plus que l'algorithme : un mot de passe de 6 caractères sur AES-256 est plus faible qu'un mot de passe aléatoire de 20 caractères sur AES-128, car la surface d'attaque est le mot de passe, pas le chiffrement.

Pour ouvrir d'anciens fichiers : tout visualiseur moderne gérera les trois. Si vous contrôlez le fichier, déchiffrez et re-chiffrez avec AES-256.

Un sanity check utile : après avoir protégé un PDF, essayez de l'ouvrir dans un visualiseur différent de celui utilisé pour le chiffrer. Si un second visualiseur peut l'ouvrir sans avertissements, le chiffrement est largement compatible. Si seul l'outil original peut l'ouvrir, vous avez peut-être utilisé un mode non standard.

IXPDF

Capacité de chiffrement d'IXPDF aujourd'hui

Le moteur PDF actuel d'IXPDF (pdf-lib) ne prend pas en charge l'écriture ou la lecture de PDF chiffrés. Les pagesProtéger PDF etDéverrouiller PDFexpliquent la limitation honnêtement et sont marquées Recherche requise. Nous évaluons une librairie de chiffrement compatible navigateur qui nous permettrait d'offrir la protection AES-256 entièrement dans le navigateur, sans téléchargement. D'ici là, consultez notreguide de protection par mot de passepour des outils locaux de confiance.

À lire aussi

Ressources associées