0

Qual é a melhor função para se criptografar dados?

criado por André Taiar em 13/06/2004 11:44am
Estava usando o base64_encode() mas estou achando meio fraco...
Quais são as mais usadas e como fazer?

Obrigado...

Lista de Respostas:

0
14/06/2004 9:40pm
(~12 anos atrás)
Eldon Pinheiro respondeu:
Olha, função do php que eu conheço é a md5() que não é uma função para se criptografar dados realmente, ela é bem utilizada para criptografar senhas, informações etc.

agora tem essa classe que eu vi aqui no phpbrasil que é a pcrypt, muito bom mesmo!!

Class Perfect Crypt

http://ps.wmforce.com


0
14/06/2004 11:12pm
(~12 anos atrás)
Alessander Thomaz respondeu:
depende de que dados.
MD5 não é bem uma criptografia, é um hash e é legal para usar em senhas.

mas dados complexos pode usar vários algoritmos, do blowfish ao serpentine, evite usar o des que é fraquinho.

No manual tem vários exemplos.
http://www.php.net/manual/pt_BR/ref.mcrypt.php

Boa sorte.

0
15/06/2004 6:25pm
(~12 anos atrás)
Diogo Gomes respondeu:
Caso queira algo pronto, use a classe Crypt Class http://phpbrasil.partners.phpclasses.org/browse/package/851.html

0
16/06/2004 12:24pm
(~12 anos atrás)
Cléver Anjos respondeu:
. MD5 eh apenas uma funcao hash que retorna um string (normalmente 32 pocicoes). Eh uma via de "mao unica"

. Se vc quiser uma funcao que possa ser "descriptografada" posteriormente, utilize o conjunto de funcoes da mcrypt (http://www.php.net/manual/pt_BR/ref.mcrypt.php) que fornece varias bibliotecas de criptografia

0
22/06/2004 10:07am
(~12 anos atrás)
Eu não acho bom ter uma função que possa ser descriptografada, prefiro uma que tenha via de mão única. Acho mais seguro.

[]s

0
23/06/2004 11:22pm
(~12 anos atrás)
Alessander Thomaz respondeu:
Mas se for mão única não consegue voltar.
Criptografia de Mão única serve apenas para senhas, dados que precisa ter de volta, mas quer guardar de forma 'escondida' não tem jeito, tem que ser uma criptografia que tenha volta, senão não faz sentido.

Imagina criptografar um texto, um livro, ou qualquer coisa em mão única e quando você quiser ler ou ver o arquivo?
É tudo questão de uso.

Alessander Thomaz

0
25/06/2004 2:14pm
(~12 anos atrás)
Eu uso md5(), porém tenho duas observações a fazer.
Primeiro que o md5 não é criptografia, é hash, ou seja, uma vez feito o md5 de uma string qualquer, é computacionalmente inviável obter a string de volta. Nesse caso, o que faço é guardar no banco de dados o hash para comparação e altenticação de meus usuários.
Em segundo lugar, se você tem seus scripts rodando no servidor e usar a função md5 do php, o que vai acontecer é que a senha vai passear tranquilamente pela rede e só vai ser calculado seu hash no servidor, então com um ataque à sua rede, ficar fácil descobrir, ou seja, onde está a segurança? Então uso uma função em javascript que calcula o md5 pra mim e é o hash que trafega por toda rede.
É isso.

0
05/04/2005 3:24pm
(~11 anos atrás)
Marcos Costa respondeu:
Cara marymolina, concordo com vc quanto à senha trafegar pela rede em "clear text" para só no servidor ser hasheada. Para isso, existem duas opções: isso que vc fez em Javascript ou implementar SSL om certificado digital.
De qualquer forma, poderia me enviar essa sua rotina md5 em javascript???

0
18/03/2010 10:29pm
(~6 anos atrás)
base64 serve apenas para codificar texto (sem segurança).

base85 (ou ascii85) funciona da mesma forma, mas a string resultante é menor (já que utiliza um conjunto maior de caracteres). Fiz uma classe que implementa esta codificação. Está disponível em:
http://www.phpclasses.org/browse/package/4997.html

Para codificar com segurança, pode usar OpenSSL:
http://br2.php.net/manual/pt_BR/book.openssl.php


Nova Resposta:

(Você pode usar tags como <b>, <i> ou <code>. URLs serão convertidas para links automaticamente.)