2010-07-08 12 views
53

Czy ktoś może polecić bibliotekę Java, która zawiera metody, które są odpowiednie do sprawdzania siły hasła po stronie serwera w aplikacji internetowej. Idealnie sprawdzania powinno być:Biblioteka sprawdzania wytrzymałości hasła

  • konfigurowalny, pozwalając wdrożeniowcowi dostarczyć różne słowniki, dostosowanie wagi poszczególnych kryteriów, a więc na
  • rozciągliwy dzięki czemu nowe kryteria mają być realizowane w razie potrzeby
  • realizowane w czystej Javie
  • nie fundamentalnie splecione z biblioteki znaczników, komponentów UI lub „zarządzania hasłami” funkcjonalności
  • zgodnej z GPL 3 projektu
  • kompatybilnym z Spr ing okablowanie
  • mavenized (najlepiej dostępna przez Maven Central)
+0

Możesz znaleźć ten post usefule - http://stackoverflow.com/questions/75057/what-is-the-best-way-to-check-the-strength-a-password –

+1

To może być proste ale może być przydatna https://github.com/devewm/java-pwdstrength –

+0

Poszukując biblioteki, znalazłem [java port] (https://github.com/nulab/zxcvbn4j) biblioteki JavaScript [zxcvbn] (https://blogs.dropbox.com/tech/2012/04/zxcvbn-realistic-password-strength-estimation/). Nie sprawdza reguł, ale oblicza entropię hasła, biorąc pod uwagę listę popularnych haseł. Nie ma żadnych zależności. Jest w centrum maven. Posiada licencję MIT. –

Odpowiedz

64

Wystarczy popatrzeć na vt-password:

  • konfigurowalny, pozwalając wdrożeniowcowi dostarczyć różne słowniki, dostosowanie wagi poszczególnych kryteriów, i tak dalej - Częściowo (tak, aby można było konfigurować, słowniki, bez kryteriów ważenia)
  • Rozszerzalny, umożliwiając wdrożenie nowych kryteriów w razie potrzeby - Tak
  • realizowane w czystej Javie - Tak (i godnej javadoc)
  • nie fundamentalnie spleciona z biblioteki znaczników, komponentów UI lub „zarządzania hasłami” funkcjonalność - Tak
  • zgodnej z GPL 3 projektu - Tak (LGPLv3/APLv2 dual-licencjonowany od listopada 2013)
  • kompatybilnym z wiosennym okablowania - Wygląda
  • mavenized (najlepiej dostępna throug h Maven Central) - Tak (w centralnym od wersji 3.0)

Aktualizacja przez @Stephen C

Faceci, którzy robią VT-hasło podjęły szereg udoskonaleń API ponieważ Pytanie zostało pierwotnie udzielone, a jednym z rezultatów jest to, że klasy są łatwiejsze do skonfigurowania przy użyciu Spring IoC. Mają również wysłał go do Maven Central: http://mvnrepository.com/artifact/edu.vt.middleware/vt-password

+2

Podczas gdy nie interesuje mnie ten temat (teraz), jaka jest świetna odpowiedź. +1 –

+0

Doskonale! Dzięki! –

+0

@Stephen: Nie ma za co. @Daniel: Dzięki, cieszę się, że znalazłeś to (potencjalnie) również pomocne. –

10

Jest to odpowiedź nawiązanie powiedzieć, że zrobił use VT-hasło, a ja jestem zadowolony z wyników.

Zacząłem od wersji vt-password 2.0 i trochę ją zhakowałem, aby działało z okablowaniem Spring, i rozwiązałem kwestie bezpieczeństwa wątków, o których wspominałem w moich komentarzach na temat odpowiedzi @ Pascala. To wystarczało, aby się dogadać.

Kilka tygodni temu zespół vt-middleware wydał vt-password 3.0, oparty (w małej części) na mojej opinii dotyczącej wersji 2.0.W tym wydaniu zająłem się wszystkimi problemami, z którymi się zetknąłem, a teraz odrzuciłem moje lokalne mody i używam vt-password 3.0, tak jak jest. Przesłali również swoje rzeczy do Maven Central i udoskonalili dokumentację online.

+0

w jaki sposób udało ci się użyć vt-hasła do obliczenia siły hasła? Nie widzę niczego, co pozwoliłoby ci na zważenie różnych kryteriów lub odzyskanie "siły" podczas sprawdzania poprawności. A może zrezygnowałeś z tego wymogu? Myślę, że mogłem wielokrotnie przeprowadzać walidację z różnymi wartościami reguł i jakoś wymyślić siłę, ale to z pewnością wydaje się przesadne. – Tauren

+0

@Tauren - w rzeczywistości zrezygnowałem z tego wymogu. –

+0

No cóż, miałem nadzieję, że znalazłeś proste rozwiązanie. Zrzuciłem także ten wymóg. Może opiszę siłę hasła w przyszłości. – Tauren

Powiązane problemy