我正在使用Spring MVC,我想加密以dB为单位保存的密码,我查看了其他线程,他们建议使用MD5。使用MD5是一个好习惯还是在Spring中有任何其他方法来实现它?
答案 0 :(得分:1)
您可以使用BCryptPasswordEncoder
对密码进行编码,为此,您需要创建此类的bean。
@Bean
public PasswordEncoder passwordEncoder() {
return new BCryptPasswordEncoder();
}
在向用户注册(将新用户保存到数据库)时,您可以自动连接PasswordEncoder
并调用encode
方法对密码进行编码
@Autowired PasswordEncoder passwordEncoder;
public User registerUser(User user){
// other logic
String encryptedPassword = passwordEncoder.encode(user.getPassword());
user.setPassword(encryptedPassword);
//logic to save the user to DB
}
答案 1 :(得分:0)
没有;使用BCrypt - 在Spring中可用BCryptPasswordEncoder
。
答案 2 :(得分:0)
您能否澄清一下您是在寻找Spring Security还是Spring MVC?你的问题标题是“”Spring MVC中的密码加密,而你已经标记了Spring Security的问题。
Spring安全建议使用以下内容 org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder