使用OpenSSL为支付宝生成RSA私钥

简介: 通过openssl工具生成RSA的公钥和私钥(opnssl工具可在互联网中下载到,也可以点此下载无线接口包,里面包含此工具)打开openssl文件夹下的bin文件夹,执行openssl.exe文件: 1)生成RSA私钥 输入“生成命令.

通过openssl工具生成RSA的公钥和私钥(opnssl工具可在互联网中下载到,也可以点此下载无线接口包,里面包含此工具)打开openssl文件夹下的bin文件夹,执行openssl.exe文件:

1)生成RSA私钥 
输入“生成命令.txt”文件中:“genrsa -out rsa_private_key.pem 1024”,并回车得到生成成功的结果,如下图: 

此时,我们可以在bin文件夹中看到一个文件名为rsa_private_key.pem的文件,用记事本方式打开它,可以看到-----BEGIN RSA PRIVATE KEY-----开头,-----END RSA PRIVATE KEY-----结尾的没有换行的字符串,这个就是原始的私钥。 
2)生成RSA公钥 
输入命令:rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem,并回车,得到生成成功的结果,如下图: 


此时,我们可以在bin文件夹中看到一个文件名为rsa_public_key.pem的文件,用记事本方式打开它,可以看到-----BEGIN PUBLIC KEY-----开头,-----END PUBLIC KEY-----结尾的没有换行的字符串,这个就是公钥。

3)把RSA私钥转换成PKCS8格式 
输入命令:pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt,并回车当前界面中会直接显示出生成结果,这个结果就是PKCS8格式的私钥,如下图: 

右键点击openssl窗口上边边缘,选择编辑→标记,选中要复制的文字(如上图), 
此时继续右键点击openssl窗口上边边缘,选择编辑→复制, 
把复制的内容粘土进一个新的记事本中,可随便命名,只要知道这个是PKCS8格式的私钥即可。 

 

经过以上步骤,开发者可以在当前文件夹中(OpenSSL运行文件夹),看到dsa_private_key.pem(DSA私钥)、dsa_private_key_pkcs8.pem(pkcs8格式DSA私钥)、dsa_public_key.pem(对应DSA公钥)和dsa_param.pem(参数文件)4个文件。开发者将私钥保留,将公钥提交给支付宝网关,用于验证签名。

注意:对于使用Java的开发者,将pkcs8在console中输出的私钥去除头尾、换行和空格,作为开发者私钥,对于.NET和PHP的开发者来说,无需进行pkcs8命令行操作。

相关文章
如何生成RSA,RSA2密钥
密钥生成或如何使用(创建应用):[url]https://openclub.alipay.com/read.php?tid=1606&fid=72[/url] 1.密钥生成工具下载:[url]https://docs.
1464 1
如何生成pem密钥
本帖是介绍使用支付宝提供的一键生成密钥工具和OpenSSL工具生成pem格式密钥,仅供参考!! 可参看开放平台文档链接实现:[url]https://docs.open.alipay.com/291/106097[/url] 1.直接使用支付宝提供的一键生成工具生成; 2.使用OpenSSL工具生成。
4671 0
|
3月前
openssl生成密钥
openssl生成密钥
23 0
|
4月前
|
算法 Java 数据安全/隐私保护
RSA 加解密 1024 位 & 2048 位
RSA 加解密 1024 位 & 2048 位
64 0
|
5月前
|
存储 算法 安全
C++ CryptoPP使用RSA加解密
Crypto++ (CryptoPP) 是一个用于密码学和加密的 C++ 库。它是一个开源项目,提供了大量的密码学算法和功能,包括对称加密、非对称加密、哈希函数、消息认证码 (MAC)、数字签名等。Crypto++ 的目标是提供高性能和可靠的密码学工具,以满足软件开发中对安全性的需求。RSA(Rivest-Shamir-Adleman)是一种非对称加密算法,由三位密码学家Ron Rivest、Adi Shamir和Leonard Adleman于1977年共同提出。RSA算法被广泛应用于信息安全领域,特别是在数字签名和密钥交换等场景中。
112 0
C++ CryptoPP使用RSA加解密
|
Java Shell Maven
JAVA实现PGP/GPG加解密加验签
JAVA实现PGP/GPG加解密加验签
1970 0
|
Web App开发 算法 安全
详细讲解https证书openssl公钥私钥以及ssh公钥私钥的生成以及使用
详细讲解https证书openssl公钥私钥以及ssh公钥私钥的生成以及使用
1146 0
详细讲解https证书openssl公钥私钥以及ssh公钥私钥的生成以及使用
|
应用服务中间件 网络安全 开发工具
如何生成RSA2密钥
密钥文件说明:    1、rsa_private_key.pem:原始私钥(又称pkcs1私钥),适用于非Java开发语言;  2、rsa_private_key_pkcs8.pem:pkcs8私钥,适用于Java开发语言;  3、rsa_public_key.pem:商户公钥,需上传至应用中加签方式的应用公钥位置。
1943 0
如何上传商户公钥RSA2,获取支付宝公钥
说明:   所有说的公钥上传都是指上传商户自己公钥一般命名:rsa_public_key   appid请求的请上传公钥到您的appid下面   pid请求的请上传到mapi网关密钥产品中  密钥上传(以上传到开放平台为例):   1.登录上传公钥地址【点击登录】   2.首先确认要上传到哪一个appid下(如下图)需要上传RSA2(SHA256)密钥(推荐),还是上传RSA(SHA1)密钥         3.打开》设置应用公钥》需要手机验证,验证完成跳转(如下图)         4.选择rsa_public_key.pem打开复制里面商户公钥字符串》粘贴到上图框中,选择保存。
1176 0