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

C# Discussion :

Recherche - Tuto sur le MD5


Sujet :

C#

  1. #1
    Membre confirmé
    Homme Profil pro
    Collégien
    Inscrit en
    Septembre 2011
    Messages
    113
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Collégien

    Informations forums :
    Inscription : Septembre 2011
    Messages : 113
    Par défaut Recherche - Tuto sur le MD5
    Bonjour.

    Suite à mon premier poste, il me faudrait un tutoriel sur le cryptage(et décryptage) MD5, avec & sans key, complet quoi.

    Je vous demande une fois de plus votre aide, cordialement.

    PS : Google, mon ex ne m'a pas aidé ce coup-ci.

  2. #2
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2005
    Messages
    700
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juin 2005
    Messages : 700
    Par défaut
    Je ne saurait te décrire l'algoritme. Est ce un exemple que tu recherche?

    cadeau :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.IO;
    using System.Security.Cryptography;
     
    namespace FrameWork.Checksums
    {
        public class MD5Summer
        {
            public static string GetMD5HashFromFile(string fileName)
            {
                MD5 md5 = null;
                byte[] retVal = null;
                StringBuilder sb = null;
                FileStream file = null;
                try
                {
                    using (file = new FileStream(fileName, FileMode.Open, FileAccess.Read))
                    {
                        if (file == null || !file.CanRead)
                            throw new IOException(String.Format("impossible de lire {0}", fileName));
                        md5 = new MD5CryptoServiceProvider();
                        retVal = md5.ComputeHash(file);
                        file.Close();
                    }
                }
                catch
                {
                    if (file != null)
                    {
                        file.Close();
                    }
                    throw;
                }
     
                sb = new StringBuilder();
                for (int i = 0; i < retVal.Length; i++)
                {
                    sb.Append(retVal[i].ToString("x2"));
                }
                return sb.ToString();
     
            }
        }
    }

  3. #3
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    A mon avis c'est un peu trop ciblé pour qu'il y ait un tutoriel spécifique à ce sujet... Regarde la doc, il y a des exemples :
    http://msdn.microsoft.com/en-us/libr...raphy.md5.aspx

    Soit dit en passant, MD5 n'est pas un algorithme de cryptage, mais un algorithme de hachage. Il n'est donc pas possible de "décrypter" les données...

  4. #4
    Rédacteur
    Avatar de Nathanael Marchand
    Homme Profil pro
    Expert .Net So@t
    Inscrit en
    Octobre 2008
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Expert .Net So@t
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3 615
    Par défaut
    Et je rajoute que MD5 n'est plus considéré comme sur pour le hachage car il est simple de trouver des collisions (deux chaines différentes qui auraient le même hash).

  5. #5
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Citation Envoyé par Nathanael Marchand Voir le message
    Et je rajoute que MD5 n'est plus considéré comme sur pour le hachage
    C'est vrai, mais :

    car il est simple de trouver des collisions (deux chaines différentes qui auraient le même hash).
    Le terme "simple" ici est quand même un peu excessif.

    Il y a quelques infos sur le sujet sur l'article de wikipedia traitant du MD5 :
    http://en.wikipedia.org/wiki/MD5

  6. #6
    Membre confirmé
    Homme Profil pro
    Collégien
    Inscrit en
    Septembre 2011
    Messages
    113
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Collégien

    Informations forums :
    Inscription : Septembre 2011
    Messages : 113
    Par défaut
    Merci de toutes ces réponses.

    J'ai enfin trouvé une solution, désolé c'est un lien externe je le donne mais si cela gêne vous pourrez le supprimer(tant que le code est sur le post.)

    http://tutorialgenius.blogspot.fr/20...ecryption.html


    Pas bien compliqué en fait ^^'

    Cordialement.

  7. #7
    Rédacteur
    Avatar de Nathanael Marchand
    Homme Profil pro
    Expert .Net So@t
    Inscrit en
    Octobre 2008
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Expert .Net So@t
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3 615
    Par défaut
    Euh le code en question ne fait pas du tout du MD5 (d'ailleurs je le repète, un hashage MD5 n'est pas réversible). Il encode et décode avec un algo Triple DES. Le MD5 sert juste comme clef d'encodage.

  8. #8
    Membre confirmé
    Homme Profil pro
    Collégien
    Inscrit en
    Septembre 2011
    Messages
    113
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Collégien

    Informations forums :
    Inscription : Septembre 2011
    Messages : 113
    Par défaut
    Ah mince !
    Je pense que ceci est possible car :
    Je dois me connecter au serveur de jeu(avec la clée d'encryption qui vient de m'être envoyé par le serveur de jeu lui même dès ma connexion[TCP])
    Puis utiliser cette clée pour encrypté mon mot de passe
    TOPO >> Envoyé mes identifiants sous forme de 'nomdecompte + motdepasseCRYPTER' en sachant que je n'ai pas besoin de crypté le nom de compte.

  9. #9
    Rédacteur
    Avatar de Nathanael Marchand
    Homme Profil pro
    Expert .Net So@t
    Inscrit en
    Octobre 2008
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Expert .Net So@t
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3 615
    Par défaut
    Citation Envoyé par T4unt Voir le message
    Ah mince !
    Je pense que ceci est possible car :
    Je dois me connecter au serveur de jeu(avec la clée d'encryption qui vient de m'être envoyé par le serveur de jeu lui même dès ma connexion[TCP])
    Puis utiliser cette clée pour encrypté mon mot de passe
    TOPO >> Envoyé mes identifiants sous forme de 'nomdecompte + motdepasseCRYPTER' en sachant que je n'ai pas besoin de crypté le nom de compte.
    Oui mais c'est impossible de faire l'opération inverse. Ou alors il y a une subtilité qui nous échappe dans ton message
    Pour info ce qui est généralement fait sur les sites: une personne s'inscrit, elle choisit un mot de passe, ce mot de passe est stockée en base sous sa forme hashée (via MD5) par exemple.
    Lors d'une authentification ultérieure on n'essaie pas de "decrypter" le hash (car c'est impossible) mais on compare le hash stocké en base avec le hash du mot de passe de la tentative d'authenfication. Si les hashs sont identiques, c'est que le mot de passe est le même (ou qu'il y a une collision).

  10. #10
    Membre confirmé
    Homme Profil pro
    Collégien
    Inscrit en
    Septembre 2011
    Messages
    113
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Collégien

    Informations forums :
    Inscription : Septembre 2011
    Messages : 113
    Par défaut
    Ce qui vous échappe, c'est que j'ai la key de 'hashage'/'cryptage' ?
    Cordialement.

  11. #11
    Rédacteur
    Avatar de Nathanael Marchand
    Homme Profil pro
    Expert .Net So@t
    Inscrit en
    Octobre 2008
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Expert .Net So@t
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3 615
    Par défaut
    Bah c'est pas du MD5 alors car un MD5 ne prend pas de clef et n'est pas reversible.

Discussions similaires

  1. Recherche tuto sur du css2/css3
    Par don_corleon dans le forum Webdesign & Ergonomie
    Réponses: 1
    Dernier message: 13/05/2012, 14h54
  2. recherche tuto sur les librairies
    Par PhilippeHen dans le forum Débuter
    Réponses: 3
    Dernier message: 23/11/2009, 09h39
  3. [Dates] à la recherche d'un bon tuto sur les dates
    Par gretch dans le forum Langage
    Réponses: 2
    Dernier message: 06/10/2006, 16h01
  4. Réponses: 4
    Dernier message: 13/06/2006, 21h08

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