public static void main(String[] args) {
        String subjectDN = "CN=duwenlei";
        String algorithm = "";
        try {
            KeyPairGenerator keyPairGenerator = KeyPairGenerator.getInstance("RSA");
            keyPairGenerator.initialize(2048);
            KeyPair keyPair = keyPairGenerator.generateKeyPair();
            algorithm = keyPair.getPrivate().getAlgorithm();
            PKCS10CertificationRequestBuilder builder = new PKCS10CertificationRequestBuilder(new X500Name(subjectDN)
                    ,SubjectPublicKeyInfo.getInstance(keyPair.getPublic().getEncoded()));
            
            JcaContentSignerBuilder jcaBuilder = new JcaContentSignerBuilder("sha1withrsa");
//            jcaBuilder.setProvider(provider); 这里可以添加提供者
            ContentSigner contentSigner = jcaBuilder.build(keyPair.getPrivate());
            builder.build(contentSigner);
            System.out.println(builder.toString());
        } catch (NoSuchAlgorithmException e) {
            e.printStackTrace();
        } catch (OperatorCreationException e) {
            e.printStackTrace();
        }

    }

需要用到的包:bcmail-jdk15-1.46.jar,bcprov-jdk15-1.46.jar,用不到:bctsp-jdk15-1.46.jar

相关文章:

  • 2021-11-29
  • 2021-07-15
  • 2021-10-21
  • 2022-12-23
  • 2021-06-13
  • 2021-11-10
  • 2022-02-26
  • 2022-01-15
猜你喜欢
  • 2021-09-16
  • 2022-12-23
  • 2022-12-23
  • 2022-01-11
  • 2022-12-23
相关资源
相似解决方案