使用php和mysql登录md5哈希

时间:2012-02-18 18:15:18

标签: php mysql hash passwords md5

我收到了一个包含大约450个用户名和密码的excel文件(密码用MD5哈希编码) 如何将这个excel(.xls)文件放入我的MySQL数据库和网站(php端)如何检查用户输入的密码是否是正确的密码(我对使用MD5或任何哈希密码散列密码一无所知)该事项的顺序)

3 个答案:

答案 0 :(得分:3)

1.-您可以将Excel文件导出为CSV文件 2.-使用phpmyadmin将CSV文件导入您的网站 3.-检查密码:

if (md5($_POST['user_password']) == $db['user_password'])
{
    echo 'welcome back bro!'
}

答案 1 :(得分:2)

md5密码可以“加盐”以提供额外的安全性。

如果没有盐渍:

  • ?php md5(ClearTextPassord)== $ passwordInExcel

如果是盐,这种盐可能是全局的(对所有帐户都相同),或者部分是个体的(在计算散列时会提供一些帐户数据。

示例:

  • 全球:<?php md5(onceTypedPassword . $globalSalt)
  • 全球和个人:<?php oncedTypedPassword . $globalSalt . $userRec['Firstname'])
  • ..其他方法也可以..

如果哈希被盐腌你需要盐。

答案 2 :(得分:2)

http://www.ibm.com/developerworks/opensource/library/os-phpexcel/将帮助您将excel文件中的密码存储到mysql数据库,md5 documentation非常有帮助。

您可以从数据库中获取给定用户名的密码,并使用以下内容进行检查:

$username = mysql_real_escape_string( $username_user_gave )
$query = "SELECT * FROM users WHERE username = '$username' LIMIT 1;";
$result = mysql_query( $query ) or die('Could not perform query');
if( mysql_affected_rows != 1 ){
    // user not found
    }
$row = mysql_fetch_array( $result );
$stored_password = $row['password'];
$given_password = md5( $password_user_gave );
if( $stored_password == $given_password ){
    //everything ok
    }
else{
    //incorrect password
    }