我想在CakePHP中爲我的網站編寫密碼重置功能。我試過使用$auth->hashPasswords
,$auth->password
,甚至Security::hash
,但沒有正確的散列它。我試着用foobar的登錄,並指出用來嘗試登錄哈希:cfb9fabf02497f9090cbba6b03da4764212cea407
,cakephp不哈希密碼相同
但復位使foobar的散列到5f4bb4b693725cea09cc7fc20603273f665534d8
。
我在做什麼錯?
我的代碼:
$this->data['Player']['password'] = $this->Auth->password($this->data['Player']['password']);
$this->Player->save($this->data);
我不是一個cakephp用戶,但它聽起來像是使用內部鹽來散列密碼,這將徹底改變散列。 – Crontab 2012-01-05 20:46:41
我相信它會自動散列稱爲'密碼'的字段 - 所以如果你再次散列它,那就會搞砸了。 – Dave 2012-01-05 20:51:00
所以你說一個使用鹽而另一個不是?我檢查了內部代碼,他們看起來像他們應該使用它,但我怎麼能確定? – LordZardeck 2012-01-05 20:51:10