RSA加密算法简单应用
最近工作要用到rsa加密算法,现在简单把做的实现介绍下,具体算法原理等自行搜索
代码实例
加密过程
// 直接从文件加载证书certificate
public static Certificate loadCertificate(String certPath, String certPass)
throws CertificateException, FileNotFoundException {
// 证书格式为X509
CertificateFactory certificateFactory = CertificateFactory.getInstance("X.509");
// 读取证书文件的输入流
InputStream in = new FileInputStream(certPath);
Certificate certificate = certificateFactory.generateCertificate(in);
return certificate;
}
// 获取公钥PublicKey
public static PublicKey getPublicKey(Certificate certificate) {
return certificate.getPublicKey();
}
//公钥加密
public static byte[] asymmetricEncrypt(String transformation, byte[] plainText, PublicKey key)
throws InvalidKeyException, NoSuchAlgorithmException, NoSuchPaddingException, IllegalBlockSizeException,
BadPaddingException {
Ci