public static function decrypt($data) { // Don't do anything with empty data $data = trim($data); if (empty($data) || is_string($data) == false && is_numeric($data) == false) { return null; } // Detect data that is not encrypted if (strstr($data, '|=|') == false) { return $data; } $array = explode('|=|', $data); $encrypted = MageBridgeEncryptionHelper::base64_decode($array[0], true); $key = MageBridgeEncryptionHelper::getSaltKey($array[1]); $iv = substr($key, 0, mcrypt_get_iv_size(MCRYPT_CAST_256, MCRYPT_MODE_CFB)); try { $decrypted = mcrypt_cfb(MCRYPT_CAST_256, $key, $encrypted, MCRYPT_DECRYPT, $iv); $decrypted = trim($decrypted); return $decrypted; } catch (Exception $e) { Mage::getSingleton('magebridge/debug')->error("Error while decrypting: " . $e->getMessage()); return null; } }
public static function getSaltKey($string) { return MageBridgeEncryptionHelper::getSaltKey($string); }