1.5 KiB
1.5 KiB
aliases | tags | date | zero-link | parents | linked | ||||||
---|---|---|---|---|---|---|---|---|---|---|---|
|
|
|
|
Добавляем зависимость
<dependency>
<groupId>org.mindrot</groupId>
<artifactId>jbcrypt</artifactId>
<version>0.4</version>
</dependency>
Чтобы получить хэш пароля:
String hashedPassword = BCrypt.hashpw(rawPassword, BCrypt.gensalt());
Чтобы проверить введенный пользователем пароль:
// Извлекаете хешированный пароль из базы данных для данного пользователя
boolean isPasswordCorrect = BCrypt.checkpw(rawPassword, hashedPasswordFromDatabase);
// rawPassword - пароль, введённый пользователем при попытке входа
// hashedPasswordFromDatabase - хешированный пароль, извлеченный из базы данных
Этот процесс не зависит от перезапуска приложения. Соль и хеш, которые были созданы при первоначальном хешировании пароля, остаются неизменными в базе данных, и вы используете их каждый раз при аутентификации пользователя, независимо от того, сколько раз приложение было перезапущено.