Spring Security中自带的加密方法,采用SHA-256算法 +随机盐+密钥的犯法对密码进行加密可以,无需在数据库中存储盐,每次加密的结果都不一样,保证数据的安全性。
1 、加密
直接new 一个BCryptPasswordEncoder,使用encode方法加密即可。
@Test
void contextLoads() {
BCryptPasswordEncoder bCryptPasswordEncoder = new BCryptPasswordEncoder();
String encode = bCryptPasswordEncoder.encode("123456");
System.out.println(encode);
}
2、加密后验证
使用match方法,传入的两个参数,一个参数是铭文密码,也就是用户输入的密码,另一个参数是加密后的密码,我们可以从数据库取出。
方法返回为Boolean类型,可标识是否完成了密码的匹配。
bCryptPasswordEncoder.matches("123456", encodePass);
方法不难,便捷好用