2012-01-30 17 views
6

Szukam funkcji Java do generowania/weryfikowania haszów haseł, które zostały zakodowane w sposób, w jaki robią je crypt(3) podczas przechowywania ich w systemie Linux "/ etc/shadow", jeśli sha512 jest aktywowany w "/etc/pam.d/ wspólne hasło ".

tekstu jawnego string „geheim” przełoży się:

"$6$WoC532HB$LagBJ00vAGNGu8p9oeYDOSNZo9vTNTzOgPA.K0bJoiXfbcpj3jBuTkNwdzCrSNadRi8LanH1tH6tGGPPp/Lp3." 

Od http://www.akkadia.org/drepper/SHA-crypt.txt Rozumiem, że podobnie jak z MD5, to nie tylko hash SHA jak DigestUtils lub Java MessageDigest klasy produkują ale algorytm, który działa trochę więcej magii.

+0

Czy sprawdziłeś to: http://stackoverflow.com/questions/3174943/java-implementation-of-crypt3 – home

Odpowiedz

5

znalazłem implementacje Javy dla wszystkich nowych krypty() algorytmy tutaj: ftp://ftp.arlut.utexas.edu/java_hashes/

+0

Tymczasem projekt Apache Commons Codec ma pełne wsparcie dla wszystkich algorytmów Linux crypt()! – lathspell42

+0

Byłbym wdzięczny za trochę informacji o tym, skąd pochodzi ten link. Pobieranie losowych słoików może być złym pomysłem. – DonyorM

+0

FYI link nie działa, a wersja 'archive.org' nie jest dostępna. Czy masz inne źródło? – Luc

0

Pytanie, na które się powołujesz, zawiera jedynie linki do tradycyjnej metody crypt (3) opartej na DES i metody "$ 1 $" opartej na MD5. Muszę sprawdzić hasła korzystające z metody "$ 5 $" opartej na SHA-1 lub nawet "6 $ $" opartej na SHA-512.

Na tej podstawie oznacza, że ​​krypta (3) używa np. SHA-512, ale dodaje wartość soli i robi kilka iteracji, jak opisano na http://www.akkadia.org/drepper/SHA-crypt.txt

+0

Po pewnym wyszukiwaniu znalazłem przynajmniej jedną implementację mechanizmu $ 6 $ opartego na SHA-512: http : //tools.arlut.utexas.edu/gash2/doc/javadoc/arlut/csd/crypto/Sha512Crypt.html – lathspell42

Powiązane problemy