IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Java Discussion :

Signer un jar à partir d'une clé privée et d'un certificat


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Septembre 2003
    Messages
    108
    Détails du profil
    Informations forums :
    Inscription : Septembre 2003
    Messages : 108
    Par défaut Signer un jar à partir d'une clé privée et d'un certificat


    J'ai besoin de signer un jar pour une application Web. Je dispose du jar en question, du couple clé privée/clé publique et du certificat issu de la clé privée.

    J'ai essayé pas mal de choses, mais je n'arrive pas à signer ce jar. Cette méthode fonctionne : http://www.coderanch.com/t/437249/Ap...lf-sign-applet mais en générant une nouvelle clé, alors que je veux utiliser celle qui existe. Il semble impossible d'importer des clés privées dans un keystore avec keytool. Je suis donc bloqué et j'en appelle à vous. Je ne suis pas du tout un spécialiste de la cryptographie, merci pour votre aide !

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Tu dois exporter tes cles publicques et privées sous forme des fichiers pkcs12. Alors seulement tu pourra les importer dans le keystore.

    http://www.developpez.net/forums/d59...keystore-java/

  3. #3
    Membre confirmé
    Inscrit en
    Septembre 2003
    Messages
    108
    Détails du profil
    Informations forums :
    Inscription : Septembre 2003
    Messages : 108
    Par défaut
    Merci pour ta réponse. J'avais vu ce topic mais je n'arrive pas à exporter en PKCS12.
    Si je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    openssl pkcs12 -export -in certificat.cer -inkey secretkey.asc -out export.p12
    j'ai une erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Loading 'screen' into random state - done
    unable to load private key
    3800:error:0906D066:PEM routines:PEM_read_bio:bad end line:.\crypto\pem\pem_lib.c:797:
    Je pense que mes fichiers ne sont pas au format PEM (comment le vérifier ?).

    Donc j'essaie de convertir le certificat au format PEM :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    openssl pkcs12 -in certificat.cer -out certificat.pem –nodes
    j'ai l'erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    3436:error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag:.\crypto\asn1\tasn_dec.c:1320:
    3436:error:0D06C03A:asn1 encoding routines:ASN1_D2I_EX_PRIMITIVE:nested asn1 error:.\crypto\asn1\tasn_dec.c:832:
    3436:error:0D08303A:asn1 encoding routines:ASN1_TEMPLATE_NOEXP_D2I:nested asn1 error:.\crypto\asn1\tasn_dec.c:752:Field
    version, Type=PKCS12
    Je suis sous Win XP, j'ai installé le package "redistribuable Microsoft Visual C++ 2008" et OpenSSL Light 1.0.

  4. #4
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    rah, j'ai une liste de commande openssl aussi, mais au boulot, dès que possible je poste, j'avais galéré aussi de ce coté là

  5. #5
    Membre confirmé
    Inscrit en
    Septembre 2003
    Messages
    108
    Détails du profil
    Informations forums :
    Inscription : Septembre 2003
    Messages : 108
    Par défaut
    OK merci ! C'est quand même pas évident ce truc

  6. #6
    Expert confirmé
    Avatar de Marco46
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    4 419
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2005
    Messages : 4 419
    Par défaut
    C'est quoi ton fichier que tu passes en entrée d'openssl ?

    Je vois un certificat.cer.

    Un certificat ne contient qu'une clef publique, mais en aucun cas une clef privée. Seul un PKCS12, qui est un magasin, peut contenir une clef privée. Il sera alors protégé par un chiffrement symétrique déverrouillé par un mot de passe.

    Tu n'indiques pas dans ton post les formats. Je doute beaucoup qu'il soit possible d'avoir un format d'échange de clef privée sans protection.

Discussions similaires

  1. [JavaService] Création d'un service a partir d'une application java en Jar)
    Par maxxper59 dans le forum EDI et Outils pour Java
    Réponses: 6
    Dernier message: 09/11/2010, 10h50
  2. Réponses: 9
    Dernier message: 01/07/2009, 14h56
  3. Réponses: 6
    Dernier message: 17/02/2009, 19h32
  4. execution d'un jar a partir d'une jsf
    Par krikete dans le forum JSF
    Réponses: 6
    Dernier message: 06/02/2007, 20h56
  5. exécuter une classe dans un jar a partir d'une methode java
    Par yann_p dans le forum API standards et tierces
    Réponses: 13
    Dernier message: 13/04/2006, 15h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo