Re: [FUG-BR] RES: Off Topic: Postfix + mysql + troca de senha

2006-02-16 Por tôpico Tiago N. Sampaio
um exemplo simples em php, caso vc jah tenha a string da senha 
criptografada:

if($senhaCrypt == crypt($senhaPlain,$senhaCrypt){
echo "Parabens a senha está certa :)";
}

Abraços
Tiago N. Sampaio

Tiago Cruz wrote:

>On Thu, 2006-02-16 at 13:18 -0300, Fabrício Fadel Kammer wrote:
>
>  
>
>>Entao Robson, o problema é comparar :-)
>>
>>Não sei como descriptografar a senha...
>>
>>
>
>Acredito que a senha não possa ser descriptografada, você deverá
>compara-la criptografada (pelo menos os primeiros caracteres)
>rsrsrsrs
>
>  
>

___
freebsd mailing list
freebsd@fug.com.br
http://lists.fug.com.br/listinfo.cgi/freebsd-fug.com.br


Re: [FUG-BR] RES: Off Topic: Postfix + mysql + troca de senha

2006-02-16 Por tôpico Augusto Bott
-BEGIN PGP SIGNED MESSAGE-
Hash: RIPEMD160

A função ENCRYPT() do mysql é dependente de plataforma (ou pelo menos,
costumava ser...). Significa que ENCRYPT num linux não necessariamente
retorna a mesma coisa que num BSD.

ENCRYPT(), MD5() e SHA1() são exemplos de funções HASH (ou one-way).

Três propriedades são especialmente interessantes (entre outras):

a) para uma mesma entrada A, sempre haverá a mesma saída
(são determinísticas, com a mesma entrada, sempre a mesma saída);

b) se houver uma pequena variação na entrada (ex: 'aaadd' ou 'aAadd'), a
saída tende a ser completamende diferente;

c) a função direta é barata (de 'ida'), ou seja, do plaintext para o
encriptado é muito 'barato', rápido. Mas do encriptado para o plantext,
impraticavelmente cara (a função 'de volta'). A partir de da informação
encriptada, é praticamente impossível reaver a informação original.

Por esses motivos, são particularmente interessantes para armazenar
senhas e informações que apenas uma única pessoa deve saber - o usuário.

Agora, quanto a tua aplicação, recomendo usar PASSWORD() nativa do
MySQL, MD5, SHA1 ou outra qualquer (eu normalmente uso MD5 ou SHA1, pois
não depende de mandar a string da senha pela conexão no banco,
normalmente sem SSL). Como assim?

Duas alternativas para autenticar o usuário:

a) SELECT COUNT(1) FROM users WHERE username='someone'
AND PASSWORD=[ENCRYPT|MD5|SHA1|PASSWORD]('secret');

b) SELECT username, password FROM users WHERE username='someone';

em (a), a senha e o user trafegam em plaintext pela rede e podem
eventualmente aparecer em logs de acesso ao banco...

em (b), apenas o username trafega em plaintext, a senha faz parte do
retorno do pacote, encriptada. Nesse caso, deves calcular a senha
encriptada na aplicação e comparar com a resposta do banco (mas deverás
encriptar no banco com alguma função HASH também disponível no PHP ou
outra linguagem que fizeres a interface)


Augusto Bott
DBA - Administrador de Banco de Dados
Departamento de Redes e Tecnologia

E-mail: [EMAIL PROTECTED]
Telefone: +55 11 3177-0700 ext: 343
Celular:  +55 11 7840-3154
Jabber:   [EMAIL PROTECTED]
MSN:  [EMAIL PROTECTED]
ICQ:  710029
- --
Catho Online - Seu sucesso é o nosso negócio
http://www.catho.com.br


