Функция декодирования в codeigniter не работает - PullRequest
0 голосов
/ 19 мая 2018

Я сделал код в codeigniter для страницы входа, где вводятся имя пользователя и пароль.После нажатия кнопки «Отправить» пароль выбирается из базы данных и декодируется, но дешифрованный пароль не является исходным паролем.

Показывает другой пароль с различными символами, но не оригинальный пароль.

$this->encrypt->decode($row['password'], ENC_KEY) 

не дает оригинальный пароль.Я установил encryption_key в файле конфигурации и также назвал библиотеку шифрованием.

Но функция декодирования по-прежнему не отображает исходный пароль.почему это так?

Я дал конструктор в файле контроллера как:

public function __construct() 
{
  parent::__construct();
  $this->load->library('encrypt');
  $this->load->library('session');
  $this->load->model("loginmodel");
}

1 Ответ

0 голосов
/ 19 мая 2018

Надеюсь, что это поможет вам:

Первый способ с использованием ключа шифрования конфигурации

использование $this->config->item('encryption_key') чтобы получить ключ шифрования конфигурации

$msg = 'password';
$key = $this->config->item('encryption_key');
$encrypted_data = $this->encrypt->encode($msg,$key);
echo $encrypted_data.PHP_EOL;

$original = $this->encrypt->decode($encrypted_data,$key);
echo $original;

Второй : используйте собственный ключ, если не хотите использовать ключ шифрования конфигурации

$msg = 'password';
$key = 'mykey';
$encrypted_data = $this->encrypt->encode($msg,$key);
echo $encrypted_data.PHP_EOL;

$original = $this->encrypt->decode($encrypted_data,$key);
echo $original;

Для получения дополнительной информации: https://www.codeigniter.com/user_guide/libraries/encrypt.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...