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

Sécurité Java Discussion :

Certificat X509 et CRL


Sujet :

Sécurité Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2008
    Messages
    108
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2008
    Messages : 108
    Par défaut Certificat X509 et CRL
    Bonjour à tous et merci pour votre aide futur

    voila je débute dans l'utilisation des Certificat et la j'ai un blocage au niveau des CRL

    j'arrive à accéder au informations de mon certificat, j'en extrait ce qui m'intéresse. puis je balance tout ça dans une applet.

    mais la depuis deux jours je bloque sur un point non négligeable, c'est à dire vérifier si le certificat n'est pas révoqué

    en ouvrant mon certificat j'ai vue deux choses :

    - il existe un champ "url de revocation netscape"
    -un autre champ aussi 'point de distribution de la liste de revocation de certificat"

    Le problème est que je n'arrive pas a récupérer les information dans ce champ, car mis a part cela, je ne voit pas comment récupérer la CRL correspondante pour vérifier que le certificat n'est pas révoqué.

    Mais cela amène aussi un autre problème.

    si je veux faire la vérification dans cette CRL, il faut qu'elle soit sur le poste du client, même si il la télécharge, je ne pourrai pas savoir ou aller le chercher car il pourra la mettre un peu ou il veut ?

    J'ai lu à quelques endroit des information sur OCSP, qui serait donc un protocole qui éviterai de télécharger cette CRL, et qui m'éviterai a mon avis bien des problèmes.

    mais la a ce niveau c'est le néant je ne voit pas comment utiliser ça dans mon programme Java !

    je ne demande pas du code tout frai et livré sur un plateau, mais juste quelques explication car la je suis, je l'avoue, un peu perdu !

    merci d'avance pour votre aide

  2. #2
    Invité
    Invité(e)
    Par défaut
    Salut,

    Comme tu as dit ton certificat possède un champ : "point de distribution de la liste de revocation de certificat"
    Ca veut dire que l'organisme ayant émis le certificat s'engage à publier la CRL à cet endroit, c'est une URL permettant de télécharger la CRL. SI la CRL n'est pas ici c'est que l'émetteur n'a pas respecté son contrat. Regarde peut-être ce post
    Pour ce qui est de OCSP, ca permet de ne pas télécharger toute la CRL pour vérifier un certificat, qui peut être énorme. Le problème est que cette technologie n'est pas encore largement répandue, et il faut installer un répondeur OCSP sur un server.

  3. #3
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2008
    Messages
    108
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2008
    Messages : 108
    Par défaut
    Tout d'abord merci pour l'aide apportés

    j'ai bien l'url indiquer, le problème et que, même après avoir fouiller pas mal la javadoc, je n'arrive pas a extraire l'URL qui est dans ce champs :'( (je ne trouve pas de méthode qui poura me retrouver cette information ...)

    parce que dans mon programme java, je veux en gros que :

    l'utilisateur chargera un certificat
    Puis j'afficherai un message pour dire si le certificat est valide ou non, et pour cela j'ai besoin de savoir si le certificat n'a pas été révoqué

    donc il faudrait que je puisse trouver l'url où est stocker la CRL
    que je la charge
    je lance ma vérification
    puis j'affiche un message si le certificat est revoqué

    mais la pour le moment je bloque sur la récuperation de la CRL

    le reste du code a l'air bon, car j'ai tester avec une CRL telecharger en local et un certificat de test.
    si j'indique bien ou se trouve la CRL, j'arrive a tester si le certificat est revoqué ou non !

    donc je pense qu'il ne me reste plus qu'a débloqué ce dernier points qui me pose bien des soucis

  4. #4
    Invité
    Invité(e)
    Par défaut
    Je dois t'avouer que la bibliothèque standard de Java pour les certificats n'est pas top, et que souvent on préfère utiliser une bibliothèque extérieure (Flexiprovider, Bouncy Castle, ...) respectant les conventions de Sun et implémentant l'architecture du modèle de sécurité.
    Désolé mais là avec la bibliothèque standard je peux pas t'aider plus...

  5. #5
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2008
    Messages
    108
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2008
    Messages : 108
    Par défaut
    ok bha je vais aller chercher ailleurs alors (enfin au niveau des bibliothèques ^^)

    merci pour tout

    j'edit ma réponse car j'ai finalement trouvé ce que je cherchais (a peu près ^^)

    donc si quelqu'un passe par la est à le même problème que moi

    donc mon problème venais du fait que je n'arriver pas a accéder au champ qui contenait l'url de la CRL

    en fait c'est tout bete :

    byte[] test = cert.getExtensionValue("2.5.29.31");

    cert étant mon fichier certificat au format X509

    ensuite si vous voulez voir ce que contient ce tableau de byte

    faite une boucle :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    for(int i = 0;i<test.length;i++){
        System.out.print((char)test[i]);
    }
    bien convertir en char surtout

    puis la dedans j'ai trouver les differentes URL en lien avec la CRL, j'ai eu qu'a tronquer un peu le résultat pour ne garder que ce qui m'intéressai dans une String

    et voila c'était aps si dur que ca

  6. #6
    Membre confirmé
    Étudiant
    Inscrit en
    Février 2009
    Messages
    220
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2009
    Messages : 220
    Par défaut
    Bonjour,

    Merci pour vous pour ce sujet car j'ai presque le meme pb.
    En fait, je ne peut pas arriver à récupérer des informations à partir d'un fichier (.cer) pour détérminer si un certificat est révoqué ou non.

    Alors j'ai utilisé comme vous avez dit la methode getExtensionValue(OID) pour récupérer le numero de série du certificat à partir du fichier "certificat.cer" et les numéro de série des certificats révoqués à partir d'un fichier "CRL.cer"
    Mais j'ai rien obtenu que des erreurs pour cette méthode.

    J'espére que j'etait claire dans mon explication.
    ET je serai trés reconnaissante si vous pouvez m'aider.
    Merci d'avance.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment signer un fichier XML avec certificat X509 (.pfx)
    Par imad_eddine dans le forum Format d'échange (XML, JSON...)
    Réponses: 2
    Dernier message: 08/03/2011, 10h27
  2. [Cryptographie][JNDI] Sauvegarder certificat X509
    Par Makineros63 dans le forum Sécurité
    Réponses: 2
    Dernier message: 05/05/2008, 09h05
  3. Accepter automatiquement un certificat X509
    Par kayanwan dans le forum ASP.NET
    Réponses: 3
    Dernier message: 16/11/2007, 00h41
  4. Construction de certificats X509
    Par KenPark dans le forum Sécurité
    Réponses: 2
    Dernier message: 12/07/2007, 13h50
  5. Récupérer le CN d'une certificat X509
    Par sfaxi dans le forum Apache
    Réponses: 1
    Dernier message: 30/05/2007, 19h01

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