PHP:password_hash() 是否检查生成的散列是否唯一? (理解!)
PHP: Does password_hash() check if the hash generated is unique? (Understanding!)
简单的问题,因为我在 google 上没有找到真正有用的答案:password_hash() 函数是否也检查用户数据文件中是否已经生成了这样的哈希值?
我基本上明白了这个函数在做什么,但我对 php 还很陌生,所以我无法真正看到是否检查了密码的唯一性。
请在此处对这个菜鸟问题保持温和。我只是想了解我在那里使用的是什么,而不仅仅是因为我在大学的练习 sheet 告诉我如此。
不,它不检查唯一性。
没有
两个原因:
- 该函数不会知道任何有关 "other" 密码的信息。
- 你不想要这个。如果你打了一个副本,你会怎么做?告诉用户?然后他会知道某人的密码。
password_hash() 函数的设计方式是极不可能重复的,因此从开发人员的角度来看,理论上两个哈希值可能相同是无关紧要的。
由于 password_hash() 函数的属性以及它为每个密码生成随机盐...
- 该函数生成重复的几率非常小,即使两个用户使用相同的密码,该函数也会生成不同的哈希值
- 无论如何都无法搜索哈希,您需要另一个搜索关键字,例如用户名,因此重复也不是问题。
简单的问题,因为我在 google 上没有找到真正有用的答案:password_hash() 函数是否也检查用户数据文件中是否已经生成了这样的哈希值? 我基本上明白了这个函数在做什么,但我对 php 还很陌生,所以我无法真正看到是否检查了密码的唯一性。
请在此处对这个菜鸟问题保持温和。我只是想了解我在那里使用的是什么,而不仅仅是因为我在大学的练习 sheet 告诉我如此。
不,它不检查唯一性。
没有
两个原因:
- 该函数不会知道任何有关 "other" 密码的信息。
- 你不想要这个。如果你打了一个副本,你会怎么做?告诉用户?然后他会知道某人的密码。
password_hash() 函数的设计方式是极不可能重复的,因此从开发人员的角度来看,理论上两个哈希值可能相同是无关紧要的。
由于 password_hash() 函数的属性以及它为每个密码生成随机盐...
- 该函数生成重复的几率非常小,即使两个用户使用相同的密码,该函数也会生成不同的哈希值
- 无论如何都无法搜索哈希,您需要另一个搜索关键字,例如用户名,因此重复也不是问题。