аутентификация на графическом приложении, написанном на Perl - PullRequest
5 голосов
/ 28 мая 2010

Это не конкретный Perl вопрос Я строю приложение perl gui / wxperl, которое подключается к БД. Я хочу, чтобы мое приложение было защищено паролем, т.е. сначала пользователь должен ввести имя пользователя и пароль, а затем использовать приложение.

Каков наилучший безопасный способ хранения пароля? Может ли кто-нибудь дать представление о том, как лучше всего хранить данные о пользователе и пароле и как их получить для аутентификации? если возможно кто-нибудь может предоставить какой-нибудь perl-код, как это сделать?

1 Ответ

9 голосов
/ 28 мая 2010

Вы определенно не хотите сохранять пароли в виде простого текста, вам, вероятно, стоит взглянуть на использование sha256. Вы можете использовать Perl мод Digest :: SHA (см. CPAN для документации).

use Digest::SHA qw(sha256);
my $digest = sha256($input_password);
my $saved_digest_password = get_saved_password_for_user($input_user);
if ($digest eq $saved_digest_password){
    # they have the correct password
}

Это просто псевдокод, но он должен помочь вам начать. Вы можете определить «get_saved_password_for_user», как хотите, независимо от того, хранится ли он где-нибудь в базе данных, в файловой системе или где-то еще. Просто убедитесь, что вы нигде не сохраняете и не записываете $ input_password. Единственное, что вам нужно сохранить, это пароль $ digest.

Надеюсь, это поможет!

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