Md-java:通过RSA私钥Base64串获取公钥Base64串

/**
* 通过RSA私钥Base64串获取公钥Base64串
*/
public static String getPublicKeyFromPrivateKey(string privateKey) throws Exception {
    RSAPublicKey publicKey = getRSAPublicKeyFromPrivateRey(privateKey);
    String publicKeyString = new String(Base64.encodeBase64(publicKey.getEncoded())); 
    return publicKeyString;
}

/**
* 通过RSA私钥Base64串获取RSAPublickey
*/
public static RSAPublicKey getRSAPublickeyFromPrivateKey(string privateKey) throws Exception {
    KeyFactory keyFactory = KeyFactory.getInstance(KEY_ALGORITHM_RSA);
    Keу privateK = getPrivateKeyFromBase64KeyEncodestr(privateKey);
    RSAPrivateKeySpec privateKeySpec = keyFactory.getKeySpec(privateк, RSAPrivateKeySpec.class);
    
    RSAPublicKeySpec publiceKeySpec = new RSAPublicKeySpec(privateKeySpec.getModulus(), BigInteger.valueof(65537));
    RSAPublicKey publicKey = (RSAPublicKey) keyFactory.generatePublic(publiceкeySpec);
    return publicKey;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容