【add】添加返回RSA私钥接口
This commit is contained in:
+31
-2
@@ -33,6 +33,7 @@ import org.springframework.web.bind.annotation.*;
|
|||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
import java.security.*;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -118,7 +119,7 @@ public class LoginController {
|
|||||||
// 重试登录次数加一
|
// 重试登录次数加一
|
||||||
retryCount++;
|
retryCount++;
|
||||||
if( retryCount == 1){
|
if( retryCount == 1){
|
||||||
redisUtil.set(RETRY_LOGIN_PREFIX + username,retryCount, 1000 * 60 * 30);
|
redisUtil.set(RETRY_LOGIN_PREFIX + username,retryCount, 60 * 30);
|
||||||
}else {
|
}else {
|
||||||
redisUtil.set(RETRY_LOGIN_PREFIX + username,retryCount,redisUtil.getExpire(RETRY_LOGIN_PREFIX + username));
|
redisUtil.set(RETRY_LOGIN_PREFIX + username,retryCount,redisUtil.getExpire(RETRY_LOGIN_PREFIX + username));
|
||||||
}
|
}
|
||||||
@@ -526,5 +527,33 @@ public class LoginController {
|
|||||||
}
|
}
|
||||||
return Result.OK();
|
return Result.OK();
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* 返回一个RSA公钥
|
||||||
|
* @author 马志朝
|
||||||
|
* @date 2021/4/15 15:01
|
||||||
|
* @param
|
||||||
|
* @return com.jero.common.api.vo.Result<java.lang.String>
|
||||||
|
*/
|
||||||
|
public Result<String> getRSAPublicKey(){
|
||||||
|
KeyPairGenerator keyPairGenerator = null;
|
||||||
|
try {
|
||||||
|
keyPairGenerator = KeyPairGenerator.getInstance("RSA");
|
||||||
|
} catch (NoSuchAlgorithmException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
assert keyPairGenerator != null;
|
||||||
|
KeyPair keyPair = keyPairGenerator.generateKeyPair();
|
||||||
|
// 得到私钥
|
||||||
|
PrivateKey privateKey = keyPair.getPrivate();
|
||||||
|
// 得到公钥
|
||||||
|
PublicKey publicKey = keyPair.getPublic();
|
||||||
|
//base64编码
|
||||||
|
String privateKeyBase64 = Base64.getEncoder().encodeToString(privateKey.getEncoded());
|
||||||
|
String publicKeyBase64 = Base64.getEncoder().encodeToString(publicKey.getEncoded());
|
||||||
|
//存到redis key为公钥 value为私钥
|
||||||
|
redisUtil.set(publicKeyBase64, privateKeyBase64, 60 * 60L);
|
||||||
|
Result<String> result = new Result<>();
|
||||||
|
result.setResult(publicKeyBase64);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user