Bhinish Dhiman

Protéger un PDF par mot de passe sans l'envoyer en ligne

Traduit de l’original en anglais. Lire l’original

Ajoutez le PDF à l'outil Protect PDF, saisissez un mot de passe dans son unique champ, appuyez sur le bouton et téléchargez la copie protégée, puis ouvrez-la une fois pour vérifier que le mot de passe fonctionne. Le chiffrement se fait dans votre navigateur en AES-256, l'algorithme que prescrit la norme ISO 32000-2 : le mot de passe n'est donc envoyé nulle part. Pour la même raison, personne ne pourra le récupérer pour vous si vous le perdez.

La méthode habituelle pour protéger un PDF par mot de passe en ligne consiste à envoyer le document et le mot de passe au serveur de quelqu’un d’autre. Ici, le chiffrement s’exécute dans l’onglet, ce qui supprime ce risque et vous en confie un autre : il n’y a personne à qui s’adresser ensuite. Bien faire les choses tient surtout à quelques secondes d’attention avant et après avoir appuyé sur le bouton.

Mot de passe utilisateur et mot de passe propriétaire

Un mot de passe utilisateur est celui qu’un lecteur PDF demande avant d’afficher quoi que ce soit du document. Un mot de passe propriétaire se contente de restreindre certaines actions, comme l’impression ou la copie, une fois le document ouvert ; les lecteurs sont censés respecter ces restrictions, et beaucoup ne le font pas.

L’outil définit un seul mot de passe et l’écrit pour les deux rôles. Dans protect, au sein de src/lib/pdf/ops.ts, le mot de passe propriétaire reprend le mot de passe utilisateur quand aucun n’est fourni, et la page ne propose pas de second champ. Considérez donc le mot de passe comme la protection, et toute restriction d’impression ou de copie, qu’elle vienne de cet outil ou d’un autre, comme une simple demande polie.

Protéger un PDF, étape par étape

  1. Notez le mot de passe à un endroit où vous le retrouverez, avant de commencer. Il n’existe ni réinitialisation ni support.
  2. Ouvrez Protect PDF et choisissez Add a PDF (ajouter un PDF). Si le fichier a déjà un mot de passe, il vous est demandé d’abord, et la copie protégée ne porte ensuite que le nouveau : c’est donc aussi la façon de changer le mot de passe d’un PDF.
  3. Saisissez le mot de passe dans Password to set (mot de passe à définir). Il n’y a pas de champ de confirmation : une faute de frappe ici devient le mot de passe.
  4. Appuyez sur Protect PDF. Une note confirme l’AES-256 et vous rappelle que personne ne peut récupérer le mot de passe. Téléchargez la copie, dont le nom reçoit le suffixe -protected.
  5. Ouvrez le fichier téléchargé dans votre lecteur habituel et saisissez le mot de passe. Cette vérification est la seule protection contre une faute de frappe à l’étape 3, et elle prend dix secondes.

En quoi consiste le chiffrement

L’outil chiffre au moyen de @cantoo/pdf-lib, dont le réglage par défaut est l’AES-256 : la révision 6 du gestionnaire de sécurité standard des PDF, avec le filtre de chiffrement AESV3. Il tire une clé aléatoire de 32 octets, soit 32 × 8 = 256 bits, chiffre le document avec elle, et ne stocke cette clé dans le fichier que sous forme enveloppée, scellée par le mot de passe. Les fichiers ainsi créés s’ouvrent dans les versions actuelles d’Acrobat, Preview, Chrome et Firefox.

Le RC4, l’ancien algorithme, est refusé. La bibliothèque ne l’utilise que si le code le demande explicitement, et son message d’erreur en donne la raison : “RC4 is broken and was removed from ISO 32000-2.” (le RC4 est cassé et a été retiré de l’ISO 32000-2). L’outil ne le demande jamais. Certains services en ligne produisent encore des fichiers protégés en RC4, qui demandent un mot de passe exactement de la même façon : l’invite seule ne vous dit donc rien de l’algorithme qui se trouve derrière.

Le chiffrement porte sur les chaînes et les flux du fichier, qui contiennent le texte et les données de dessin, et laisse sa structure d’objets lisible. Un lecteur peut toujours savoir combien de pages compte un PDF protégé et quelle est leur taille ; ce qu’il ne peut pas faire sans le mot de passe, c’est rendre le contenu des pages lisible.

Les méthodes comparées

Cet outil qpdf en ligne de commande Un service en ligne classique
Où le mot de passe est utilisé Votre navigateur Votre ordinateur Leur serveur
Algorithme AES-256 AES-256, avec 256 dans la commande Variable ; parfois encore RC4
Document conservé ailleurs Jamais reçu Jamais envoyé Conservé 1–2 heures
Récupération en cas de perte du mot de passe Aucune Aucune Aucune, et rarement précisé

Les deux façons dont la protection échoue

Le mot de passe est perdu

Un PDF protégé dont le mot de passe est perdu est perdu. Le mot de passe n’atteint jamais ce site, c’est tout l’intérêt de le faire dans le navigateur, mais cela signifie aussi qu’il n’y a ni porte dérobée, ni réinitialisation, ni personne pour vous aider. L’étape 1 existe pour cette raison.

Une modification ultérieure la supprime sans bruit

Tous les outils d’édition de ce site qui reçoivent un fichier protégé demandent le mot de passe, travaillent sur une copie déchiffrée et renvoient un résultat sans mot de passe : recadrage, numéros de page, filigrane, fusion et le reste. Le code source de l’atelier le dit en toutes lettres : il déchiffre le document une fois pour que chaque opération d’édition reçoive des octets en clair. L’ordre est donc simple : terminez toutes les modifications, puis protégez le fichier final.

Certains outils ailleurs échouent de façon pire. Un outil de fusion qui saute le déchiffrement copie les pages protégées alors qu’elles sont encore chiffrées ; dans notre mesure de la fusion de PDF chiffrés, les trois pages protégées sont ressorties blanches et seuls 49 caractères sur 373 ont survécu, sans aucune erreur affichée.

Les autres façons de protéger un PDF

Avec qpdf, cette commande écrit une copie en AES-256, où USERPW ouvre le fichier et OWNERPW est le mot de passe propriétaire :

qpdf --encrypt USERPW OWNERPW 256 -- input.pdf locked.pdf

C’est la voie à suivre si vous voulez deux mots de passe différents. Sur Mac, Fichier → Exporter dans Preview enregistre une copie, et ses options d’export permettent d’ajouter un mot de passe.

Vérifier que le mot de passe est resté local

Le chiffrement est local, et vous pouvez le constater. Ouvrez l’onglet Network des outils de développement de votre navigateur, puis ajoutez le PDF ; le code PDF de l’outil se télécharge à ce moment-là. Saisissez le mot de passe et appuyez sur le bouton : aucune requête n’apparaît avec le document ou le mot de passe. Passer hors ligne après avoir ajouté le fichier, puis le protéger quand même, le démontre tout autant.

Protégez la copie finale

Protect PDF chiffre en AES-256 et garde le mot de passe dans votre onglet. Si vous devez plus tard retirer la protection d’un fichier dont vous connaissez le mot de passe, Unlock PDF s’en charge, et comment retirer le mot de passe d’un PDF que vous pouvez déjà ouvrir explique ce que conserve cette copie.