signaturepdf icon indicating copy to clipboard operation
signaturepdf copied to clipboard

Signature numérique avec certificat p12

Open ldubost opened this issue 2 years ago • 4 comments

Il serait intéressant d'être capable de faire des signatures numériques PKCS#7 avec des certificats p12

ldubost avatar Nov 18 '22 10:11 ldubost

Une implement de signature numérique a été réalisé dans l'intégration cryptpad (voir #46). Le code est ici:

https://github.com/xwiki-labs/cryptpad/blob/e4ba39bdd00e8affacf1b7f8e1ff1648a919bfba/www/sign/inner.js#L955

Cela utilise un fork de node-signpdf https://github.com/ldubost/node-signpdf qui permet de faire un build client-side webpack de node-signpdf (non disponible dans la version original)

Ce fork inclus aussi une modularisation permettant de faire de la signature PDF par certificat p12 mais aussi avec une delegation de la signature à une clé USB.

Plus d'explications sont disponible au début du readme: https://github.com/ldubost/node-signpdf

ldubost avatar Nov 18 '22 10:11 ldubost

Le readme explique aussi l'implementation de signature clé USB avec 2 programmes supplémentaires:

Firefox Web Extension: https://github.com/ldubost/pkcs7sign-webextension-firefox
NodeJS Host for Web Extension: https://github.com/ldubost/pkcs7sign-host-nodesigning

ldubost avatar Nov 18 '22 10:11 ldubost

La partie UI de la signature digitale est pour l'instant incomplète. Le certificat p12 est acutellement hardcodé et un bouton spéciale est mis pour dire qu'on veut une signature digitale. Le password du certificat p12 est demandé (client side) et le certificat est utilisé pour signer. Il est prévu dans cryptpad de stocker le certificate p12 dans le drive et aussi possiblement de proposer aux utilisateurs de générer des certificats avec une autorité de certification cryptpad (mais ce travail est non prioritaire actuellement)

ldubost avatar Nov 18 '22 10:11 ldubost

Related #81

wincelau avatar Dec 08 '23 08:12 wincelau