Codeigniter - Как установить ключ шифрования в config.php - PullRequest
0 голосов
/ 04 сентября 2018

Я прочитал документацию Codeigniter о том, как использовать библиотеку шифрования. Тем не менее, я сомневаюсь в его инициализации, я не уверен, куда мне обратиться в библиотеку и создать ключ. Я попытался инициализировать ключ в config.php, как показано ниже, но я получаю сообщение об ошибке: CI_Controller не найден в core / Codeigniter.php.

$CI =& get_instance();
// Get a hex-encoded representation of the key:
$key = bin2hex($CI->encryption->create_key(16));
$config['encryption_key'] = hex2bin($key);

Ответы [ 2 ]

0 голосов
/ 04 сентября 2018

Чтобы добавить ключ шифрования, необходимо выполнить следующие шаги:

Инициализация класса:

$this->load->library('encrypt');

Ключ должен быть как можно более случайным, и он не должен быть обычной текстовой строкой или выводом функции хеширования и т. Д. Чтобы создать правильный ключ, необходимо использовать метод create_key () библиотеки Encryption

$key = $this->encryption->create_key(16);

Чтобы сохранить ваш ключ в вашем файле application / config / config.php, откройте файл и установите:

$config['encryption_key'] = 'YOUR KEY';

Надеюсь, это работает для вас.

0 голосов
/ 04 сентября 2018

Почему вы не меняете его через контроллер? Вы можете сделать это

function changeEncryption_key(){
    $this->load->library('encryption');
    $key = $this->encryption->create_key(16);
    $key = bin2hex($this->encryption->create_key(16));
    $config['encryption_key'] = hex2bin($key);
}
...