java使用RSA,公钥加密

2021/4/9 20:29:01

本文主要是介绍java使用RSA,公钥加密,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

import sun.misc.BASE64Decoder;
import javax.crypto.Cipher;
import java.security.*;
import java.security.spec.X509EncodedKeySpec;
import java.util.Base64;
public class RSAUtils {
    //公钥加密
    public static String encrypt(String content, PublicKey publicKey) throws Exception {
        Cipher cipher = Cipher.getInstance("RSA");//java默认"RSA"="RSA/ECB/PKCS1Padding"
        cipher.init(Cipher.ENCRYPT_MODE, publicKey);
        java.util.Base64.Encoder encoder = Base64.getEncoder();
        return encoder.encodeToString(cipher.doFinal(content.getBytes()));
    }
    public static PublicKey getPublicKey(String key) throws Exception {
        byte[] keyBytes;
        keyBytes = (new BASE64Decoder()).decodeBuffer(key);
        X509EncodedKeySpec keySpec = new X509EncodedKeySpec(keyBytes);
        KeyFactory keyFactory = KeyFactory.getInstance("RSA");
        PublicKey publicKey = keyFactory.generatePublic(keySpec);
        return publicKey;
    }
}




这篇关于java使用RSA,公钥加密的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程