ubuntu openssl 生成密钥对
一般情况下ubuntu和mac系统都会自带openssl,安装之前先测试一下,打开终端,输入openssl,如果出现以下画面,即已安装。
root@jiang:/home/kevin/work/openssl# openssl
OpenSSL>
如果系统没有安装可执行以下命令进行安装:
sudo apt-get install openssl
安装完成之后既可以使用了
首先需要进入openssl交互界面,在终端输入openssl命令即可
1.生成RSA私钥
OpenSSL> genrsa -out rsa_private_key.pem 2048
该命令会生成2048位的私钥,同时会在当前路径下生成rsa_private_key.pem文件.
2.把RSA私钥转换成PKCS8格式
openssl pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM –nocrypt
openssl pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt
pkcs8: Use -help for summary. error in pkcs8
输入命令后如果出现上面报错情况可尝试去掉最后的 -nocrypt
root@jiang:/home/kevin/work/openssl# openssl pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM Enter Encryption Password: Verifying - Enter Encryption Password:
如果出现输入加密密码的信息即为成功,输入两次加密密码就会出现秘钥信息,下面代码中从-----BEGIN ENCRYPTED PRIVATE KEY-----开始到-----END ENCRYPTED PRIVATE KEY-----为止都是秘钥内容。
3. 生成RSA公钥
输入 openssl rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem 命令,若出现writing RSA key则公钥生成成功,如下图:
root@jiang:/home/kevin/work/openssl# openssl rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem writing RSA key
最后是这个命令生成的公钥,支付宝成功可以用的rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem
此时在当前路径下会出现一个名为rsa_public_key.pem的文件,其内容就是公钥。
二.