Caviarder un PDF pour que le texte soit irrécupérable
Comment masquer du texte dans un PDF pour qu’il soit réellement irrécupérable ?
Enregistrez vos outils favoris
Créez un compte iBuildPDF gratuit pour conserver vos outils favoris et les retrouver rapidement à tout moment.
Compte gratuit. Les outils PDF eux-mêmes n’en demandent jamais.
Réponse courte
Dessiner un rectangle noir sur du texte ne supprime pas ce texte — les mots sont toujours dans le fichier, en dessous, et ressortent tels quels au copier-coller. Un vrai caviardage suppose de détruire le contenu sous-jacent, ce que fait /redact-pdf en reconstruisant les pages marquées sous forme d’images, et vous devriez toujours vérifier le résultat en tentant à nouveau d’en extraire le texte.
La version courte
Un PDF est une liste d’instructions de dessin. Ajouter un rectangle noir sur un nom ajoute une instruction de plus : dessine un rectangle noir plein à ces coordonnées. L’instruction qui dessine le nom est toujours dans le fichier, plus haut dans la même liste. Le rectangle se pose visuellement par-dessus et ne lui fait structurellement rien du tout.
Sélectionnez la zone dans un lecteur PDF et appuyez sur copier. Le nom est dans votre presse-papiers ; rien n’a été forcé, le texte a simplement été lu dans le fichier comme n’importe quel lecteur lit n’importe quel texte.
Un caviardage qui tient signifie supprimer du contenu, pas le masquer. Tout le reste de cette page découle de cette distinction.
Pourquoi les rectangles noirs échouent
Selon la norme ISO 32000-1, qui définit le format PDF, les marques d’une page proviennent d’un flux de contenu : une suite d’opérateurs qui positionnent une police, définissent une couleur et affichent une chaîne de caractères. Le texte est stocké comme du texte. C’est ce qui rend un PDF consultable, et c’est pourquoi un lecteur peut vous restituer les mots que vous sélectionnez.
Recouvrir n’est pas supprimer
- Un rectangle noir dessiné par-dessus le texte. Cela paraît terminé.
- Le texte est toujours dans le fichier, dessous. Sélectionnez-le, copiez-le, ou ouvrez le fichier dans un éditeur et le voilà.
- Un caviardage correct reconstruit la page sans ces caractères.
- Il n’y a plus rien sous la marque, car il n’y a plus rien à trouver.
Une forme dessinée ensuite n’est qu’un opérateur de plus dans le même flux. L’ordre de tracé décide de ce que vous voyez ; il ne décide pas de ce qui existe. Les mots survivent donc à toutes les façons d’accéder au fichier qui ne consistent pas à le regarder :
- Sélectionner et copier dans n’importe quel lecteur PDF.
pdftotext, ou tout autre utilitaire d’extraction, qui ignore complètement les graphiques et renvoie la couche de texte.- La recherche — le document reste indexable sur les mots masqués, y compris par les moteurs de recherche s’il est publié.
- Ouvrir le fichier dans un éditeur et supprimer le rectangle, ce qui rétablit exactement l’apparence d’origine.
Ce mode de défaillance a provoqué de véritables divulgations. Le schéma se répète dans les pièces de procédure et les publications officielles : un document est publié avec des noms ou des chiffres couverts par des rectangles noirs, et en quelques heures quelqu’un en a copié le texte directement. La National Security Agency américaine publie des recommandations sur l’assainissement des fichiers PDF précisément pour cette raison, et son instruction centrale est celle énoncée plus haut — couvrir un contenu, ce n’est pas le supprimer.
Cela vaut pour toutes les variantes. Du surligneur jaune sur du texte noir, du texte blanc sur fond blanc, une boîte colorée ou une forme dans une couche d’annotations : ce sont autant de modifications cosmétiques de ce qui est dessiné ; les caractères restent dans le flux de contenu et un extracteur de texte les restitue. Le blanc sur blanc est le pire du lot, parce qu’il n’a même pas l’air caviardé.
Ce qui fonctionne réellement
Un caviardage correct n’a qu’une exigence : le contenu qui portait l’information sensible ne doit plus se trouver dans le fichier. Il y a deux façons d’y parvenir.
La première est chirurgicale : analyser le flux de contenu, supprimer les opérateurs d’affichage de texte couvrant la zone caviardée, puis réécrire le flux. C’est précis, mais fragile : le texte est positionné par fragments qui coïncident rarement avec les mots. Mal exécutée, l’opération laisse des chaînes partielles derrière elle, ce qui est le pire résultat possible, puisque le fichier a alors l’air caviardé sans l’être.
La seconde consiste à reconstruire la page de sorte que les objets texte d’origine n’existent plus du tout. C’est ce que fait l’outil de caviardage d’iBuildPDF. Vous marquez les zones à supprimer ; pour chaque page marquée, l’outil rend cette page avec PDF.js, dessine vos zones de caviardage en aplat sur les pixels rendus, puis écrit avec pdf-lib une nouvelle page construite à partir de cette image. La page reconstruite contient une image et aucun opérateur de texte. Il n’y a rien sous les zones noires parce qu’il n’y a plus rien sous quoi que ce soit — la page n’est désormais que des pixels.
Le compromis est réel et vous devez l’anticiper. Sur chaque page que vous caviardez, tout le texte cesse d’être sélectionnable, pas seulement la partie caviardée. Ces pages ne sont plus consultables, copiables ni lisibles par un lecteur d’écran, et la taille du fichier augmente généralement, car l’image d’une page de texte pèse plus lourd que ne pesait ce texte.
Les pages que vous ne marquez pas restent exactement telles quelles : un rapport de 200 pages avec deux pages caviardées conserve 198 pages consultables. Lorsque le compromis est inacceptable — exigence d’accessibilité, ou document devant rester consultable de bout en bout — caviardez plutôt à la source : supprimez le texte dans l’original et exportez un nouveau PDF. Dans tous les cas, caviardez en dernier : réexporter depuis l’original ensuite rétablit silencieusement tout ce que vous aviez supprimé.
Vérifier que cela a fonctionné
Ne diffusez jamais un document caviardé que vous n’avez pas testé. Le test prend deux minutes.
- Copier-coller. Ouvrez le fichier téléchargé, sélectionnez la zone caviardée et une bonne marge autour, copiez, puis collez dans un éditeur de texte brut. Sur une page correctement reconstruite, vous n’obtenez rien, parce qu’il n’y a aucun texte à sélectionner.
- Extraire tout le document. Passez le résultat par PDF en texte et recherchez la chaîne caviardée dans la sortie. C’est la vérification la plus importante, car elle couvre l’intégralité du fichier et non la seule zone que vous avez sélectionnée — y compris une page où le même nom apparaît et que vous auriez oublié de marquer. Cherchez aussi des fragments : un nom de famille seul, les six derniers chiffres d’un numéro de compte.
- Vérifier les métadonnées. Ouvrez le fichier dans l’éditeur de métadonnées. Les termes sensibles survivent couramment dans les champs Titre ou Mots-clés, et le Titre est très souvent le nom de fichier d’origine —
Dupont-transaction-confidentiel.pdfréduit à néant le caviardage de la page quatre sans que personne n’ait lu cette page.
Les trois outils s’exécutent dans votre navigateur : vérifier un fichier confidentiel n’implique donc pas de l’envoyer en ligne. Si une recherche fait effectivement ressortir quelque chose, considérez le fichier comme non caviardé plutôt que de le rafistoler avec un rectangle de plus.
Ce que le caviardage ne peut pas faire
Quatre limites, dites franchement.
- Il n’agit que sur la copie que vous téléchargez. Le caviardage produit un nouveau fichier. L’original reste inchangé sur votre disque, et toute copie déjà envoyée, archivée ou sauvegardée contient encore tout. Si la version non caviardée vous a échappé, la caviarder maintenant n’y change rien.
- L’ordre compte lors de la rastérisation. Reconstruire une page sous forme d’image n’est sûr que parce que la zone caviardée est remplie avant que l’image ne soit écrite — les pixels noirs remplacent les pixels qui affichaient le texte. Un procédé qui rastérise d’abord la page puis pose un rectangle noir sur l’image obtenue a recréé le problème d’origine sous une autre forme : les mots sont toujours là, en pixels sous le rectangle, récupérables par quiconque le retire. Vérifiez avec le test d’extraction ci-dessus plutôt que de supposer qu’un outil a respecté le bon ordre.
- L’image d’une page reste lisible par une machine. La rastérisation met en échec le copier-coller et l’extraction de texte ; elle ne rend pas le texte visible restant illisible pour une reconnaissance optique de caractères, fonction ordinaire de logiciels largement répandus. Le caviardage protège le contenu couvert, pas le reste de la page. iBuildPDF ne propose pas d’OCR — il n’existe aucun outil de ce type sur le site — il s’agit donc ici de ce que quelqu’un d’autre peut faire de votre résultat.
- Les métadonnées forment un système à part. Les champs d’information du document et le bloc XMP se trouvent en dehors du contenu des pages et ne sont pas touchés par ce que l’on fait aux pages. Effacez-les avec supprimer les métadonnées d’un PDF, et voyez ce que contiennent les métadonnées d’un PDF pour savoir ce que ces champs renferment.
L’habitude qui évite la plupart des échecs de caviardage est simple : partez du principe que le fichier contient encore ce que vous avez supprimé, et obligez-le à prouver le contraire en en extrayant le texte et en le recherchant.
Les outils traités dans cet article
Sources
Documentation primaire des affirmations ci-dessus.