CGI::Application::Plugin::Authentication. Работа с зашифрованными паролями

Как уже говорилось ранее, пароли лучше хранить в зашифрованном виде.

Краткое описание алгоритма:

  1. При создании нового пользователя и пароля доступа для него - введенный пароль сохраняем в зашифрованном виде (pass_from_db).
  2. При аутентификации получаем введенный пользователем пароль (pass_from_user) и шифруем его тем же алгоритмом, что и при сохранении пароля.
  3. Получаем из хранилища зашифрованный пароль (pass_from_db) и сравниваем их между собой. Если оба варианта паролей идентичны - все ок.

 

Работа с зашифрованными паролями при аутентификации

В блоке конфигурации указываем - какой тип шифрования используется для работы с паролями. Введенный пользователем пароль будет зашифрован по указанному алгоритму и после этого, проверен на соответствие хранимому в БД паролю.

CGI::Application::Plugin::Authentication позволяет использовать криптографические алгоритмы - crypt, MD5 (Digest::MD5), SHA1 (Digest::SHA1).

Кроме того, можно использовать и собственные фильтры.

 

Сохранение пароля в БД в зашифрованном виде

Возможно, реализация шифрования пароля при сохранении его в БД получилась не очень красивой, зато она очень удобна как вариант для ленивых.

 

Полезные ссылки

search.cpan.org: CGI::Application::Plugin::Authentication::Driver

search.cpan.org: Список фильтров

search.cpan.org: CGI::Application::Plugin::Authentication::Driver::Filter::md5