Ce forum est en partie financé par l’affichage de publicités. Merci de désactiver votre bloqueur de publicités pour nous permettre de continuer à fournir ce service.
  1. Découvrez macOS High Sierra avec notre nouveau livre Le guide de macOS High Sierra.
    Rejeter la notice

Mac OS X et les signatures électroniques

Discussion dans 'macOS' créé par omni, 22 Septembre 2015.

Modérateurs: Aliboron, bompi, daffyb
  1. bompi

    bompi El Moderador
    Modérateur Club MacG

    Inscrit:
    12 Février 2004
    Messages:
    41 626
    J'aime reçus:
    3 078
    OK. Il se pourrait bien que la solution indiquée dans le second post de cette page puisse te convenir.

    Grosso modo, le problème est similaire au tien : les personnes concernées inscrivaient leurs certificats à un endroit donné alors qu'il fallait les mettre ailleurs...
    Quand l'applet Java se lance, elle le fait dans un contexte "navigateur", autrement dit, le répertoire de référence n'est pas le répertoire de référence usuel de Java (indiqué par la variable d'environnemeent JAVA_HOME) mais le répertoire du plug-in pour les navigateurs.

    Dans leur cas, il a donc suffi d'intégrer les certificats après avoir mis la variable JAVA_HOME à la bonne valeur :
    Code (Text):
    export JAVA_HOME="/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home"
    Ils ont dû faire ça dans Terminal.

    Comment as-tu intégré tes certificats ?
     
    Elle_K aime ça.
  2. Elle_K

    Elle_K Nouveau membre

    Inscrit:
    14 Septembre 2018
    Messages:
    7
    J'aime reçus:
    0
    La signature est sur une clé USB. Les certificats ont seulement été téléchargé depuis le site du fournisseur (certeurope), et installés comme indiqué dans leur notice... on a tout suivi à la lettre...
    Je vais tenter la modification Java. Je vous tiens au courant!
     
  3. bompi

    bompi El Moderador
    Modérateur Club MacG

    Inscrit:
    12 Février 2004
    Messages:
    41 626
    J'aime reçus:
    3 078
    Je ne suis pas habitué à faire ce genre de manipulation (jamais bidouillé les certificats pour Java). Pour autant cela devrait être possible d'y arriver (je suis sur Windows mais je pourrai tester ce soir sur un Mac).

    1. il faudrait ouvrir Terminal
    2. dans l'onglet de la fenêtre tu as une application qui attend, les ordres , un shell (normalement, c'est bash).
    3. on va commencer par vérifier que le chemin du plug-in est le bon en tapant :
      Code (Text):
      ls "/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home"
    4. si c'est bon, on redéfinit temporairement le dossier principal de Java :
      Code (Text):
      export JAVA_HOME="/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home"
      pour installer le certificat au bon endroit.
    5. il faut, depuis la clef USB, récupérer les certificats à installer et les mettre dans un dossier, disons sur le bureau ;
    6. [étape à compléter] il faut déterminer quelques paramètres :
      1. quel est le magasin à utiliser pour y stocker le certificat ;
      2. quel alias donner au certificat : à mon avis, tu choisis ce que tu veux de bien explicite, mais pour s'éviter les ennuis idiots, autant prendre un seul mot, sans espace ni caractère accentué (la codification reste un maillon faible en informatique...)
    7. on va les importer avec l'outil ad hoc, keytool ;
      1. en admettant qu'on appelle le magasin "magasin" (normalement, c'est toi qui gère tes magasins et tu devrais pouvoir organiser cela comme bon te semble) ;
        il devrait y avoir un fichier "cacerts" dans lequel insérer le certificat ; mais je ne sais pas exactement son chemin ni s'il faut le préciser (et si la commande est assez intelligente pour le retrouver toute seule...)
      2. que l'alias du certificat choisi serait "Brol" ;
      3. que ton certificat s'appelle "UnCertainCertificat.cer" et que tu l'aies déposé sur le bureau ;
      4. ça nous donnerait :
        Code (Text):
        "$JAVA_HOME/bin/keytool" -importcert -file "$HOME/Desktop/UnCertainCertificat.cer" -keystore "$JAVA_HOME/lib/security/cacerts" -alias "Brol"
    8. répéter la même opération pour chaque certificat reçu, en conservant, en toute logique, le même nom de magasin.
    9. fermer puis réouvrir le navigateur utilisé.
    Il reste quelques inconnues mais ça vaut le coup de le tenter.

    S'il n'y a rien de confidentiel, j'aimerais bien avoir la procédure proposée initialement par le fournisseur du certificat : ça peut nous éclairer sur certaines options.
     
    #43 bompi, 14 Septembre 2018
    Dernière édition: 14 Septembre 2018
    Elle_K aime ça.
  4. Elle_K

    Elle_K Nouveau membre

    Inscrit:
    14 Septembre 2018
    Messages:
    7
    J'aime reçus:
    0
    Wow! Merci. Je vais essayer (mais pas avant lundi...). Et je vous fais passer totes les infos du fournisseur et du certificat. Si ca peut aider d'autres utilisateurs!
    En tout cas, les plateformes de dematerialisation ne sont pas formées ni assez compétentes pour nous aider à ce niveau (surtout quand on est sur mac).
     
  5. bompi

    bompi El Moderador
    Modérateur Club MacG

    Inscrit:
    12 Février 2004
    Messages:
    41 626
    J'aime reçus:
    3 078
    De retour à la maison, j'ai fait un petit essai.
    Suivant les recommandations de la documentation (cf. ici), j'ai commencé par télécharger les certificats de CertEurope, ceux qui la qualifient comme autorité de certification :
    Code (Text):
    CertEurope_eID_Root.cer
    CertEurope_eID_User.cer
    certeurope_advanced_v4.cer
    certeurope_root_ca_3.cer
    Puis je les ai successivement intégrés dans le magasin cacerts, magasin des autorités de certification, du plug-in Internet.
    Code (Text):
      sudo "$JAVA_HOME/bin/keytool" -importcert -file "./CertEurope_eID_Root.cer" -keystore "$JAVA_HOME/lib/security/cacerts" -alias "CertEurope_eID_Root"
      sudo "$JAVA_HOME/bin/keytool" -importcert -file "./CertEurope_eID_User.cer" -keystore "$JAVA_HOME/lib/security/cacerts" -alias "CertEurope_eID_User"
      sudo "$JAVA_HOME/bin/keytool" -importcert -file "./certeurope_root_ca_3.cer" -keystore "$JAVA_HOME/lib/security/cacerts" -alias "CertEurope_root_ca_3"
      sudo "$JAVA_HOME/bin/keytool" -importcert -file "./certeurope_advanced_v4.cer" -keystore "$JAVA_HOME/lib/security/cacerts" -alias "CertEurope_advanced_v4"
    Pour ce faire, je me suis positionné dans le dossier où je les avais enregistrés.
    Tu noteras que je leur ai donné un alias homonyme pour ne pas me compliquer la vie.
    Par ailleurs, toutes les doubles quotes sont nécessaires pour que les commandes marchent bien.
    Enfin :
    • sudo te demandera ton mot de passe, à taper en mode "aveugle" ; si tu enchaînes les commandes, il ne te le demandera plus ;
    • keytool te demandera le mot de passe du magasin de certificats, qui est : changeit (et que Apple n'a pas changé, donc...)
    Cela n'empêche pas de les intégrer aussi un peu partout : dans Firefox, dans le trousseau etc. si on le souhaite.
     
  6. Elle_K

    Elle_K Nouveau membre

    Inscrit:
    14 Septembre 2018
    Messages:
    7
    J'aime reçus:
    0
    Bonjour,

    Nous avons tenté :

    Code (Text):
    "$JAVA_HOME/bin/keytool" -importcert -file "$HOME/Desktop/CertEurope_eID_Corp.cer" -keystore "$JAVA_HOME/lib/security/cacerts" -trustcacerts -alias  "CertEurope_eID_Corp "

    "$JAVA_HOME/bin/keytool" -importcert -file "$HOME/Desktop/CertEurope_eID_Root.cer" -keystore "$JAVA_HOME/lib/security/cacerts" -trustcacerts -alias  "CertEurope_eID_Root"

    "$JAVA_HOME/bin/keytool" -importcert -file "$HOME/Desktop/CertEurope_eID_User.cer" -keystore "$JAVA_HOME/lib/security/cacerts" -trustcacerts -alias  "CertEurope_eID_User"

    "$JAVA_HOME/bin/keytool" -importcert -file "$HOME/Desktop/CertEurope_eID_Website.cer" -keystore "$JAVA_HOME/lib/security/cacerts" -trustcacerts -alias  "CertEurope_eID_Website"

    "$JAVA_HOME/bin/keytool" -importcert -file "$HOME/Desktop/certeurope_root_ca_3-2.cer" -keystore "$JAVA_HOME/lib/security/cacerts" -trustcacerts -alias  "certeurope_root_ca_3-2"

    "$JAVA_HOME/bin/keytool" -importcert -file "$HOME/Desktop/certeurope-standard-ca.cer" -keystore "$JAVA_HOME/lib/security/cacerts" -trustcacerts -alias  "certeurope-standard-ca.cer"
     
    Le journal de la console de l'appli JAVA de dépôt dématérialisé indique cette ligne :

    Code (Text):
    Caused by: java.security.NoSuchAlgorithmException: no such algorithm: PKCS11 for provider SunPKCS11-Gemalto
    Cela pourrait-il avoir un lien ?
    Malgré l'ajout un à un rien n'est visible dans les applications ou logiciels de signature Java. Auriez-vous d'autres solutions à me communiquer ? Merci de votre aide.
    HK
     
    #46 Elle_K, 17 Septembre 2018, à 17:31
    Dernière édition: 17 Septembre 2018, à 17:37
  7. bompi

    bompi El Moderador
    Modérateur Club MacG

    Inscrit:
    12 Février 2004
    Messages:
    41 626
    J'aime reçus:
    3 078
    Lorsque vous avez passé les commandes, y a-t-il eu des messages d'erreurs ?
    Vous pouvez vérifier que les certificats ont bien été enregistrés avec la commande en listant les certificats contenus dans le trousseau du plug-in :
    Code (Text):
    "$JAVA_HOME/bin/keytool" -list -keystore "$JAVA_HOME/lib/security/cacerts"
    Quant au message, c'est sans doute important. En mode commande, en ajoutant une option au lancement d'une application Java, on passe outre aisément, semble-t-il (cf. ici, par exemple). Mais dans le cas d'une applet dans un navigateur, il faut changer quelque chose dans la configuration et je ne sais pas où (pour le moment). Je vais fouiller un peu plus...
     
  8. bompi

    bompi El Moderador
    Modérateur Club MacG

    Inscrit:
    12 Février 2004
    Messages:
    41 626
    J'aime reçus:
    3 078
    Normalement, lorsque JAVA_HOME pointe vers l'installation générale de Java, l'algorithme demandé se trouve dans la bibliothèque $JAVA_HOME/jre/lib/ext/sunpkcs11.jar
    Dans le cas du plug-in, peut-être faut il l'ajouter aussi pour qu'il soit pris en compte. C'est sans doute un dossier analogue mais je ne peux pas vérifier lequel pour le moment.
     
  9. bompi

    bompi El Moderador
    Modérateur Club MacG

    Inscrit:
    12 Février 2004
    Messages:
    41 626
    J'aime reçus:
    3 078
    La bibliothèque se trouve bien dans un sous-dossier du plug-in Java (en tout cas sous Sierra, mais ça doit être le cas en général).
    Il faut donc trouver le moyen de forcer la main au navigateur pour lui rappeler de l'utiliser...
     
  10. Elle_K

    Elle_K Nouveau membre

    Inscrit:
    14 Septembre 2018
    Messages:
    7
    J'aime reçus:
    0
    Bonjour,

    Merci de votre aide. Je vous copie-colle toutes les étapes entrées dans le Terminal pour que vous puissiez peut-être y voir plus clair (le message étant trop long j'ai réduit la partie empreinte du certificat) :

    Code (Text):
    Last login: Tue Sep 18 16:12:44 on console
    mc0604-01:~ alice.g$ "$JAVA_HOME/bin/keytool" -list -keystore "$JAVA_HOME/lib/security/cacerts"
    -bash: /bin/keytool: No such file or directory
    mc0604-01:~ alice.g$ ls "/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home"
    COPYRIGHT                THIRDPARTYLICENSEREADME.txt
    CertEurope_eID_Corp.cer            Welcome.html
    CertEurope_eID_Root.cer            bin
    CertEurope_eID_User.cer            certeurope-standard-ca.cer
    CertEurope_eID_Website.cer        certeurope_root_ca_3-2.cer
    LICENSE                    lib
    Pierre_GARDONI.cer            man
    README                    release
    THIRDPARTYLICENSEREADME-JAVAFX.txt
    mc0604-01:~ alice.g$ export JAVA_HOME="/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home"
    mc0604-01:~ alice.g$ "$JAVA_HOME/bin/keytool" -list -keystore "$JAVA_HOME/lib/security/cacerts"
    Entrez le mot de passe du fichier de clés :
    Type de fichier de clés : jks
    Fournisseur de fichier de clés : SUN

    Votre fichier de clés d'accès contient 114 entrées

    Empreinte du certificat (SHA1) : B3:EA:C4:47:76:C9:C8:1C:EA:F2:9D:95:B6:CC:A0:08:1B:67:EC:9D
    digicertassuredidg3 [jdk], 25 août 2016, trustedCertEntry,
    Empreinte du certificat (SHA1) : 36:79:CA:35:66:87:72:30:4D:30:A5:FB:87:3B:0F:A7:7B:B7:0D:54
    certeurope-standard-ca.cer, 17 sept. 2018, trustedCertEntry,
    Empreinte du certificat (SHA1) : ED:A4:DD:DB:E1:27:F7:4C:DA:B8:87:F4:0D:5E:CE:CF:40:B6:47:81
    digicerttrustedrootg4 [jdk], 25 août 2016, trustedCertEntry,
    Empreinte du certificat (SHA1) : DD:FB:16:CD:49:31:C9:73:A2:03:7D:3F:C8:3A:4D:7D:77:5D:05:E4
    certeurope_eid_user, 17 sept. 2018, trustedCertEntry,
    Empreinte du certificat (SHA1) : 05:63:B8:63:0D:62:D7:5A:BB:C8:AB:1E:4B:DF:B5:A8:99:B2:4D:43
    digicertglobalrootg2 [jdk], 25 août 2016, trustedCertEntry,
    Empreinte du certificat (SHA1) : DF:3C:24:F9:BF:D6:66:76:1B:26:80:73:FE:06:D1:CC:8D:4F:82:A4
    pierregardoni, 17 sept. 2018, trustedCertEntry,
    Empreinte du certificat (SHA1) : F3:73:B3:87:06:5A:28:84:8A:F2:F3:4A:CE:19:2B:DD:C7:8E:9C:AC
    digicertassuredidg2 [jdk], 25 août 2016, trustedCertEntry,
    certeurope_eid_website, 17 sept. 2018, trustedCertEntry,
    Empreinte du certificat (SHA1) : 4D:23:78:EC:91:95:39:B5:00:7F:75:8F:03:3B:21:1E:C5:4D:8B:CF
    digicertglobalrootca [jdk], 25 août 2016, trustedCertEntry,
    Empreinte du certificat (SHA1) : A8:98:5D:3A:65:E5:E5:C4:B2:D7:D6:6D:40:C6:DD:2F:B1:9C:54:36
    mc0604-01:~ alice.g$ $JAVA_HOME/jre/lib/ext/sunpkcs11.jar
    -bash: /Library/Internet: No such file or directory
    mc0604-01:~ alice.g$
    Ci dessous la fin du journal console JAVA d'une application de dépôt dématérialisée de la région Auvergne Rhône Alpes :
    Code (Text):
    2018-09-18 16:36:47 c.a.s.j.ApplicationSignatureSwing - les parametres plateforme ne sont pas presents originePlateforme, origineOrganisme, origineItem, origineContexteMetier
    javax.swing.UnsupportedLookAndFeelException: [The Microsoft Windows Look and Feel - com.sun.java.swing.plaf.windows.WindowsLookAndFeel] not supported on this platform
        at javax.swing.UIManager.setLookAndFeel(UIManager.java:526)
        at javax.swing.UIManager.setLookAndFeel(UIManager.java:583)
        at com.atexo.serveurCryptographique.jnlp.SignatureTable.<init>(SignatureTable.java:57)
        at com.atexo.serveurCryptographique.jnlp.ApplicationSignatureSwing.<init>(ApplicationSignatureSwing.java:100)
        at com.atexo.serveurCryptographique.jnlp.ApplicationSignatureSwing.main(ApplicationSignatureSwing.java:131)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at com.sun.javaws.Launcher.executeApplication(Unknown Source)
        at com.sun.javaws.Launcher.executeMainClass(Unknown Source)
        at com.sun.javaws.Launcher.doLaunchApp(Unknown Source)
        at com.sun.javaws.Launcher.run(Unknown Source)
        at java.lang.Thread.run(Thread.java:748)
    Type de provider : APPLE
    Recherche de la librairie : /usr/local/lib/ClassicClient/libgclib.dylib
    Nous cherchons toujours la solution car pour l'instant il n'y a pas lien entre les certificats et les applications JAVA qui se fait.
     
  11. bompi

    bompi El Moderador
    Modérateur Club MacG

    Inscrit:
    12 Février 2004
    Messages:
    41 626
    J'aime reçus:
    3 078
    Le message d'erreur indique un problème d'interface : le programme Java ne parvient pas à trouver une bibliothèque du système.

    Si on reprend du début :
    • tu as macOS El Capitan ;
    • tu as installé le pilote Gemalto dans le système ? On devrait le voir actif avec la commande :
      Code (Text):
      kextstat
    • tu as installé les quatre certificats de CertEurope dans le magasin de certificats de Firefox ; pour chacun :
      • l'enregistrer sur le disque ;
      • dans les Préférences de Firefox aller sur Vie Privée et sécurité / Certificats, afficher les certificats
      • importer le certificat : il doit apparaitre dans la liste.
    • tu as enregistré les certificats dans le le magasin du plug-in Internet Java du système ;
      => on les voit bien dans la liste que tu as posté
    • tu as enregistré la clef dans la liste des périphériques de sécurité reconnus par Firefox :
      • dans les Préférences de Firefox aller sur Vie Privée et sécurité / Certificats, cliquer sur "Périphériques de sécurité"
      • Normalement, il doit y avoir Gemalto dans la partie gauche de la fenêtre
    • tu as installé Trusted Key Manager
     
  12. Elle_K

    Elle_K Nouveau membre

    Inscrit:
    14 Septembre 2018
    Messages:
    7
    J'aime reçus:
    0
    Je teste demain, je te redis ça. Pas eu le temps de vérifier. Mon collègue a tout repris dans l'ordre.. et ca ne marche pas. Je tente en faisant une désinstallation et réinstallation.
     
Modérateurs: Aliboron, bompi, daffyb
Chargement...

iOccasion - Achetez un produit Apple d'occasion

refurb Apple