In http://www.anyexample.com/programming/java/java_simple_class_to_compute_md5_hash.xml viene fornito un esempio su come calcolare un hash MD5 di stringa. Ciò si traduce in una stringa esadecimale a 20 cifre. Secondo http://en.wikipedia.org/wiki/MD5 mi aspetterei una stringa esadecimale a 32 cifre. Ad esempio, ottengo lo stesso risultato utilizzando la risposta dac2009 in How can I generate an MD5 hash?.Java calcolare hash MD5
Perché ottengo qualcosa che sembra un hash MD5 ma non lo è? Non riesco a immaginare che tutte le stringhe che ottengo debbano essere riempite con 12 zeri iniziali.
Edit: un codice di esempio
public static String MungPass(String pass) throws NoSuchAlgorithmException {
MessageDigest m = MessageDigest.getInstance("MD5");
byte[] data = pass.getBytes();
m.update(data,0,data.length);
BigInteger i = new BigInteger(1,m.digest());
return String.format("%1$032X", i);
}
Tratto da http://snippets.dzone.com/posts/show/3686
Il tuo primo collegamento è un 404 – Paul
Inserisci un breve esempio (completo) di codice che mostri il problema che stai riscontrando. Senza di ciò, non possiamo dirti cosa stai facendo male :) Il metodo descritto nella domanda StackOverflow a cui ti colleghi è come generi un hash MD5 che è in effetti 32 caratteri esadecimali –
Il primo link funziona qui ... – AndyAndroid