在进行RSA加密的时候,报异常,具体错误信息:
Exception in thread "main" java.security.spec.InvalidKeySpecException: java.security.InvalidKeyException: IOException : algid parse error, not a sequence
解决办法:
在CerUtil工具初始化的时候添加 BC provider
static {
init();
addProvider();//向系统添加BC provider
}
/**
* 添加签名,验签,加密算法提供者
*/
private static void addProvider(){
if (Security.getProvider("BC") == null) {
LogUtil.info("add BC provider");
Security.addProvider(new BouncyCastleProvider());
} else {
Security.removeProvider("BC");
Security.addProvider(new BouncyCastleProvider());
LogUtil.info("re-add BC provider");
}
}