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 :

Hashage SHA - 256


Sujet :

Sécurité Java

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    370
    Détails du profil
    Informations personnelles :
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Avril 2006
    Messages : 370
    Par défaut Hashage SHA - 256
    J'ai un petit soucis avec une methode me permettant de hasher les mot de passe de connexion à mon site, en fait je trouve que les hash qu'elle me retourne ne sont pas convenable :

    Voici la methode en question :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    public String hashPass(String pass,String sel) {
    	String hash;
    	MessageDigest md = null;
    	try {
    		md = MessageDigest.getInstance("SHA-256");
    	} catch (NoSuchAlgorithmException e) {
    		e.printStackTrace();
    	}
    	hash = md.digest((pass + sel).getBytes()).toString();
    	return hash;
    }
    et le genre de hash qu'elle retourne :
    Je trouve un peut étrange pour un hash SHA-256.

    Voyez vous un problème dans ma fonction, ou ailleurs ...

  2. #2
    Membre émérite Avatar de g_rare
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 608
    Par défaut
    Pour info : il vaut mieux encoder ton texte en UTF-8 (plutôt qu'avec le charset par défaut de la plateforme qui ne sera pas forcément le même entre plusieurs machines!) en utilisant <<getBytes("UTF-8")>>, puis retranscrire les bits de sortie en notation hexadécimale par octet avec byteToHex ...

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    370
    Détails du profil
    Informations personnelles :
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Avril 2006
    Messages : 370
    Par défaut
    Merci beaucoup voila qui semble marcher à present

    SHA-256 je recupère un hash de 64 caractère c'est bien ca ?

  4. #4
    Membre émérite Avatar de g_rare
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 608
    Par défaut
    OUI
    256 Bits = 32 Octets = 64 caractères (en notation hexadécimale complète)

    Voir ici pour des tests de référence P.33

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    370
    Détails du profil
    Informations personnelles :
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Avril 2006
    Messages : 370
    Par défaut
    Avec explication et tout nickel

    Merci bien g_rare

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 15
    Par défaut
    Juste pour info le paramètre sel est une constante que tu ajoutes pour compliquer le hack du mdp ?

    Le sel est le même pour tous les mdp ?

  7. #7
    Membre actif
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 27
    Par défaut
    Ceci est le toString() d'un byte[].
    Il aurait fallut faire un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    new String(md.digest((pass + sel).getBytes()))
    Mais de toutes façons, il vaut mieux insérer une fonction de passage en hexadécimale.

    PS : Désolé de faire remonter un vieux post. Mais je suis tombé dessus lorsque j'ai googlé.

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

Discussions similaires

  1. hash sha 256/512 en C
    Par Z-fly dans le forum C
    Réponses: 1
    Dernier message: 20/07/2008, 15h56
  2. [Système] Mise en place de SHA-256
    Par romanus dans le forum Langage
    Réponses: 2
    Dernier message: 28/08/2007, 16h22
  3. Fonction de hashage SHA-1 en VBScript
    Par gderenne dans le forum ASP
    Réponses: 1
    Dernier message: 25/07/2007, 19h06
  4. [Cookies] Connexion automatique impossible avec SHA 256
    Par Janitrix dans le forum Langage
    Réponses: 1
    Dernier message: 13/03/2007, 19h20
  5. Réponses: 6
    Dernier message: 08/01/2006, 12h49

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