Jak wygenerować silne losowe hasło w Javie — kompletny samouczek SecureRandom

Opublikowany: 2017-07-29

Domyślnie Java nie posiada żadnego narzędzia, które tworzy silne, długie losowe hasło. Tutaj stworzyliśmy szczegółowy samouczek dotyczący generowania silnego losowego hasła za pomocą interfejsu API java.security.SecureRandom .

  • Java Security — generuj bezpieczne losowe hasło na dobre
  • Jak wygenerować bezpieczny losowy ciąg alfanumeryczny w Javie?
  • Generator haseł w kodzie źródłowym Java
  • Java generuje losowe hasło ze znakami specjalnymi

Będziemy używać tabeli ASCII, aby uzyskać znaki specjalne według wartości dziesiętnej w java. Spójrz na poniższe mapowanie między Decimal Value a Characters .

Tabela ACSII, aby uzyskać znaki specjalne

Oto przepływ:

  1. Utwórz metodę publiczną CrunchifyRandomPasswordGenerator() , w której otrzymamy wartości dziesiętne ASCII w 3 różnych pętlach.
  2. ArrayList zostanie wypełniona wartościami dziesiętnymi ASCII
  3. crunchifyGetRandom() pobierze losowy znak z powyższej listy i skojarzy z nim Char.
  4. W metodzie main() mamy 2 pętle
    1. Zewnętrzna pętla do drukowania liczby haseł
    2. Wewnętrzna pętla do wydrukowania liczby znaków dla silnego hasła
  5. Otóż ​​to. Po prostu uruchom poniższy program i gotowe.

Program Java:

Dane wyjściowe konsoli Eclipse:

Spróbuj zrozumieć, w jaki sposób pobierasz Char z wartości Decimal tutaj: