douxun1934
2015-09-06 16:19
浏览 21
已采纳

关于PHP的问题password_hash()

I have a few question regarding PHP's password_hash function.

I've noticed that if do

echo password_hash("12345", PASSWORD_DEFAULT);

then I get somethng like

$2y$10$PgMmle9Ue4o3m7ITJcGa0ucmWXSZgqbJBF9I4qd/aqzn/vQIwbi/O

So my questions are

1) Wouldn't the part of $2y$10$ give a hint of what algorythm was used and make it easier for an attacker to know what the original string was?

2) Can I just store the string after $2y$10$ and concatenate it anytime I have to work with the password?

3) Why $2y$10$ is used? Could that change in the future? So in my DB I have passwords with $2y$10$ and some with $2y$25$? and everything would run smoothly using password_verify?

图片转代码服务由CSDN问答提供 功能建议

我有一些关于PHP的 password_hash 函数的问题。 \ n

我注意到如果

  echo password_hash(“12345”,PASSWORD_DEFAULT); 
   
 
 <  p>然后我得到一些像 
 
 
  $ 2y $ 10 $ PgMmle9Ue4o3m7ITJcGa0ucmWXSZgqbJBF9I4qd / aqzn / vQIwbi / O 
   
 
 

所以 我的问题是

1) $ 2y $ 10 $ 的部分不会暗示使用了什么algorythm并让攻击者更容易知道 原始字符串是什么?

2)我可以在 $ 2y $ 10 $ 之后存储字符串,并在我必须使用密码时连接它吗? / p>

3)为什么使用 $ 2y $ 10 $ ? 这会改变未来吗? 所以在我的数据库中,我有 $ 2y $ 10 $ 的密码和一些 $ 2y $ 25 $ 的密码? 并且所有内容都可以使用 password_verify 顺利运行

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

1条回答 默认 最新

相关推荐 更多相似问题