MessageDigest und so

Hi,

was ist daran falsch?

MessageDigest msg = MessageDigest.getInstance("md5");
String myString = (msg.digest("geHeim".getBytes())).toString();

Vom Prinzip her sollte es doch tun.
Für ‚geHeim‘ kann ich einsetzen was ich will, bekomme immer den gleichen String raus.
Hab ich da irgendein Prinzip misinterpretiert?

cu Desian

Gelöst
Hi,

habs rausbekommen:
In myString wird die Speicheradresse des byteArrays geschrieben, das aus dem Verschlüsselungsalgorythmus von digest() kommt.
Wenn ich jedes einzelne byte in char oder besser in eine hexZahl verwandle und es mit

for(counter = 0; counter 

Hallo Desian,

Falsch ist daran, dass Du mit der toString() Methode auf ein byte-Array nicht schlaues zurück bekommst. (schlau ist es zwar schon, aber mit der Objektreferenz kannst Du nicht viel anfangen)

Viele Grüsse
Simon

MessageDigest msg = MessageDigest.getInstance("md5");
byte[] bytes = msg.digest("geHeim".getBytes()); 
// gibt nicht schlaues!!
System.out.println("bytes: " + bytes.toString());
// so kommmt doch was schönes raus, oder?
for (int i = 0; bytes.length \> i; i++) {
 System.out.println(bytes[i]);
}