OpenSSL生成证书进行iOS加密,java解密的RSA非对称加密 详解

本文介绍如何在MAC、Linux及Windows环境下使用openssl生成包括私钥、公钥在内的多种证书,并提供了适用于Java与iOS平台的证书生成步骤。此外还分享了两个GitHub项目的链接,供读者参考具体的实现方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MAC、Linux 上自带 openssl,windows上没有需要安装

相关证书生成过程
1> 使用 cd 指令让终端进入到相应的目录中


2> 终端输入 openssl,进入openssl状态


3> 生成一个1024位的私钥: genrsa -out rsa_private_key.pem 1024


4> 利用私钥生成JAVA支持的PKCS8类型的私钥: pkcs8 -topk8 -inform PEM -in  rsa_private_key.pem -outform PEM -nocrypt -out pkcs8_private_key.pem


5> 生成JAVA支持的PKCS8二进制类型的私钥: pkcs8 -topk8 -inform PEM -in  rsa_private_key.pem -outform DER -nocrypt -out pkcs8_private_key.der


6> 生成公钥: rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem


7> 生成iOS支持的der证书,其间用到了证书请求和自签署根证书
     <1> 创建证书请求: req -new -out cert.csr -key rsa_private_key.pem (其间会要求填写国家地区公司信息等,随便填写OR认真填写都不影响证书使用)


     <2> 创建X509的自签署跟证书(iOS支持X509,有效期3650天): x509 -req -in cert.csr -out rsa_public_key.der -outform der -signkey rsa_private_key.pem -days 3650


完成了以上的步骤后应该在所在的目录下生成了6个文件,其中pem的文件都是文本类型的,都可以使用文本编辑器或者cat命令查看,der的都是二进制的文件了,不能看


推荐打开github的链接,里面包含了java端和iOS的实现方式:

注:1java那个使用公钥的部分,应该使用上述的第5步生成的 pkcs8_private_key.der 文件,不要看错了
       2> OC中在bundle中要是找不到der类型的文件,此时,需要改一下上述6.2生成的 rsa_public_key.der 文件的后缀为 .cer 才可以
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值