Gostaria de saber se alguém teria como me passar algum código para geração automática de login e senha - alfanuméricos(Ao cadastrar um novo usuário, será gerado automaticamente esse login e senha que será enviada via e-mail e também armazenada no meu banco de dados). Entretanto gostaria de saber se alguém poderia disponibilizar somente esse código de geração de login e senha para mim.
a) Todos os caracteres são de A até Z, 0 até 9, e não se confundem (por exemplo, é inaceitável ter uma senha que tenha a letra O e o dígito 0).
b) Seja silábica, mas não bata com palavras da língua portuguesa, nem com palavrões (nem vou dar exemplos aqui)
Por exemplo, “resegrau” não existe no dicionário nem é um palavrão.
c) Seja realmente aleatória (o que foi proposto no PHP)
d) Seja esquema “America OnLine” (duas palavras curtas, unidas por um símbolo. Exemplo: ‘soft%post’
Há muitos jeitos de gerar a tal senha. Existe até um padrão FIPS para isso. Diga o que você gostaria.
F
feaupi
É simples, Vou cadastrar um novo funcionário:
João da Silva (etc)
Ao clicar em INCLUIR, gostaria de gera uma senha e login alfanuméricos(pode ser, de repente, juntando algumas letras do nome do funcionário):
Login: JSL1AA59
senha: X23R4G
Iria manda por e-mail essa senha e esse login e armazenar também em meu banco de dados ou, poderia também ao invés de pegar o nome do usuário para gerar a senha, posso gerar tudo automaticamente. Qual a melhor solução? Alguma sugestão? Preciso só gerar essa senha e esse login.
T
thingol
É mais seguro não depender do nome do usuário, ou de outra informação, para gerar a senha; deve ser aleatório mesmo.
Para o formato, parece que você quer 6 caracteres/dígitos em maiúscula, certo? Poderia ser algo como
importjava.util.Random;classGeraSenha{privatestaticRandomr=newRandom();// Propositadamente removi os símbolos parecidos, como 1 e I, 0 e O, B e 8, 2 e Z.// Se quiser adicionar outros símbolos, adicione-os aqui.privatestaticfinalchar[]simbolos="2345679ACEFGHJKLMNPQRSTUVWXY".toCharArray();publicStringgera(intnDigitos){StringBuffersb=newStringBuffer(nDigitos);for(inti=0;i<nDigitos;++i){sb.append(simbolos[r.nextInt(simbolos.length)]);}returnsb.toString();}publicstaticvoidmain(String[]args){GeraSenhags=newGeraSenha();for(inti=0;i<10;++i){System.out.println(gs.gera(6));}}}