Dica: Gerando senhas aleatórias

Galera,

Tenho um sistema onde eu precisava gerar uma senha aleatória. Sei que o código é simples então resolvi dar uma pesquisada na web para saber se já existia algo do tipo, qual não foi minha surpresa ao encontrar o pacote RandomStringUtils dentro do Commons-Lang.

Fica aí a dica. É bem tranquilo de usar:

String senha = RandomStringUtils.randomAlphanumeric(8)

[]'s

Cuidado ao usar isso para qualquer coisa séria, já que esse método não é seguro!

A classe usa a classe Random para gerar os caractéres e está por ser um PRNG não se recomenda para fins de segurança.

Minha sugestão é voce modificar o fonte desta classe para usar uma instancia de SecureRandom no lugar.

Hmmm… teria mais detalhes, louds?

Acho que não seja necesária uma alteração no fonte. Você pode usar o método abaixo e passar o SecureRandom como parâmetro.

random(int count, int start, int end, boolean letters, boolean numbers, char[] chars, Random random)

[]'s

[quote=“marcoantoniorocha”]Acho que não seja necesária uma alteração no fonte. Você pode usar o método abaixo e passar o SecureRandom como parâmetro.

random(int count, int start, int end, boolean letters, boolean numbers, char[] chars, Random random)

[]'s[/quote

Verdade, não tinha reparado nesse método, são todos tão parecidos que alguns passam desapercebidos.

Talvez seja melhor, você mesmo gerar sua rotina de criação de strings aleatórias. Vou até tentar fazer uma. Qualquer coisa posto aqui

Pq? :smiley: