簡體   English   中英

有沒有辦法檢索具有特定密碼的所有用戶

[英]Is there a way to retrieve all users that have a particular password

我正在使用Laravel的哈希功能將加密的密碼存儲在表中。

我知道我可以使用Hash::check函數檢查普通密碼是否與加密密碼匹配,但是有一種方法可以從數據庫中檢索具有給定密碼的所有用戶,而無需實際獲取所有用戶,然后比較每個人的密碼使用Hash::check函數?

編輯

用例是我想知道有多少用戶使用給定的密碼。

並非沒有獲取所有用戶並逐一檢查每個用戶。 Laravel的密碼哈希使用bcrypt (PHP的本機password_hash / password_verify )經過專門設計,使這種事情難以做到(出於安全性/保護性 )-每次使用不同的鹽,因此即使兩個哈希都不相同如果密碼相同。

我不知道Laravel的哈希中是否有這樣的功能,但似乎不太可能,因為根據定義,哈希與普通密碼沒有1-1關系。

我的意思是,多個密碼可以具有相同的哈希值,並且如果Laravel Hashing使用Salt(很可能是因為它是一種基本的安全模式),那么相同的密碼甚至不會對所有用戶都具有相同的哈希值。

不太可能具有這樣的功能,但是如果有的話,您可以確定它的幕后功用與您所說的完全相同:循環用戶並在每個用戶上使用Hash :: check。 因為哈希是故意設計的,所以這樣做是唯一的方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM