Journal Utiliser un certificat de signature électronique

Posté par  . Licence CC By‑SA.
39
29
oct.
2023

Dans un contexte professionnel, je suis amené à utiliser des certificats électroniques pour signer des documents ou réaliser des procédures en ligne. Comme l'usage des certificats est assez capricieux, nous avons un poste dédié à cet usage. Néanmoins, j'ai pris un peu de temps pour tester l'usage sur mon poste Linux.

Le certificat utilisé est vendu par Certinomis, une marque de Docaposte, filiale de LaPoste, mais le matériel s'avère être composé d'un lecteur USB de marque FEITAN. A priori le modèle SCR301. Tandis que la puce est de marque THALES/GEMALTO.

Le site officiel présente des drivers pour Windows, Mac et Linux. Top ! https://www.certinomis.fr/drivers-gemalto

Je ne dispose pas d'une distribution Ubuntu ou Fedora/CentOS/RedHat, mais ma distribution propose logiciel "sac-gui" en version 10.8

Une fois installé, le lecteur n'est pas reconnu par le logiciel. J'ai mis un peu de temps à trouver, mais il faut simplement lancer le service pcscd par la commande "sudo systemctl start pcscd.service" et remplacer start par enable pour que cela soit permanent. Dommage que cela ne soit pas mis en avant ou proposé par le logiciel, car j'ai cherché un moment.

Ensuite, dans Firefox, il faut aller dans :
1. Paramètres
2. Vie privée et sécurité
3. Périphériques de sécurité
4. Cliquer sur "Charger"
5. Choisir un nom, puis parcourir pour choisir le fichier libeTPkcs11.so Chez moi il était dans le dossier personnel .cache/sac-core/src/usr/lib/libeTPkcs11.so

Le fabricant recommande ensuite de tester le bon fonctionnement en ouvrant en navigation privée le site https://test.certinomis.com/ Une fois sur le site, il est demandé le code PIN / Mot de passe du certificat et cela affiche un résultat confirmant le bon fonctionnement.

Cela permet effectivement de signer des procédures en ligne, comme pour répondre aux marchés publics.

Le certificat permet aussi de signer des fichiers, comme des PDF. Pour réaliser cette opération sous Linux, j'ai vu que l'on peut utiliser LibreOffice. Ce n'est pas le logiciel que j'aurai imaginé utiliser pour cela, mais il suffit d'ouvrir LibreOffice, puis Fichier -> Signatures numériques -> Signer un PDF. Cela ouvre le PDF en lecture seule et il faut cliquer sur "Signer le document" puis saisir le code PIN / Mot de passe pour signer le PDF sélectionné.

C'est effectivement simple, mais j'essayerai de trouver un logiciel qui permet d'ajouter un filigrane ou un tampon en plus de la signature électronique. C'est pratique lorsqu'ils sont imprimés ou ouverts, surtout avec des lecteurs qui ne permettent pas de visualiser les signatures électroniques.

D'ailleurs sous Linux, Okular permet de visualiser les signatures électroniques d'un fichier PDF, mais ne permet pas de signer. Evince, le logiciel par défaut de GNOME, ne permet rien du tout pour le moment.

Le principe de la signature électronique est inscrit dans la loi depuis plus de 20 ans, les marchés publics obligent l'utilisation de signatures électroniques, de même que de nombreuses procédures en ligne, et on va voir arriver la transmission obligatoire de factures électroniques, mais le poste de travail sous GNOME n'intègre pas de logiciel pour voir les signatures électroniques. C'est bien dommage, surtout que l'installation pour arriver à avoir un certificat qui fonctionne a été très rapide, par rapport aux galères que l'on a sans arrêt avec Windows.