Fabrício Fadel Kammer wrote:
> Entao Robson, o problema é comparar :-)
> 
> Não sei como descriptografar a senha...
> 
> -Mensagem original-
> De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Em
> nome de Robson Uchoa
> Enviada em: quinta-feira, 16 de fevereiro de 2006 14:18
> Para: Lista de discussao sobre FreeBSD
> Assunto: Re: [FUG-BR] Off Topic: Postfix + mysql + troca de senha
> 
> 
> Por que você não tenta indexar pelo nome ou número do usuário (ou outro 
> campo que seja único) ao invés da senha?
> 
> update senha =encrypt(senhanova) from email where username =
> nomedeusuario;
> 
> É lógico que você deve verificar a senha antiga primeiro
> 
> select senha from email where username = nomedeusuario;
> 
> e comparar.
> 
> 
> Fabrício Fadel Kammer escreveu:
> 
>>Salve galera!
>> 
>>Sei q eh bem off essa questao, mas se alguem já conseguiu fazer isso e
> 
> 
>>puder me ajudar...
>> 
>>Tenho um servidor postfix e as senhas sao armazenadas no banco de 
>>dados usando a funcao encrypt() do mysql...
>> 
>>Alguém já fez uma interface em PHP para alteracao de senha que ta 
>>armazenada com encrypt()???
>> 
>>O problema ta em testar a senha antiga, pq o encrypt usa o salt e se 
>>vc fizer encrypt('teste') 10 x tera 10 valores diferente, entao nao da
> 
> 
>>pra fazer update senha =encrypt(senhanova) from email where senha = 
>>encrypt(senha_antiga); :-(
>> 
>>[]s
>>___
>>freebsd mailing list
>>freebsd@fug.com.br 
>>http://lists.fug.com.br/listinfo.cgi/freebsd-fug.com.br
>>
>>  
> 
> ___
> freebsd mailing list
> freebsd@fug.com.br
> http://lists.fug.com.br/listinfo.cgi/freebsd-fug.com.br
> 
> ___
> freebsd mailing list
> freebsd@fug.com.br
> http://lists.fug.com.br/listinfo.cgi/freebsd-fug.com.br
> 
> 
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.1 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD8DBQFD9MO0e+9A2H6dRtYRA7bZAJ9OMy3AIkFDOfNLjo7WHBvnOFmJ/QCff6rt
QAufuZPEabWG20JbpZ3RyVM=
=T97M
-END PGP SIGNATURE-
___
freebsd mailing list
freebsd@fug.com.br
http://lists.fug.com.br/listinfo.cgi/freebsd-fug.com.br


Re: [FUG-BR] RES: Off Topic: Postfix + mysql + troca de senha

2006-02-16 Por tôpico Tiago Cruz
On Thu, 2006-02-16 at 13:18 -0300, Fabrício Fadel Kammer wrote:

> Entao Robson, o problema é comparar :-)
> 
> Não sei como descriptografar a senha...

Acredito que a senha não possa ser descriptografada, você deverá
compara-la criptografada (pelo menos os primeiros caracteres)
rsrsrsrs

-- 
Tiago Cruz
http://linuxrapido.org


___
freebsd mailing list
freebsd@fug.com.br
http://lists.fug.com.br/listinfo.cgi/freebsd-fug.com.br


[FUG-BR] RES: Off Topic: Postfix + mysql + troca de senha

2006-02-16 Por tôpico Fabrício Fadel Kammer
Entao Robson, o problema é comparar :-)

Não sei como descriptografar a senha...

-Mensagem original-
De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Em
nome de Robson Uchoa
Enviada em: quinta-feira, 16 de fevereiro de 2006 14:18
Para: Lista de discussao sobre FreeBSD
Assunto: Re: [FUG-BR] Off Topic: Postfix + mysql + troca de senha


Por que você não tenta indexar pelo nome ou número do usuário (ou outro 
campo que seja único) ao invés da senha?

update senha =encrypt(senhanova) from email where username =
nomedeusuario;

É lógico que você deve verificar a senha antiga primeiro

select senha from email where username = nomedeusuario;

e comparar.


Fabrício Fadel Kammer escreveu:
> Salve galera!
>  
> Sei q eh bem off essa questao, mas se alguem já conseguiu fazer isso e

> puder me ajudar...
>  
> Tenho um servidor postfix e as senhas sao armazenadas no banco de 
> dados usando a funcao encrypt() do mysql...
>  
> Alguém já fez uma interface em PHP para alteracao de senha que ta 
> armazenada com encrypt()???
>  
> O problema ta em testar a senha antiga, pq o encrypt usa o salt e se 
> vc fizer encrypt('teste') 10 x tera 10 valores diferente, entao nao da

> pra fazer update senha =encrypt(senhanova) from email where senha = 
> encrypt(senha_antiga); :-(
>  
> []s
> ___
> freebsd mailing list
> freebsd@fug.com.br 
> http://lists.fug.com.br/listinfo.cgi/freebsd-fug.com.br
>
>   
___
freebsd mailing list
freebsd@fug.com.br
http://lists.fug.com.br/listinfo.cgi/freebsd-fug.com.br

___
freebsd mailing list
freebsd@fug.com.br
http://lists.fug.com.br/listinfo.cgi/freebsd-fug.com.br


[FUG-BR] RES: Off Topic: Postfix + mysql + troca de senha

2006-02-16 Por tôpico Fabrício Fadel Kammer
tbm tenho o squirrelmail aqui com o plugin, eh q gostaria de deixa uma
opcao mais facil, sem q o usuario precise logar no webmail...

[]s

-Mensagem original-
De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Em
nome de Tiago Cruz
Enviada em: quinta-feira, 16 de fevereiro de 2006 13:16
Para: Lista de discussao sobre FreeBSD
Assunto: Re: [FUG-BR] Off Topic: Postfix + mysql + troca de senha


On Thu, 2006-02-16 at 13:07 -0300, Fabrício Fadel Kammer wrote:

> Alguém já fez uma interface em PHP para alteracao de senha que ta 
> armazenada com encrypt()???

Eu uso o SquirellMail com um plugin para isso.

-- 
Tiago Cruz
http://linuxrapido.org


___
freebsd mailing list
freebsd@fug.com.br
http://lists.fug.com.br/listinfo.cgi/freebsd-fug.com.br

___
freebsd mailing list
freebsd@fug.com.br
http://lists.fug.com.br/listinfo.cgi/freebsd-fug.com.br