Post teilen


Delicious Digg Google+

7 Comments

  1. statt convertToHex reich auch einfach bigint


    BigInteger number = new BigInteger(1,hash);
    return number.toString(16);

  2. Vielen Dank für die Info!

    Um kompatibel mit der MySQL-Funktion SHA1() zu sein, eignet sich übrigens:
    md = MessageDigest.getInstance("SHA-1");

  3. md = MessageDigest.getInstance(„MD5“);

    funktioniert auch tadellos.

  4. Das klingt jetzt ein wenig neunmal klug aber…
    SHA-512 ist ein Hash-Algorithmus, kein Verschlüsselungsalgorithmus. Es ist nämlich unmöglich, aus dem Hash das Original wiederherzustellen, was bei einer Verschlüsselung aber (mit dem richtigen Schlüssel) möglich sein sollte. Verschlüsselungen sind über die Crypto-Api (angesprochen über javax.crypto.Cipher) möglich.
    siehe da:
    http://download.oracle.com/javase/1.4.2/docs/api/javax/crypto/Cipher.html

  5. Du hast ein kleines Problem… (warum nur haben Java-Programmierer immer so ein Problem mit Encodings ?)

    md.update(text.getBytes(„UTF-8“), 0, text.length());

    Wenn Dein Text Zeichen enthält, die in UTF-8 durch mehrere bytes dargestellt werden, hashst Du einen Teil des Passwords nicht …

    einfacher und korrekter:
    md.update(text.getBytes(„UTF-8“));

Kommentar abgeben

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.

Microsoft Certified Professional Logo
 

Werbung