Et vous, est-ce que vous utilisez la signature électronique ?

  • # Norme ?

    Posté par  (site web personnel) . Évalué à 5.

    Est-ce que tu sais quelle norme est utilisée pour ces certificats ?
    X509 ? OpenPGP ?

    • [^] # Re: Norme ?

      Posté par  . Évalué à 4.

      Lorsque je signe un document PDF, il est précisé qu'il a été signé par un certificat X.509 chiffré par une clé RSA-2048

      Je ne sais pas si l'on peut changer le type de certificat.

      C'est un certificat RGS au niveau 2 étoiles. Il permet donc de réaliser toutes les démarches en ligne qui requièrent ce type de certificat, mais aussi de chiffrer des emails ou des données, mais je n'ai jamais utilisé de certificat pour cet usage. Uniquement pour des réponses à appel d'offres.

  • # Juste pour infos

    Posté par  (site web personnel) . Évalué à 5. Dernière modification le 29 octobre 2023 à 20:50.

    Pour avoir eu affaire avec CERTINOMIS il y a quelques années, je peu au moins dire que le support a été performant sympa et compétent.
    Une sombre affaire de type de certificat pour un serveur que devait reconnaître un logiciel d'échanges de fichier (Axway Transfer …)
    Il m'ont envoyé plusieurs types de certificats valable 1 mois pour tester.
    Ce qui m'a permis de résoudre le problème.

    • [^] # Re: Juste pour infos

      Posté par  (site web personnel) . Évalué à 2.

      Ces histoires de signature numérique (la votre, celle du journal…) ne semblent-elles pas ouvrir bien grand la porte à des techniques d'ingénierie sociale, vu le côté hésitant des mises en œuvre ?

      « IRAFURORBREVISESTANIMUMREGEQUINISIPARETIMPERAT » — Odes — Horace

      • [^] # Re: Juste pour infos

        Posté par  (site web personnel) . Évalué à 9.

        Mon avis qui n'engage que moi :

        Les certificats tel que pratiqué il y a quelques années par ces "Autorités de confiance"

        ce n'est que de la fumisterie, c'est juste un truc pour te piquer du pognon sous prétexte d'être sécure

        Sans vouloir tomber dans le complotisme cela a été très bien organisé, d'abord les (con)sultants en sécurité qui ne jurait que par les certificats SSL,

        De la les grosses entreprises (Banques, Assurance etc …) se devait d'avoir une protection à base de certificat, payant bien sur sinon c'est pas sécure , et qu'il fallait en mettre de partout.

        Y compris sur des protocoles éprouvés et sécurisés comme PeSit par exemple qui tournait depuis plusieurs dizaines d'années et qui n'en avait pas besoin … il y en a même qui ne jurait que par la double authentification par certificat (client et serveur) par dessus un protocole comme PeSit ( https://fr.wikipedia.org/wiki/PeSIT )

        Bref il y a une dizaine d'années ont pouvait acheter des certificats valables 3 ans (peut être plus me souviens plus) puis comme cela avait bien fonctionné, les sultans en sécurité ont fini par dire que les certificats devaient être changé tout les 2 ans … à 800 euros le certificat multiplié par le nombre d'entreprise et de serveurs cela finit par faire beaucoup d'argent

        Bref une escroquerie informatique de plus comme la crypto monnaie, les NFT, Windows etc …

        • [^] # Re: Juste pour infos

          Posté par  (site web personnel) . Évalué à 4. Dernière modification le 04 novembre 2023 à 15:05.

          Je confirme que ce n'est que de la fumisterie.

          Mais bon, si tu expliques à la banque que tu veux faire un truc solide, efficace parce que tu décentralises la confiance et que donc les clients pourront se passer de toi (ce qui est un gage de solidité et de sécurité).

          Ben les banques te diront au revoir.

          Et mettrons des millions (voir des milliards si t'es au US), pour le concurrent qui vérouille* et "tire un maximum de valeurs de" leur clients (un verbe plus fleuri pour remplacer les guillemets pourrait être mérité…).

          C'est la raison principale du non-succès d'OpenPGP, au détriment de cette horreur d'X509.

          https://gnutls.org/openpgp.html

          Je moinsse, tu moinsses, il moinsse, nos bots moinssent ...

          • [^] # Re: Juste pour infos

            Posté par  (site web personnel) . Évalué à 4.

            De toute façon difficile de lutter contre les banques, ils ont trop d'argent à dépenser avec leurs copains.

            Et ce même si des monstres comme AWS, montre la voie, et prouve qu'il est possible qu'une infra de sécurité de niveau mondiale soit basée sur SSH est viable

            Merci de ta réponse, cela ne va pas changer le cours des choses, mais parfois on se sent tellement isolé sur des sujets de ce style.

  • # La voilà

    Posté par  (site web personnel) . Évalué à 7.

    Et vous, est-ce que vous utilisez la signature électronique ?

    Oui, mais seulement avec un PNG certifé conforme par un tiers de confiance (Certidavomis Truste & Signe) :

    ouam

    Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

  • # Signer avec Okular

    Posté par  (site web personnel) . Évalué à 10.

    Okular sait signer numériquement un PDF, mais la configuration n'est pas évidente.

    Okular (en réalité Poppler) utilise la base NSS (la même utilisée par Chromium & Co.) située par défaut dans ~/.pki/nssdb. Il y a une commande modutil à passer pour déclarer votre bibliothèque PKCS11, rechercher "linux chromium pkcs11" pour trouver un myriade de pages expliquant la procédure.

    Ensuite, relancer Okular puis aller dans le menu Configuration > Configuration des moteurs de rendu. Dans la fenêtre, sélectionner le type PDF à gauche. Si votre carte ou token est branché, vous devriez avoir une demande de PIN. Après l'avoir validé, Okular présente les certificats disponibles.

    • [^] # Re: Signer avec Okular

      Posté par  . Évalué à 6.

      Okular utilisait un ancien profil de Firefox, mais lorsque j'ai mis le même chemin que celui utilisé par LibreOffice et visible dans le menu Outils -> Options -> Sécurité -> Chemin du certificat, cela a fonctionné sans problème.

      Avec un clic dans le menu Outils -> Signatures numériques en cours, une fenêtre demande de saisir le code PIN, puis de dessiner un rectangle dans le PDF et enfin de renseigner de façon optionnelle, la raison, l'emplacement et un arrière-plan. Une fois que cela est fait, il est demande d'enregistrer le fichier auquel l'extention signé à été ajouté au nom du fichier d'origine.

      C'est assez pratique et finalement mieux que LibreOffice. Même si le pavé de signature qui est ajouté n'est pas très joli, au moins il est présent et permet de communiquer l'information aux personnes qui n'ont pas de lecteur permettant de visualiser les signatures électroniques ou tout simplement pour une impression.

      Merci pour cette info !

  • # Filigrane

    Posté par  (site web personnel, Mastodon) . Évalué à 8. Dernière modification le 30 octobre 2023 à 19:52.

    On peut ajouter des filigranes de deux façons avec LibreOffice (voire, trois) :

    • en passant par le menu Format -> Filigrane, on peut régler ça aux petits oignons, cela s'appliquera à toutes les pages,
    • via les formats de page en ajoutant un arrière-plan (il faut donc avoir une image à ajouter), on peut décider de ne l'ajouter qu'à certaines pages (styles de pages), varier les filigranes, etc.,
    • au moment de l'export en PDF, mais là on ne peut rien paramétrer du tout (je ne conseille pas, donc).

    « Tak ne veut pas quʼon pense à lui, il veut quʼon pense », Terry Pratchett, Déraillé.

    • [^] # Re: Filigrane

      Posté par  . Évalué à 3.

      Lorsque j'ouvre LibreOffice, il propose le menu Fichier -> Signatures numériques -> Signer un PDF existant. Cela ouvre une fenêtre surgissante pour sélectionner le fichier à signer puis cela ouvre LibreOffice Draw.

      Dans le menu Format, il n'y a pas d'option pour intégrer un filigrane. De plus, une infobulle mentionne « Ce PDF est ouvert en mode lecteur seule pour autoriser la signature du fichier existant »

      Il y a bien la possibilité d'aller dans Insertion -> Ligne de signature. Dans ce cas, cela affiche la mention « Signé numériquement par XXX Le 04/11/2023 », mais lors de l'export en PDF, le fichier n'est pas signer. Il faut refaire « Signer un PDF existant » et ne rien modifier. Bref, pas très pratique, même si c'est dommage, car le pavé ajouté est plus joli que celui d'Okular.

  • # pcscd qui ne démarre pas tout seul

    Posté par  . Évalué à 1.

    Le problème de pcscd qui ne démarre pas tout seul est surement le bug pcscd: dh_installsystemd doesn't handle files in /usr/lib/systemd/system #1034209 (Debian) ou pcscd.socket is disabled after installation (Ubuntu)
    Il a été corrigé juste avant la release de Debian 12 (Bookworm) en juin 2023.

    Concernant la distribution utilisée par l'auteur du journal je ne sais pas puisque la distribution n'est pas nommée.

  • # une autre clé...

    Posté par  . Évalué à 2.

    merci pour toutes ces infos très utiles.

    J'essaye sans succès de faire fonctionner ma clé "chambersign" sur Ubuntu alors que l'assistance avoue son incompétence. La clé "2 étoiles" Eidusio est supposée pouvoir fonctionner sur Ubuntu 2018 et 2020.

    Je teste sur 2 Ubuntu à ma dispo: un 2018-04 (sur lequel la clé est supposée fonctionner) et un 2022-04 sur laquelle on ne sait pas. J'ai installé le pilote dans les 2 cas (pour 2022-04 j'ai dû installer libssl1 auparavant).

    • Pour le 2018-04 j'arrive à Charger le certificat depuis firefox. Mais le test ne passe pas: après avoir entré le code pin j'obtiens une erreur "Le pair SSL n'a pas réussi à négocier un jeu de paramètres de sécurité acceptable". J'ai utilisé un fichier libidop11.so trouvé dans /usr/lib puis répertoire du paquet du pilote.

    • Pour le 2022-04 je n'arrive pas à charger le certificat dans firefox. Je soupçonne que cela a un lien avec ssl1 et ssl3.

    Si qq'un a une idée dans un cas ou l'autre…

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.