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

Développement SQL Server Discussion :

hashbytes md5 mssql


Sujet :

Développement SQL Server

  1. #1
    Membre régulier
    Inscrit en
    Janvier 2008
    Messages
    165
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 165
    Points : 84
    Points
    84
    Par défaut hashbytes md5 mssql
    salut
    soucis avec hasbytes md5
    dans le resultats que je recois j'ai deux charactere de trop (j'ai 34 char a la place de 32)????????

    pour md5(test ) j'ai

    ox098f6bcd4621d373cade4e832627b4f6

    alors que le resultat pour test devrait etre

    098f6bcd4621d373cade4e832627b4f6

    voila si qq1 voit le soucis

    merci

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 52
    Points : 62
    Points
    62
    Par défaut
    Bonjour,

    Il n'y a pas d'anomalie la donnée renvoyée est de type varbinary (et donc précédée par 0x)

    @+

  3. #3
    Expert éminent
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Points : 9 506
    Points
    9 506
    Par défaut
    Salut,

    Apparement il faut respecter le typage sinon les valeur de retour ne sont pas les mêmes:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT HASHBYTES ('MD5', 'MAVALEUR')
    Donne
    0xDC1950D98C3EB60C0C89DAEDAB3C8DAD
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    DECLARE @HashThis nvarchar(max);
    SELECT @HashThis = CONVERT(nvarchar,'MAVALEUR');
    SELECT HashBytes('MD5', @HashThis);
    GO
    Donne
    0xA2CCAAAD39FF5C90447162FE1C54D9D8
    cf. http://msdn.microsoft.com/fr-fr/libr...5(SQL.90).aspx

    Est-ce que qqn sait quelle syntaxe il faut utiliser pour obtenir le même resultat qu'avec l'encodage MD5 du framework?
    -----------------------------
    Bon ben après un petit test avec ce code
    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
    public static string Md5Hash(string input)
    {
        // Create a new instance of the MD5CryptoServiceProvider object.
        MD5 md5Hasher = MD5.Create();
     
        // Convert the input string to a byte array and compute the hash.
        byte[] data = md5Hasher.ComputeHash(Encoding.Default.GetBytes(input));
     
        // Create a new Stringbuilder to collect the bytes
        // and create a string.
        StringBuilder sBuilder = new StringBuilder();
     
        // Loop through each byte of the hashed data 
        // and format each one as a hexadecimal string.
        for (int i = 0; i < data.Length; i++)
        {
            sBuilder.Append(data[i].ToString("x2"));
        }
     
        // Return the hexadecimal string.
        return sBuilder.ToString();
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Tools.Md5Hash("MAVALEUR").ToUpperInvariant()
    Donne
    DC1950D98C3EB60C0C89DAEDAB3C8DAD
    Arf mince, je suis pas dans le forum .Net C#. Mille excuses. Je le laisse tt de même.

    A+
    "Winter is coming" (ma nouvelle page d'accueil)

  4. #4
    Expert éminent
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Points : 9 506
    Points
    9 506
    Par défaut
    Citation Envoyé par zeus Voir le message
    Bonjour,

    Il n'y a pas d'anomalie la donnée renvoyée est de type varbinary (et donc précédée par 0x)

    @+
    Comment fait-on pour enlever le "0x"?
    En faisant un left() j'obtiens des signes cabalistiques. Il faut faire une convertion?

    A+
    "Winter is coming" (ma nouvelle page d'accueil)

Discussions similaires

  1. [C#] A propos de MD5
    Par ensisoft dans le forum ASP.NET
    Réponses: 7
    Dernier message: 09/03/2004, 21h15
  2. C# Socket MD5
    Par borgfabr dans le forum Développement
    Réponses: 4
    Dernier message: 08/03/2004, 09h37
  3. Autoincrément, MSSQL et dbExpress
    Par Ethmane dans le forum Bases de données
    Réponses: 2
    Dernier message: 26/02/2004, 13h33
  4. insérer une date dans une table mssql
    Par ericmart dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 29/01/2004, 10h37
  5. connection a mssql a partir d'une page php
    Par jean_marc dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 26/11/2003, 14h24

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