При разработке различных систем приложений часто требуется информация пользователя, а пароли пользователей хранятся во многих местах. Очевидно, небезопасно хранить пароли пользователей непосредственно на сервере. В этой статье кратко представлены общепринятый алгоритм шифрования MD5 в работе, надеясь привлечь внимание.
(I) Резюме новостей введение
Дайджест сообщения - это цифровой отпечаток пальца блока данных. То есть, блок данных любой длины рассчитывается для создания уникального отпечатка пальца (для SHA1 он должен создать 20-байтовый двоичный массив). Сообщение Digest - это метод, используемый в сочетании с кодом аутентификации сообщений для обеспечения целостности сообщения. В основном используется односторонний алгоритм хэш-функции, который можно использовать для проверки целостности сообщений и сохранить их непосредственно в текстовых паролях. В настоящее время широко используемые алгоритмы включают MD4, MD5 и SHA-1.
Дайджест сообщения обладает двумя основными свойствами:
Два разных сообщения трудно генерировать один и тот же дайджест
Трудно сгенерировать сообщение для указанного дайджеста, и указанный дайджест может быть выведен из сообщения.
Представители: SHA1 Национального института стандартов и технологий и MD5 от Ronald Rivest of MIT
(Ii) шифровать строку
/**Use MD5 for encryption* @param str String to be encrypted* @return Encrypted string* @throws NoSuchAlgorithmException There is no such algorithm to generate message digest* @throws UnsupportedEncodingException */ public String EncoderByMd5(String str) throws NoSuchAlgorithmException, UnsupportedEncodingException{ // Определите метод расчета MOSSAGEDIGEST MD5 = MOSSAGEDIGEST.GETINSTANCE ("MD5"); Base64encoder base64en = new base64encoder (); // зашифрованная строка newsstr = base64en.encode (md5.digest (str.getbytes ("utf-8"))); вернуть Newsstr; } Вызов функции:
String str = "0123456789"
System.out.println (encoderbymd5 (str));
Вывод: EB5EJF1PTWAXM4BIJSPYXW ==
(Iii) Убедитесь, правильным ли пароль
Поскольку MD5 основан на принципе расщепления сообщений, основная особенность дигтеса сообщений заключается в том, что трудно рассчитать сообщения сообщений на основе дайджеста. Следовательно, чтобы проверить, является ли пароль правильным, необходимо провести повторную оценку пароля ввода (сообщение сообщения) и сравнить его с дайджестом, хранящимся в базе данных (то есть дигест, хранящийся в базе данных, на самом деле является паролем пользователя). Если два дайджеста одинаковы, это означает, что пароль правильный, и это означает, что это означает, что пароль неверен.
/ ** Судите, является ли пароль пользователя правильным* @param newpasswd Пароль, введенный пользователем* @param oldpasswd, хранящийся в базе данных - - Сводка пароля пользователя* @return* @Throws noSuchAlgoritHmexcept Unsupportedencodingexception {if (encoderbymd5 (newpasswd). Equals (oldpasswd)) вернуть true; иначе вернуть ложь; }PS: Что касается технологии шифрования, этот сайт также предоставляет следующие инструменты шифрования для вашей ссылки:
Инструмент онлайн -шифрования MD5: http://tools.vevb.com/password/createmd5password
Инструмент Escape Encry Encryption/Decryption: http://tools.vevb.com/password/escapepwd
Инструмент шифрования SHA1 онлайн: http://tools.vevb.com/password/sha1encode
Короткая ссылка (короткий URL) Инструмент онлайн -генерации: http://tools.vevb.com/password/dwzcreate
Короткая цепочка (короткий URL) Инструмент восстановления онлайн: http://tools.vevb.com/password/unshorturl
Генератор с высокой силой паролей: http://tools.vevb.com/password/createstrongpassword
Выше всего содержание этой статьи. Я надеюсь, что это будет полезно для каждого обучения, и я надеюсь, что все будут поддерживать Wulin.com больше.