7
votes

Est-il possible de vérifier si PDF est protégé par mot de passe à l'aide de Ghostscript?

est-il possible de vérifier si PDF est un mot de passe protégé avec Ghostscript? Quelle serait la commande? Je sais que vous pouvez désigner le mot de passe PDF à l'aide de Ghostscript, Mais tout ce que je veux faire, c'est juste vérifier si PDF est protégé par un mot de passe ou la sécurité activée.


1 commentaires

Après avoir lancé une prime, je voudrais également savoir s'il est possible de détecter les PDF protégés par mot de passe avec d'autres outils.


5 Réponses :


2
votes

avec pdftk code> Il est possible de détecter un mot de passe utilisateur ou un mot de passe de propriétaire en essayant simplement de faire un bennedata ​​code> opération.

 protected=0
 pdftk "input.pdf" dump_data output /dev/null dont_ask || protected=1


1 commentaires

J'ai essayé quelque chose de similaire, mais c'était limitant et PDFTK ne me donnait pas toujours un résultat correct.



9
votes

checkeuserpasswdpdf.sh : xxx

vérifie les PDFS protégés par mot de passe utilisateur: checkuerpasswdpdf.sh test.pdf

GS ignore les mots de passe propriétaires (voir Ceci ).


2 commentaires

humme cela semble prometteur, je vais essayer cela


Cette commande prend beaucoup de temps pour le plus grand PDF et augmente la charge de serveur



2
votes

Utilisation d'un fichier BAT, vous pouvez faire un peu de contournement en recherchant "chiffrer" dans les PDFS. Sa silence rapide à rechercher dans de nombreux fichiers. XXX

Ceci retournera tous les noms de fichiers sécurisés (car "chiffrer" seront écrits dans le fichier comme DOS le lit)

Peut-être que c'est quelque chose que quelqu'un peut utiliser. J'utilise:
for / f %% A in ('FindStr / m / i "Encrypypt" * .pdf') Déplacez %% AC: \ Tempfiles \
Pour déplacer tous les PDF sécurisés sur C: \ Tempfiles. À partir de là, j'utilise Ghostscript pour supprimer la sécurité et le déplacer dans le dossier d'origine.


1 commentaires

N'oubliez pas que cela ne distingue pas entre la protection du mot de passe du propriétaire et la protection par mot de passe de l'utilisateur. Ce test montre s'il a toute protection par mot de passe



1
votes

Vous pouvez tester en utilisant pdfinfo xxx


0 commentaires

0
votes

La réponse de @benoit donne des erreurs lachies sur la console, mais fonctionne.

Donc, je voudrais donc mettre cela à un oneiliner avec la suppression de la sortie d'erreur: P>

protected=0 && pdftk "input.pdf" dump_data output /dev/null dont_ask 2>/dev/null || protected=1


0 commentaires