在我的自定義配置,我有這樣一行:Codeigniter對相同字符串的不同結果進行編碼/解碼。正常?
$config['encryption_key_posts'] ='vfy9SbKO!drtzwHkOvD46hGFedzaw3$l';
在自定義庫中我有:
class MyEncryption {
public $_CI;
public function __construct() {
$this->_CI = & get_instance();
$this->_CI->encrypt->set_cipher(MCRYPT_BLOWFISH);
$this->_CI->encrypt->set_mode(MCRYPT_MODE_CBC);
}
function encode($str, $key) {
return $this->_CI->encrypt->encode($str, $key);
}
function decode($str, $key) {
return $this->_CI->encrypt->decode($str, $key);
}
}
我使用它是這樣的:
encode($_POST['post_title'],config_item('encryption_key_posts'))
和
decode($this->data['post']->post_title,config_item('encryption_key_posts'))
我正在測試它與相同的post_title ='測試',我總是得到不同的結果,如:
Gk16w123clh3RZdYbGZc8g==
L64cWTVSaxWf8xGVVCRbyQ==
Ox2H4xAizS9lsKEQHzxRgg==
這是正常的嗎?如果我將來轉移到另一臺服務器上,我會遇到任何問題嗎?
爲什麼要在編碼是什麼?我認爲這是以防數據庫落入壞人之手的額外的安全層的目的是什麼?... – 2013-04-10 05:21:59
。這些是私人帖子,不公開。當然,我要去編碼後身體也,不僅標題:) – e4rthdog 2013-04-10 05:23:27
我不知道它是否正確。我正在使用base64_encode在URL中編碼我的字符串.........但它對我的使用是安全的。我不知道這種情況..... – 2013-04-10 05:29:16