Criptografia + Java + Descriptografar

3 respostas
S

Preciso Salvar minha senha no Banco Criptografa +

Mas SE o Usuario esqueceu a senha Preciso Descriptografar

Alguem tem algum exemplo/?de como descriptografar

MD5 NAO DESCRIPTOGRAFA
BASE 64 NAO É CRIPTOGRAFIA

ALGUEM CONHECO OUTRO?

VALEU

3 Respostas

fabiozoroastro

Bom, vc sabe que é aconselhável que não seja possível descriptografar né?
Se vc quer usar essa opção, é melhor vc criar seu próprio algorítmo, pq confiar, segurança em coisa pronta por outra pessoa é foda.
:slight_smile:

Abraço.

T

Para efeitos de segurança, se o usuário esquecer a senha, resete-a e gere uma nova, e mande o usuário para uma página no seu sistema para que ele possa cadastrar uma nova.

A vantagem do MD5 é justamente que não é possível decifrar as senhas, ou seja, você não tem responsabilidade sobre elas.

eduveks

Infelizmente o MD5 já tem o dias meio q contados ou já contados…

http://www.guj.com.br/posts/list/50791.java

Então o ideal é usar o RIPEMD-160 ou o SHA-192…

Mas se realmente vc quer poder descriptografar… pode usar a encriptação DES, que utiliza um conjunto de caracteres para criptografar, e para descriptografar é preciso usar o mesmo conjunto de caracteres usado para criptografar, assim é como usar uma senha para encriptar e só desencripta quem tiver esta tal senha, por isso se usar o DES proteja bem esta tal senha…

Existe esta API da GNU que suporta muitos padrões de criptografia…

http://www.gnu.org/software/gnu-crypto/

Entretanto montei estas classes baseadas em outras para um projeto.

Aqui vc tem duas classes para fazer a codificação DES e MD5…

http://netuno.googlecode.com/svn/trunk/src/org/netuno/util/security/

Para usar a MD5 é só…

String result_md5 = MD5.crypt("password_xpto");
System.out.println(result_md5);

Para usar o DES é:

String key = "keyword_xpto";
DES des = new DES(key );
String des_encode = new String(des.Encode("text to encode..."));
System.out.println(des_encode);
String des_decode = des.Decode(des_encode.getBytes());
System.out.println(des_decode);

Em todo caso o ideal é usar o pacote do GNU, mas como aquilo vem com muita coisa e é grandinho tem estas alternativas…

:wink:

Criado 7 de fevereiro de 2007
Ultima resposta 7 de fev. de 2007
Respostas 3
Participantes 4