【问题标题】:Generate a Certificate Signing Request for ssl using java program使用 java 程序为 ssl 生成证书签名请求
【发布时间】:2020-06-01 02:04:16
【问题描述】:

我想编写一个程序,可以生成 证书签名请求 包含所有信息,如域名、国家名称、国家组织等。我知道如何使用 open-ssl 生成它 但我只想用 java 程序 生成它。我该怎么做?

感谢您的帮助

【问题讨论】:

  • 也许jwt 就是你在找的东西?
  • 不,我想创建 ssl 证书,为此我想使用任何命令行创建 CSR

标签: java csr


【解决方案1】:

Bouncy castle 提供了您需要的所有工具。

这是生成 CSR 的代码:

    PrivateKey priKey = entry.getPrivateKey(keystore, pwd);
    PKCS10CertificationRequestBuilder p10Builder
            = new JcaPKCS10CertificationRequestBuilder(
                    cert.getSubjectX500Principal(), cert.getPublicKey());
    JcaContentSignerBuilder csBuilder = new JcaContentSignerBuilder(cert.getSigAlgName());
    ContentSigner signer = csBuilder.build(priKey);
    PKCS10CertificationRequest csr = p10Builder.build(signer);
    try (OutputStream stream = new FileOutputStream(file);
            Writer writer = new OutputStreamWriter(stream, "UTF-8");
            JcaPEMWriter out = new JcaPEMWriter(writer)) {
        out.writeObject(csr);
    }

【讨论】:

    猜你喜欢
    • 2020-01-17
    • 1970-01-01
    • 2017-07-13
    • 1970-01-01
    • 1970-01-01
    • 2016-12-04
    相关资源
    最近更新 更多