Существует ли такая вещь, как безопасное шифрование пароля на стороне клиента? - PullRequest
1 голос
/ 25 сентября 2011

Клиентское шифрование пароля пользователя - >>

Я искал ответ на свой вопрос на этом сайте, но в моем вопросе нет ничего конкретного, и мне было интересно, может ли кто-нибудь пролить немного света.

* ВОПРОС *** Было бы возможно (и безопасно), если бы я должен был зашифровать пароль пользователя на стороне клиента, используя введенный пользователем пароль в форме входа в качестве пароля для зашифрованного файла, а затем отправить файл на сторону сервера. Единственный способ дешифровать этот файл - использовать административный пароль (второй пароль), который известен только стороне сервера, а это означает, что даже пользователь не сможет его дешифровать.

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

Или, возможно, вместо того, чтобы использовать пароль, введенный пользователем, для расшифровки - скажем, Javascript для создания случайного () пароля?

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

Ответы [ 4 ]

1 голос
/ 25 сентября 2011

Использование одного пароля для шифрования и другого пароля для расшифровки называется Криптография с открытым ключом (PKI)

Но если вы используете его, то нет необходимости отправлять ключ шифрования на сервер в качестве «открытого» ключа, используемого для шифрования данных, и только «закрытый» ключ может его расшифровать.

Реализация PKI в Javascript будет большим проектом.

Возможно, вы захотите перефразировать ваш вопрос, это немного сбивает с толку.

1 голос
/ 25 сентября 2011

Если вы не используете HTTPS и SSL, это небезопасно, поскольку злоумышленник может превентивно заменить ваш Javascript на вредоносный Javascript, который отправляет пароль пользователя на злой сервер, а затем делает все остальное в обычном режиме.

0 голосов
/ 11 октября 2012
0 голосов
/ 25 сентября 2011

Вы можете хранить свой пароль как односторонний хэш (например, MD5).Затем на стороне клиента введите MD5 пароль и отправьте его в базу данных ..

...