Generate public key from private key in keychain

125 篇文章 1 订阅
6 篇文章 0 订阅

ref link: http://stackoverflow.com/questions/16847081/i-lost-my-public-key-can-i-recover-it-from-a-private-key


如何通过private key来恢复public key?

public / private key都是成对生成的,但下面2种常见情况会丢失public key

1. 不小心从keychain里删掉public key

2. apple program admin会生成一个p12传给developer来通过它生成distribution ipa file,而developer在把这个p12导入到keychain之后,它只包含private key and certificate,并不包括public key。


另外如果key chain里只有private key,而没有对应的public key,那么当你right-click the private key -> "Request a certificate",就会出现error “The specified item could not be found in the keychain


下面方法可以通过private key in keychain来生成对应的public key.

1. In Keychain Access, right click the private key and select "Export..."  as eg "private.p12". 在导出过程中,你需要给该.p12 file设置一个密码,假设为 “123456”.

2. 执行下列命令把.p12 file转换成.pem file (e.g. private.pem) 。在此过程中你需要输入步骤1设置的密码,然后还需要给生成的pem file设置一个密码,假设依然为 “123456”.

openssl pkcs12 -in private.p12 -out private.pem

3. 执行下列命令来获取public key的pem file (e.g. public.pem) 。在此过程中你需要输入步骤2设置的密码

openssl rsa -in private.pem -pubout > public.pem

4. 执行下列命令把public.pem file导入到keychain tool里的"login" keychain里。

security import public.pem -k login.keychain

5. 打开keychain tool,进入"login" keychain > keys,你会看到一个“Imported public key” item,这就是步骤4导入的public key。double click it,你可以为其更改名称

6. !!注意:最后记得要清楚步骤1和2生成的private key .p12 and .pem file!!



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值