如何在PHP中保护更多我的md5密码编码

时间:2014-09-26 22:05:57

标签: php hash cryptography passwords md5

我正在寻求保护密码编码的一些建议。在这里我想提一下,我不想使用新的password_hash()api,也不想迁移旧密码,如果我使用了password_hash()api,我必须迁移我的旧用户密码,这不是锣到可能现在。所以这是我的老方法。

function login() {
//the code of getting password from database.......I am skipping this part.....
if(!Check($given_pass,$expected_pass)))  
    //User enter a password in the session as given_pass and expected_pass is the md5 generated hash password stored in database.
    return error('pass error');
return notice('pass success');
}

function Encode($text) {
    return md5(paramtr2Str("conf.cryptographykey").$text);  
    //cryptography key is a random generated string at the server side.
}

function Check($given_pass, $expected_pass) {
    return $expected == Encode($given_pass);
}

我认为我的编码功能是可以破解的,我想通过坚持原始格式来给它一些额外的安全性。

1 个答案:

答案 0 :(得分:1)

您可以使用sha1()加密MD5加密密码。您必须在数据库中再次使用sha1()加密所有用户密码(MD5加密),并在登录页面中使用此sha1(md5($password))检查其密码,并将其与您的数据库进行比较。

这会大大提高您的网站安全性,但无论如何我建议您使用password_hash()