forked from demo/example
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
1.2 KiB
33 lines
1.2 KiB
7 years ago
|
package com.fr.privilege;
|
||
|
|
||
|
import com.fr.privilege.providers.dao.AbstractPasswordValidator;
|
||
|
|
||
|
public class TestPasswordValidatorRSA extends AbstractPasswordValidator {
|
||
|
//@Override
|
||
|
public String encodePassword(String clinetPassword) {
|
||
|
try {
|
||
|
//对密码进行翻转如输入ab翻转后为ba
|
||
|
StringBuffer sb = new StringBuffer();
|
||
|
sb.append(new String(clinetPassword));
|
||
|
String bb = sb.reverse().toString();
|
||
|
//进行加密
|
||
|
byte[] en_test = RSAUtil.encrypt(RSAUtil.getKeyPair().getPublic(), bb.getBytes());
|
||
|
//进行解密,如果数据库里面保存的是加密码,则此处不需要进行解密
|
||
|
byte[] de_test = RSAUtil.decrypt(RSAUtil.getKeyPair().getPrivate(), en_test);
|
||
|
//返回加密密码
|
||
|
clinetPassword = new String(de_test);
|
||
|
} catch (Exception e) {
|
||
|
// TODO Auto-generated catch block
|
||
|
e.printStackTrace();
|
||
|
}
|
||
|
return clinetPassword; //即获取加密密码再与数据库密码匹配。
|
||
|
}
|
||
|
|
||
|
@Override
|
||
|
public boolean validatePassword(String arg0, String arg1) {
|
||
|
// TODO Auto-generated method stub
|
||
|
return false;
|
||
|
}
|
||
|
|
||
|
|
||
|
}
|