我正在尝试整理一些目前以纯文本格式的API登录。
我目前的想法是通过像md5hashgenerator.com这样的生成器输入密码。我会确保它SHA1
。
然后我会将哈希设置为变量但是解密的正确方法是什么?
答案 0 :(得分:-2)
更新:
此链接非常有助于理解哈希算法的用例。加密算法。 Fundamental difference between Hashing and Encryption algorithms “当你想比较一个值但不能存储普通表示时(出于任何原因),使用哈希函数。密码应该很好地适合这个用例,因为你不想将它们存储为纯文本安全原因(并且不应该)“
“只要你需要输入数据就可以使用加密。请注意需要的字样。如果你要存储信用卡号码,你需要在某些时候让它们退出,但不想存储它们相反,存储加密版本并保持密钥尽可能安全。“
正如评论所述,md5和sha1类型哈希不再安全。使用php的内置密码散列函数。你可以在这里阅读它们http://php.net/manual/en/book.password.php 特别是password_hash()& password_verify()
password_verify的示例用法:
// grab hashed pass from db - to compare against - then perform password_verify() method
if (password_verify($inputPassword, $dbPass)) {
// success
}
其中$inputPassword
是输入登录表单的纯文本密码。
以及password_hash()的示例用法
$hash = password_hash($inputPassword, PASSWORD_BCRYPT);