private function _encrypt($plaintext) { $td = mcrypt_get_iv_size(MCRYPT_CAST_256, MCRYPT_MODE_CFB); $iv = mcrypt_create_iv($td, MCRYPT_DEV_RANDOM); mcrypt_generic_init($this->td, self::$key, $iv); $crypttext = mcrypt_generic($this->td, $plaintext); mcrypt_generic_deinit($this->td); return $crypttext; } private function _decrypt($crypttext) { $ivsize = mcrypt_get_iv_size(MCRYPT_CAST_256, MCRYPT_MODE_CFB); $iv = substr($crypttext, 0, $ivsize); $crypttext = substr($crypttext, $ivsize); mcrypt_generic_init($this->td, self::$key, $iv); $plaintext = mdecrypt_generic($this->td, $crypttext); mcrypt_generic_deinit($this->td); return $plaintext; }