数据库连接密码加密?

时间:2015-07-17 14:43:50

标签: php mysql database encryption passwords

愚蠢的问题,但我在Xampp之前只编写了数据库,因此黑客攻击不是问题...

我想连接到我的数据库并在网页上显示数据。

$username = "user";
$password = "password???";
$hostname = "host.name";

//db connection
$dbhandle = mysql_connect($hostname, $username, $password)
or die("Can't connect");
echo "Connected to MySQL<br>";

我不太确定我想在线宣传我的数据库密码;我猜测我可以用某些东西加密它(之前我只使用过md5,我现在发现这不是一种有效的方法)。

有人可以在这里发光吗?我一直在寻找一个小时,似乎找不到多少。

2 个答案:

答案 0 :(得分:1)

您可以使用环境变量或仅包含配置/常量文件来执行此操作,然后您可以将配置设置与您的主要来源隔离开来。

环境变量

http://php.net/manual/en/function.getenv.php

配置/约束

<?php
    // require 'constants.php'
    define("DB_USER", "user");
    define("DB_PASS", "password");
    define("DB_NAME", "database");

http://php.net/manual/en/function.define.php

我不会加密您的数据库值。

答案 1 :(得分:0)

以纯文本格式存储密码确实没有问题,因为用户看不到PHP代码。除非存在安全漏洞,否则未经授权的数据库访问将是最不容易的问题,您真的不需要打扰。

但是,我强烈建议unset()变量后不再需要敏感数据。这消除了潜在信息泄漏的风险,例如,不安全的模板渲染。