Outil de vérification TBSSignaturePDFVerify
Généralités
Cet outil vérifie la validité de la signature apposée sur un document PDF. L'outil affiche également les informations de sujet et d'émetteur du certificat à l'origine de la signature et les informations d'un éventuel horodatage.
Cette vérification s'effectue au niveau de :
- la portée de la signature (concerne tout le document ?)
- l'intégrité du document signé
- Le certificat utilisé pour signer (approuvé par l'Autorité de Certification ? Expiré ? Révoqué ? ...)
Utilisable en ligne de commande, il ne nécessite aucune installation. Développé sous un environnement Java 1.6, il est disponible pour les plateformes Linux et Windows.
La commande de lancement est de la forme :
java -jar TBSVerifySignaturePDF.jar -in xxx
Paramètres
L'utilitaire prend en arguments un paramètre indispensable :
-in fichierPDF
Paramètres facultatifs :
-ks keystore.p12 -pwd motdepasse -out fichierderevision -proxyHost proxy -proxyPort numero -crl fichier_crl -proxyLogin login -proxyPasswd s3cret
Détails paramètres
-in fichierPDF : le fichier PDF concerné par la vérification.
-ks : un keystore de vérification (contenant des certificats racines de confiance). Si non spécifié l'outil utilise un keystore interne validé par TBS.
-pwd motdepasse : mot de passe du keystore
-out fichierderevision : crée un fichier revision_numero.pdf, avec un numéro correspondant au numéro de la révision de la signature.
-proxyHost proxy : alias ou adresse ip du proxy
-proxyPort numéro : numéro de port du proxy
-proxyLogin : login de connexion au proxy
-proxyPasswd : mot de passe de connexion au proxy
-crl fichier_crl : si vous spécifier le nom d'un autre fichier crl
Exemples
Vérification du document PDF : mondoc.pdf
java -jar TBSVerifySignaturePDF.jar -in mondoc.pdf
Signature du document PDF mondoc.pdf en spécifiant les informations de proxy
java -jar TBSVerifySignaturePDF.jar -in mondoc.pdf -proxyHost 192.168.2.3 -proxyPort 8080 -proxyLogin login -proxyPasswd s3cret
Signature du document PDF mondoc.pdf en spécifiant un keystore utilisateur
java -jar TBSVerifySignaturePDF.jar -in mondoc.pdf -ks myKeystore.jks -pwd s3cret
Remarque : pour les noms de fichiers, veillez à spécifier les chemins absolus.
Déroulement de l'application
Lorsque vous lancez l'application vous allez voir apparaitre 4 étapes :
- Étape 1 : Affichage de la portée de la signature et du numéro de révision. Affiche également le sujet et l'émetteur du certificat ainsi que la liste des CRLs trouvées.
- Étape 2 : Indique si le document a subi des modifications.
- Étape 3 : Téléchargement des éventuelles CRLs et confrontation du certificat avec celles-ci.
- Étape 4 : Affichage des informations liées à un éventuel horodatage du certificat.
- Pour terminer affichage des éventuelles erreurs.
Cas d'erreur
java.io.FileNotFoundException
java.lang.NoClassDefFoundError
java.io.FileNotFoundException
Vous avez peut être omis de spécifier le chemin absolu du fichier PDF (ou du fichier pkcs12) que vous voulez signer.
java.lang.NoClassDefFoundError
Vous avez peut être omis l'expression " -jar " avant le fichier jar.
Crédits
Nos remerciements vont, entre autres, à Bruno Lowagie et Paulo Soares pour toutes les classes qu'ils ont mis à disposition du public sous licence GPL et qui ont facilité le développement de notre outil.