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

VB.NET Discussion :

Chiffrement mot de passe : MD5, SHA1, AES ?


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de zarohn
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    148
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 148
    Par défaut Chiffrement mot de passe : MD5, SHA1, AES ?
    Salut à tous

    grâce à ce post : http://www.developpez.net/forums/d48...tage-passe-md5 j'ai pu implémenter dans mon application une fonction de cryptage de mes mots de passes en MD5 afin qu'ils ne soient pas stocké en clair dans ma BDD. Ça a l'air de bien fonctionner. Ce qui donne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
        Public Function Crypte_md5(ByVal chaine As String) As String
            Dim tab_byte() As Byte
            tab_byte = System.Text.Encoding.ASCII.GetBytes(chaine)
            Dim md5 As New Security.Cryptography.MD5CryptoServiceProvider()
            tab_byte = md5.ComputeHash(tab_byte)
            Dim sb As New System.Text.StringBuilder
            Dim resultat As String
            For i = 0 To (tab_byte.Length) - 1
                sb.AppendFormat("{0:X2}", tab_byte(i))
            Next i
            resultat = sb.ToString.ToLower()
            Return resultat
        End Function
    Maintenant ce que j'aimerai faire c'est la fonction inverse, pour décrypter du MD5 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        Public Function Decrypte_md5(ByVal chaine As String) As String
           ...
        End Function
    Si quelqu'un était capable de m'aider .... Merci d'avance !


  2. #2
    Membre expérimenté
    Avatar de StormimOn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    2 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 593
    Par défaut
    MD5 n'est pas un algorithme de chiffrement (et non cryptage) mais un algorithme de hachage, c'est à dire qu'il sert à calculer l'empreinte d'une valeur. Et un algorithme de hachage n'est pas réversible, contrairement au chiffrement. Donc ce que tu veux faire n'est pas possible.

    Si tu veux protéger une donnée il faut regarder du côté du chiffrement / déchiffrement, avec AES par exemple.

  3. #3
    Membre confirmé Avatar de zarohn
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    148
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 148
    Par défaut
    Salut, déjà merci pour ta réponse et tes précisions car je suis un ultra-noob en cryptage, hachage et autres joyeusetés. Donc si je comprend bien md5 ne peut pas être utilisé pour ses mots de passes ? Pourtant si je lis wikipedia (http://fr.wikipedia.org/wiki/MD5) je trouve ceci :

    MD5 peut aussi être utilisé pour calculer l'empreinte d'un mot de passe ; c'est le système employé dans GNU/Linux avec la présence d'un sel compliquant le décryptage. Ainsi, plutôt que de stocker les mots de passe dans un fichier, ce sont leurs empreintes MD5 qui sont enregistrées, de sorte que quelqu'un qui lirait ce fichier ne pourra pas découvrir les mots de passe.
    Si ils stockent les mots de passent en md5 c'est donc qu'ils doivent pouvoir faire l'inverse pour aller les lire non ?

  4. #4
    Membre expérimenté
    Avatar de StormimOn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    2 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 593
    Par défaut
    Généralement les mots de passe sont effectivement sauvegardés sous la forme d'une empreinte calculée par un algorithme de hachage (MD5, SHA1 ou autre).

    Ensuite lorsque l'on veut vérifier qu'un mot de passe saisi est correct il suffit alors de comparer les empreintes. Si l'empreinte du mot de passe saisi correspond à l'empreinte sauvegardée alors le mot de passe est bon

  5. #5
    Membre confirmé Avatar de zarohn
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    148
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 148
    Par défaut
    Ok je commence à comprendre. Donc MD5 / SHA1 c'est possible seulement si on a pas besoin de retrouver en clair le mot de passe (identification seulement par exemple auquel cas on compare les empruntes) et si dans mon appli j'ai un endroit "gestion de mot de passe" ou l'utilisateur peut voir son mot de passe en clair pour éventuellement le modifier la je dois appliquer un réel chiffrement par clé (donc réversible contrairement aux empruntes non réversibles) ? Est ce bien ça ?

  6. #6
    Membre expérimenté
    Avatar de StormimOn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    2 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 593
    Par défaut
    C'est inutile de voir son mot de passe pour le modifier. Il faut juste demander l'ancien (on comparera les empreintes) et demander deux fois le nouveau histoire d'éviter les erreurs de frappes

    Mais si tu veux faire du réversible tu dois passer par du chiffrement.

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

Discussions similaires

  1. securité mot de passe en sha1
    Par UN|X` dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 20/12/2007, 10h50
  2. Authentification DIGEST + JDBC + Mots de passe MD5
    Par hackrobat dans le forum Tomcat et TomEE
    Réponses: 2
    Dernier message: 22/11/2007, 09h42
  3. [LDAP] Chiffrement mot de passe LDAP pour interface en PHP
    Par sedannais dans le forum Bibliothèques et frameworks
    Réponses: 7
    Dernier message: 10/08/2007, 16h17
  4. [Sécurité] Codage mot de passe md5
    Par tilou dans le forum Langage
    Réponses: 6
    Dernier message: 12/04/2006, 11h55
  5. Cacher encryptage mot de passe MD5
    Par cirdec dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 21/02/2006, 20h10

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