begin process at 2012 02 11 12:56:27
  Trouver un code source :
 
dans
 
Accueil > Forum > 

JAVA / J2EE / J2ME

 > 

Algorithme

 > 

Compression, Split et Cryptage

 > 

classe MessageDigest


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

classe MessageDigest

mardi 6 novembre 2007 à 15:20:52 | classe MessageDigest

makdand

bonjour,
j'ai écris un code java pour obtenir la valeur hexadécimal de l'application de l'algorithme de hachage MD5. mon problème est qu'on utilisant la classe MessageDigest ce que j'obtient comme clé est un tableau de byte que si je le convertis en String ne me donne pas une chaine hexadécimale.
voila la partie du  code ou j'utilise MessageDigest:
      
byte []messageorg ;
          byte []key ;
          MessageDigest md = MessageDigest.getInstance("MD5");
              while((line=is. readLine())!=null)             
             {   messageorg = line.getBytes();
                 md.update(messageorg);
                key = md.digest(messageorg);
                 .........................
                 .............
                cles_hash.addElement(key);/*un vecteur qui comportera les clé*/
                  
                 }

    public void affiche_mes_hash()
  {
   System.out.println("affichage des chaines suivies de leurs valeurs de hachage\n");
  for(int i= 0;i<table_hash.size();i++)
   System.out.println(table_hash.get(i).toString()+"\t"+cles_hash.get(i).toString());}

>>là les clés contiennet des caractères nohexadécimal tq @ ou ]
comment faire pour obtenir des clés hexadécimales?
merci
mercredi 25 mars 2009 à 06:32:06 | Re : classe MessageDigest

verdy_p

Où as-tu vu que la conversion d'un tableau de byte en String devait afficher le code hexadécimal ? Si tu veux de l'hexa, c'est à toi de le faire (avec l'encodage que tu veux), mais la méthode toString() ne le fera pas, elle n'est pas du tout faite pour ça. En revanche la fonction (statique) suivante fera facilement cette conversion: // Nécessite l'import de StringBuilder du package utilitaire standard "java.util" du JRE de Java 1.5 et plus. // Dans Java 1.4 et moins utiliser StringBuffer (équivalent ici mais moins efficace que StringBuilder car StringBuffer est synchronisé, cette synchro étant inutile ici car l'instance est entièrement locale ici à un seul thread, le thred de l'appelant, et disparait en fin de fonction) public static String toHex(final byte[] in) { final int len = in.length; final StringBuilder out = new StringBuilder(len * 2); for (int i = 0; i < len; i++) { final byte b = in[i]; out.append(digitToChar((b >> 4) & 15)); out.append(digitToChar(b & 15)); } return out.toString(); } //avec cet utilitaire défini dans la même classe: private static final char digitToChar(final int h) { return (char)((h <= 9 ? '0' : 'A' - 10) + h); }


Cette discussion est classée dans : classe, messagedigest, byte, hash, messageorg


Répondre à ce message

Sujets en rapport avec ce message

java.net [ par mirelak6 ] salut,j'écris un petit programme permettant d'afficher l'adresse masque,voici le code: import java.net.*; public class MasqueAdresse { /** * Donn Comment comparer les paramêtre: <T> de deux objets [ par WINACreve ] Salut,Est-ce que il y a un moyent de comparer 2 objets et de dire si ils sont du même type...Mais un même type en se fiant également au paramêtre de c references ambigues [ par divlys ] Salut, Dans mon programe, j'utilise la classe Timer. Ms j'importe java.util.* et java.swing.* qui possede tous les deux une telle classe. Y-t-il moye Methode non trouvée à la compilation [ par 3xodius55 ] Bonjour à tous, je fais mes premiers pas en java et me voila deja confronté a une petite erreur : pour plus de compréhension, voila le contexte (petit Eclipse [ par hoymille ] Bonjour,Je dois ecrire une classe en java en utilisant des autres classes dont j'ai les fichiers .class.J'ai créé un nouveau projet et j'ai importé le Héritage, polymorphisme et abstraction ... [ par chamallow ] Bonjour, J'ai un problème concernant un héritage. Je m'explique : mon programme contient une fenêtre principale faisant appel à des boites de dialog petite question [ par sheorogath ] bjr ,trouvant les enchainement de if -else je voulais savoir si il existait une maniere d'instancier une classe de cette facon : new class(unstring) a Signer une applet [ par sanocli ] Je voudrais savoir comment on fait pour signer un applet java car j'ai une classe qui me permet d'afficher une batiment dans mon applet mais le proble .toLowerCase() [ par christo01 ] Bonjour, je pose cette question avec .toLowerCase(), mais je parle bien sûr de n'importe quelle fonction similaire. Question: Qu'est ce qui est le pl SetTipText [ par krim001 ] svp je cherche un exemple de la méthode setTipText de la classe JToolTip !!! càd pour afficher un tooltip en utilisant la classe JToolTip. svp c'est u


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,343 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales