Tabela com campo criptografado

4 respostas
U

Boa noite
Gostaria de criar uma tabela “tbl_usuario” com os campos nome e senha que a senha não ficasse esposta, uma criptografia ou algo assim no postgresql
Ao dar um insert a senha não poder ser lida caso alguem leia os dados da tabela

4 Respostas

andreiribas

A maioria dos bancos de dados tem funções prontas.
Que eu sei o MySQL com certeza tem as funções SHA(string), encode(string), SHA1(string), MD5(string).

Assim, você criptografa a senha usando a função do banco de dados.

Mas o melhor mesmo é passar a string da senha por um algoritmo em java, ou na linguagem que você tiver implementando o sistema, e grava a string da senha criptografada no banco de dados.

Quando o usuário for logar no sistema, criptografa a senha enviada e compara com a do banco de dados pra saber se é igual.

U

Legal porem o que eu gostaria é gravar na tabela o md5

ao dar um select * from usuarios where id = 1;
mostrar

1 | joao | dccd96c256bc7dd39bae41a405f25e43

embora ja vi que tem um site que converte de volta (senhas pequenas)

mueller

md5 não é uma boa opção para armazenar senhas no banco de dados

E além desse site que vc citou, existem outros bom bases de dados de md5’s.

http://www.lightbluetouchpaper.org/2007/11/16/google-as-a-password-cracker/

U

É realmente fico com o pé atras
o que eu queria era isso:

usuario1=# insert into usuarios values(3,‘usando_senha_grande’,md5(‘usando_senha_grande’));

INSERT 0 1

usuario1=# select * from usuarios where senha= md5(‘usando_senha_grande’);

id | nome | senha

----±--------------------±---------------------------------

3 | usando_senha_grande | 02d2380750668941a339517a531b322a

(1 row)
Legal grava com a criptografia

porem se da para ver ate 5 porque não mais?

Criado 20 de agosto de 2008
Ultima resposta 21 de ago. de 2008
Respostas 4
Participantes 3