Java读取OpenSSL实现生成PEM公钥文件的操作
发布时间:2020-10-29 22:35:18
来源:亿速云
阅读:66
作者:Leah
本篇文章给大家分享的是有关Java读取OpenSSL实现生成PEM公钥文件的操作,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
代码如下:
@Service
class SignService {
private static Logger LOG = LoggerFactory.getLogger(SignService.class);
@Autowired
private Config config;
private Signature signature;
@PostConstruct
private void init() {
try {
PKCS8EncodedKeySpec priKeySpec = new PKCS8EncodedKeySpec(
getDecoder().decode(config.getPrivateKey().getBytes(ISO_8859_1)));
KeyFactory factory = KeyFactory.getInstance("RSA");
PrivateKey privateKey = factory.generatePrivate(priKeySpec);
signature = Signature.getInstance("SHA1WithRSA");
signature.initSign(privateKey);
} catch (NoSuchAlgorithmException |
/*InvalidAlgorithmParameterException |*/
InvalidKeySpecException |
InvalidKeyException ex) {
LOG.warn("RSA init error: {}.", ex);
}
}
String signAndEncode(String source) {
if (Objects.isNull(source)) {
return null;
} else {
return sign(source)<