2015-02-07 50 views
0

我在現有的zend framework 1應用程序中實現登錄功能。我已將zend框架2合併到應用程序中。這是我的問題。用戶登錄zend框架加密協助

我存儲在數據庫中的用戶密碼與加密:

public static function encryptPassword($password) 
{   
    $blockCipher = new BlockCipher(new Mcrypt(array('algo' => 'aes'))); 
    $blockCipher->setKey(core::config(static::CONFIG_NODE_MCRYPT_KEY)); 
    $result = $blockCipher->encrypt($password); 
    return $result;   
} 

現在,我的理解是,當我處理登錄,我基本上可以通過這種方法傳遞提供的密碼,它應該等於數據庫存儲的憑證。

問題是,它沒有這樣做。我得到不同的結果。

任何幫助,將不勝感激。

回答

1
  1. 加密的定義是可解密的,所以在我的書中,你不應該存儲加密的密碼,但散列!鏈接閱讀:http://php.net/manual/en/faq.passwords.php。所以你應該這樣做:$ passwod = hash(「sha256」,$ password。$ salt); 這會給你64個字符的密碼...

好運

+0

這是一個正確的答案?如果是請選擇它... – 2015-02-07 16:20:07