Как использовать MD5 в JavaScript для передачи пароля

У меня есть диалоговое окно jQuery модальное всплывающее окно поля для того, чтобы войти в мой веб-сайт. Когда пользователь нажимает вход в систему, он делает запрос сообщения в login.php файл следующим образом:

$.post(
      'includes/login.php', 
      { user: username, pass: password },
      onLogin, 
      'json' );

Как я делаю md5 на том пароле прежде, чем поместить его в запрос сообщения? Кроме того, мне сохранили пароли пользователя в базе данных MySQL с помощью MD5 (), таким образом, я хотел бы просто сравнить сохраненную версию пароля с MD5 отправленного пароля. Благодаря любому, который отвечает.

23
задан bluish 29 April 2011 в 08:11
поделиться

3 ответа

crypto-js - богатая javascript-библиотека, содержащая множество криптографических алгоритмов.

Все, что вам нужно сделать, это просто позвонить CryptoJS. MD5(password)

$.post(
  'includes/login.php', 
  { user: username, pass: CryptoJS.MD5(password) },
  onLogin, 
  'json' );
30
ответ дан 29 November 2019 в 00:44
поделиться

Возможно, вы захотите проверить эту страницу: http://pajhome.org.uk/crypt/md5/

Однако, если защита пароля важна, вам действительно следует использовать что-то вроде SHA256 (MD5 не является криптографически безопасным iirc). Более того, вы можете подумать об использовании TLS и получении сертификата, чтобы можно было использовать https.

.
5
ответ дан 29 November 2019 в 00:44
поделиться

Если кто-то прослушивает ваш HTTP-трафик с открытым текстом (или кэш/куки) для поиска паролей, то просто превратить пароль в хэш не поможет - хэш-пароль может быть "проигран" так же хорошо, как и обычный текст. Клиенту нужно будет хэшировать пароль чем-нибудь случайным (например, датой и временем). См. раздел "AUTH CRAM-MD5" здесь: http://www.fehcom.de/qmail/smtpauth.html

29
ответ дан 29 November 2019 в 00:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: