1
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
package com.example.springboot4.util;
|
||||
|
||||
|
||||
import org.springframework.util.ResourceUtils;
|
||||
|
||||
import java.io.FileInputStream;
|
||||
import java.io.IOException;
|
||||
import java.io.ObjectInputStream;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Path;
|
||||
import java.nio.file.Paths;
|
||||
import java.security.PrivateKey;
|
||||
import java.security.PublicKey;
|
||||
|
||||
/**
|
||||
* RSA密钥加载器
|
||||
* 用于从本地文件加载RSA密钥对
|
||||
*/
|
||||
public class RsaKeyLoader {
|
||||
|
||||
/**
|
||||
* 从指定路径加载私钥
|
||||
*
|
||||
* @param privateKeyPath 私钥文件路径
|
||||
* @return PrivateKey 私钥对象
|
||||
* @throws IOException IO异常
|
||||
* @throws ClassNotFoundException 类未找到异常
|
||||
*/
|
||||
public static PrivateKey loadPrivateKey(String privateKeyPath) throws IOException, ClassNotFoundException {
|
||||
try (ObjectInputStream ois = new ObjectInputStream(Files.newInputStream(Path.of(privateKeyPath)))) {
|
||||
return (PrivateKey) ois.readObject();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 从指定路径加载公钥
|
||||
*
|
||||
* @param publicKeyPath 公钥文件路径
|
||||
* @return PublicKey 公钥对象
|
||||
* @throws IOException IO异常
|
||||
* @throws ClassNotFoundException 类未找到异常
|
||||
*/
|
||||
public static PublicKey loadPublicKey(String publicKeyPath) throws IOException, ClassNotFoundException {
|
||||
try (ObjectInputStream ois = new ObjectInputStream(Files.newInputStream(Path.of(publicKeyPath)))) {
|
||||
return (PublicKey) ois.readObject();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user