Geração automática de senhas

Prezados senhores,

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.

Obrigado mais uma vez.

http://www.phpbrasil.com/scripts/source.php/id/514

http://www.phpbrasil.com/scripts/source.php/id/757

Veja esses scripts em php, e faz tua adaptação em java…

http://www.phpbrasil.com/articles/article.php/id/158

Esse eh bem interessante…

Você quer uma senha de que tipo?

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.

É 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.

É 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

import java.util.Random;

class GeraSenha {
    private static Random r = new Random();
    
    // 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.
    private static final char[] simbolos = "2345679ACEFGHJKLMNPQRSTUVWXY".toCharArray();
    
    public String gera (int nDigitos) {
        StringBuffer sb = new StringBuffer (nDigitos);
        for (int i = 0; i < nDigitos; ++i) {
            sb.append (simbolos [r.nextInt (simbolos.length)]);
        }
        return sb.toString();
    }
    
    public static void main(String[] args) {
        GeraSenha gs = new GeraSenha();
        for (int i = 0; i < 10; ++i) {
            System.out.println (gs.gera (6));
        }
    }
}

Valeu :smiley: .