【问题标题】:How do you create a Certificate Signing Request using the KeyStore on Android?如何在 Android 上使用 KeyStore 创建证书签名请求?
【发布时间】:2016-07-21 13:10:20
【问题描述】:

我正在使用 KeyStore API 在 Android 应用程序中生成 SSL 密钥对。我想从公钥/私钥对创建证书签名请求 (CSR),以便可以将其发送到外部 CA 进行签名。

这可能吗?如果可能的话,我想使用内置的 Android 库而不是 BouncyCastle,以便让 Android 安全地存储密钥。

【问题讨论】:

  • 您是否找到了使用 BouncyCaslte(没有 SpongyCastle)的解决方案?
  • 是的,可以同时使用 BouncyCastle 和 java.security.KeyStore。我必须使用 Android 库创建密钥对,然后在 BouncyCastle 中手动构建证书结构。可以导出生成的 CSR 并进行外部签名,然后使用 keyStore.setCertificateEntry() 将证书导入回 Android KeyStore
  • 我可以使用 SpongyCastle 构建 CSR,但我需要在没有 SC 库的情况下完成。您能否分享如何使用 BouncyCastle 构建 CSR?或者如果可能的话,我如何通过电子邮件与您联系?
  • 这能回答你的问题吗? What is the certificate enrollment process?

标签: java android ssl ssl-certificate pkcs#10


【解决方案1】:

Certificate enrollment process

检查此链接。它生成密钥对和 CSR。 关于在 android 手机上生成 CSR(证书签名请求),我认为使用 Spongycastle 相当简单。它是 Bouncycastle 的 android 端口。

【讨论】:

  • 嗯,我也在找安卓上的创作CSR。你能给我一个例子或链接来参考吗?
  • 您链接到的帖子根本没有提到如何使用 Android KeyStore API,而是在内存中生成密钥,与 KeyStore 相比,这是不安全的。
【解决方案2】:

由于 Android 应用是使用 Java 构建的,因此您可以使用 Java keytool 工具生成 CSR:Request a Signed Certificate from a CA

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-10-26
    • 1970-01-01
    • 1970-01-01
    • 2017-12-27
    • 1970-01-01
    • 1970-01-01
    • 2017-11-02
    相关资源
    最近更新 更多