java生成keystore,.crt .key证书导出(好文章!!清晰)

194 篇文章 18 订阅
27 篇文章 2 订阅

为完全验证;

最近项目中需要将restful接口统一为https,需要一些证书,如tomcat需要keystore(jks)开启https,有些则需要.crt,.key证书文件。经过一番折腾终于搞定,现将关键步骤记录如下:

1.通过jdk工具生成keystore(jks)文件

设置自签口令

keytool -genkey -keyalg RSA -alias selfsigned -keystore keystore.jks -storepass password -validity 360 -keysize 2048

 

2.转换为p12

输入新密钥库口令(至少6位)

源秘钥库口令若未设置为空,直接回车

输入自签口令(至少6位)

keytool -importkeystore -srckeystore keystore.jks -destkeystore keystore.p12 -deststoretype PKCS12

 

3.使用openssl命令导出.crt

openssl pkcs12 -in keystore.p12 -nokeys -out my_key_store.crt

4.使用openssl命令导出.key

openssl pkcs12 -in keystore.p12 -nocerts -nodes -out my_store.key

 

 

 

原文:https://blog.csdn.net/u011411069/article/details/79994716

 



转载自:https://www.jianshu.com/p/84f71e2393e9
 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于这个问题,我可以向您提供一些基本的建议。 android.security.keystore.KeyProtection 是一个用于保护密钥的类,它允许您设置不同类型的加密算法(如 RSA、ECDSA 等),以及密钥的关键属性(如保护级别、区分度等)。与之相比,java.security.KeyStore$PasswordProtection 是一个用于保护 Java 密钥库(KeyStore)中的密钥的类,它们在目的和用法上有所不同。 如果您要使用 android.security.keystore.KeyProtection 来代替 java.security.KeyStore$PasswordProtection,您需要做以下几个步骤: 1. 创建一个 KeyStore 对象,并以密码保护它(使用 KeyStore.load 方法)。 2. 生成一个密钥,并将其存储在 KeyStore 中(使用 KeyStore.setKeyEntry 或 KeyStore.setEntry 方法)。 3. 使用 KeyStore.getEntry 方法获取 KeyStore.Entry 对象,然后将其转换为 KeyStore.PrivateKeyEntry 或 KeyStore.SecretKeyEntry(具体取决于您存储了哪种类型的密钥)。 4. 使用 KeyStore.Entry.getProtection 方法获取密钥保护(KeyProtection 或 PasswordProtection)。 5. 如果您使用的是 KeyStore.PrivateKeyEntry,则可以将保护对象强制转换为 KeyProtection,并获取其参数(如在第1步中设置的加密算法、保护级别等)。 6. 如果您使用的是 KeyStore.SecretKeyEntry,则可以将保护对象强制转换为 PasswordProtection,并获取其密码。 这些都是基本的思路,具体取决于您的具体用例和要求。希望这些建议可以帮助您开始使用 android.security.keystore.KeyProtection。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值