一.Spring Security安全框架实现密码加密方法简述
1.首先:Spring Security提供了强大的加密工具PasswordEncoder,PasswordEncoder接口的代码如下:
package org.springframework.security.crypto.password;
public interface PasswordEncoder {
String encode(CharSequence var1);//是是对密码加密的方法
boolean matches(CharSequence var1, String var2);//是用来验证密码和加密后密码是否一致的如果一致则返回true
}
2.其次:Spring Security提供了BCryptPasswordEncoder类,该类实现了Spring的PasswordEncoder接口,使用BCrypt强哈希方法来对密码进行加密,通过BCrypt强哈希方法每一次加密的结果都不一样:可以看看示例加密后的密码,需要说明的是这两种加密后的密码,其明文密码都是:123
3.加密的代码,可以看到每次加密产生的都是随机字符串:
public String encode(CharSequence rawPassword) {
String salt;
if (this.strength > 0) {
if (this.random != null) {