encode_from_legacy($string[, $legacy_mode = MCRYPT_MODE_ECB[, $key = '']])
Parameters: |
|
---|---|
Returns: |
Newly encrypted string |
Return type: |
string |
Enables you to re-encode data that was originally encrypted with CodeIgniter 1.x to be compatible with the Encrypt library in CodeIgniter 2.x. It is only necessary to use this method if you have encrypted data stored permanently such as in a file or database and are on a server that supports Mcrypt. “Light” use encryption such as encrypted session data or transitory encrypted flashdata require no intervention on your part. However, existing encrypted Sessions will be destroyed since data encrypted prior to 2.x will not be decoded.
Important
Why only a method to re-encode the data instead of maintaining legacy methods for both encoding and decoding? The algorithms in the Encrypt library have improved in CodeIgniter 2.x both for performance and security, and we do not wish to encourage continued use of the older methods. You can of course extend the Encryption library if you wish and replace the new methods with the old and retain seamless compatibility with CodeIgniter 1.x encrypted data, but this a decision that a developer should make cautiously and deliberately, if at all.
$new_data = $this->encrypt->encode_from_legacy($old_encrypted_string);
Parameter | Default | Description |
---|---|---|
$orig_data | n/a | The original encrypted data from CodeIgniter 1.x’s Encryption library |
$legacy_mode | MCRYPT_MODE_ECB | The Mcrypt mode that was used to generate the original encrypted data. CodeIgniter 1.x’s default was MCRYPT_MODE_ECB, and it will assume that to be the case unless overridden by this parameter. |
$key | n/a | The encryption key. This it typically specified in your config file as outlined above. |
Please login to continue.