Proteger senha do banco
Sou iniciante em PHP.
E no PHP tem uma coisa que me incomoda e preocupa que é como proteger as senhas de acesso ao banco de dados.
Trabalhamos com uma classe de conexão e dentro dessa classe temos os dados necessários pra conexão com o banco
Qual seria a melhor e mais confiável forma de estar protegendo esses dados de acesso ?
E no PHP tem uma coisa que me incomoda e preocupa que é como proteger as senhas de acesso ao banco de dados.
Trabalhamos com uma classe de conexão e dentro dessa classe temos os dados necessários pra conexão com o banco
<?php class Conexao extends PDO { private $dsn = "firebird:dbname=10.0.0.1:Banco"; private $user = 'SYSDBA'; private $password = "123"; public $handle = null; function __construct() { try { if ( $this->handle == null ) { $dbh = parent::__construct( $this->dsn , $this->user , $this->password ); $this->handle = $dbh; return $this->handle; } } catch ( PDOException $e ) { echo 'Connection failed: ' . $e->getMessage( ); return false; } } function __destruct( ) { $this->handle = NULL; } }
Qual seria a melhor e mais confiável forma de estar protegendo esses dados de acesso ?
Felipe Ribeiro
Curtidas 0
Respostas
Bruno Betioli
03/10/2012
Eu nunca precisei usar isso ainda, por isso não posso ajudar mais do que lhe passar este link.
http://www.linhadecodigo.com.br/artigo/1749/tutorial-criptografando-senhas-em-php.aspx
Diga-nos se lhe ajudou e se possível mostre o resultado para dividirmos conhecimento
Abraços
http://www.linhadecodigo.com.br/artigo/1749/tutorial-criptografando-senhas-em-php.aspx
Diga-nos se lhe ajudou e se possível mostre o resultado para dividirmos conhecimento
Abraços
GOSTEI 0
Eduardo Oliveira
03/10/2012
Pra esses casos no script não sei se irá funcionar você criptografa-los, pois pense em como seu banco de dados vai validar essa sua senha caso você faça isso no seu script? Utilizando o link passado acima, você também colocaria a senha de maneira explicita, pois essa senha só seria criptografada quando a função fosse executada ou seja passar a senha assim no seu script :
$senha = md5('123');
ou assim
$senha = 123;
Visualmente, é o mesmo pois seus dados continuam expostos, porém da primeira forma ao executar ele converteria para md5 o conteudo passado.
Se não quer deixar a senha exposta de maneira explicita no seu script, ao criar sua base de dados, no momento que for pedido a senha criptografe-a, existem diversos serviços na net que convertem uma string para md5, base_encode, entre outras, escolha uma e utilize-a tanto na criação de seu banco, como no seu script. Eu recomendaria md5 por ser de mão unica, se utilizar base64_encode pode-se saber o seu valor usando base64_decode. Espero ter sido claro.
Abraço
$senha = md5('123');
ou assim
$senha = 123;
Visualmente, é o mesmo pois seus dados continuam expostos, porém da primeira forma ao executar ele converteria para md5 o conteudo passado.
Se não quer deixar a senha exposta de maneira explicita no seu script, ao criar sua base de dados, no momento que for pedido a senha criptografe-a, existem diversos serviços na net que convertem uma string para md5, base_encode, entre outras, escolha uma e utilize-a tanto na criação de seu banco, como no seu script. Eu recomendaria md5 por ser de mão unica, se utilizar base64_encode pode-se saber o seu valor usando base64_decode. Espero ter sido claro.
Abraço
GOSTEI 0
Alisson Santos
03/10/2012
Sem duvida o uso de criptografia.
Mas utilizar uma cryptografia md5 sha1 e quando criar a senha colocar pelomenos um caracter especial para dar certo.
Caso não faça isso não resolverá.
Mas utilizar uma cryptografia md5 sha1 e quando criar a senha colocar pelomenos um caracter especial para dar certo.
Caso não faça isso não resolverá.
GOSTEI 0