Php 这个密码能更安全吗?
如何使密码更安全,我当前的代码是:Php 这个密码能更安全吗?,php,mysql,Php,Mysql,如何使密码更安全,我当前的代码是: 有没有一种方法可以在不牺牲大量资源的情况下使这一点更加安全 如通过SHA512或其他方法?您可以将算法更改为使用SHA512或河豚 看 您还可以考虑在用户创建帐户(或更新密码)时为每个用户生成一个唯一的salt,这将在发现salt时将风险限制在单个帐户上。您可以将算法更改为使用SHA512或Blowfish 看 您还可以考虑在每个用户创建其帐户(或更新其密码)时为其生成唯一的salt,这将在发现salt时将风险限制在单个帐户上。md5()-计算字符串的md
有没有一种方法可以在不牺牲大量资源的情况下使这一点更加安全
如通过SHA512或其他方法?您可以将算法更改为使用SHA512或河豚 看
您还可以考虑在用户创建帐户(或更新密码)时为每个用户生成一个唯一的salt,这将在发现salt时将风险限制在单个帐户上。您可以将算法更改为使用SHA512或Blowfish 看 您还可以考虑在每个用户创建其帐户(或更新其密码)时为其生成唯一的salt,这将在发现salt时将风险限制在单个帐户上。md5()-计算字符串的md5哈希值 哈希()-生成哈希值(消息摘要) uniqid()-生成唯一的ID 增加: sha1()-计算字符串的sha1哈希 请参见md5()-计算字符串的md5哈希值 哈希()-生成哈希值(消息摘要) uniqid()-生成唯一的ID 增加: sha1()-计算字符串的sha1哈希
只需看看使用hash_hmac比普通hash(md5/sha等)更好 虽然我不明白你用$U盐。如果每次生成一个新的salt,它将如何与数据库中的密码匹配 好的,如果动态盐是按用户存储的
$newRequesterPass = hash_hmac('sha256', $newRequesterPass, $dynamic_salt.$static_salt);
使用hash_hmac比普通散列(md5/sha等)更好 虽然我不明白你用$U盐。如果每次生成一个新的salt,它将如何与数据库中的密码匹配 好的,如果动态盐是按用户存储的
$newRequesterPass = hash_hmac('sha256', $newRequesterPass, $dynamic_salt.$static_salt);
除了建议使用更强大的散列之外,安全密码管理还涉及到管理代码,它不仅仅以salted+散列形式存储密码。你做了多少取决于应用程序的业务需求,但是考虑以下内容:
更新:请澄清,不要尝试使用自己的工具进行会话管理或密码散列。除非您是真正的专家,否则请使用标准工具。除了建议使用更强大的散列之外,安全密码管理还包括管理代码,其作用不仅仅是将密码存储在salt+散列形式。你做了多少取决于应用程序的业务需求,但是考虑以下内容:
更新:请澄清,不要尝试使用自己的工具进行会话管理或密码散列。除非您是真正的专家,否则请使用标准工具。您所掌握的只是“隐蔽性安全”——一种创建密码哈希的非常复杂的方法 如果您对有人破坏您的数据库和破解哈希感到烦恼,您应该使用bcrypt 如果你不是,那么使用一些标准的东西(md5很流行)——这只提供表面上的防裂保护 请注意,需要有人破坏您的数据库,才能以这种方式进行字典或暴力攻击
我强烈建议你不要自己“发明”加密算法,要使它们正确(或至少使它们安全)是非常困难的。你所得到的只是“隐蔽的安全”——一种创建密码散列的非常复杂的方法 如果您对有人破坏您的数据库和破解哈希感到烦恼,您应该使用bcrypt 如果你不是,那么使用一些标准的东西(md5很流行)——这只提供表面上的防裂保护 请注意,需要有人破坏您的数据库才能使用字典