通过openssl工具生成RSA的公钥和私钥。

打开openssl文件夹下的bin文件夹,执行openssl.exe文件:

1)生成RSA私钥

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

android RSA密钥生成 rsa私钥生成_开发者


此时,我们可以在bin文件夹中看到一个文件名为rsa_private_key.pem的文件,用记事本方式打开它,可以看到—–BEGIN RSA PRIVATE KEY—–开头,—–END RSA PRIVATE KEY—–结尾的没有换行的字符串,这个就是原始的私钥。2)把RSA私钥转换成PKCS8格式

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

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

android RSA密钥生成 rsa私钥生成_开发者_02


右键点击openssl窗口上边边缘,选择编辑→标记,选中要复制的文字(如上图),

此时继续右键点击openssl窗口上边边缘,选择编辑→复制,

把复制的内容粘土进一个新的记事本中,可随便命名,只要知道这个是PKCS8格式的私钥即可。3)生成RSA公钥

输入命令:rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem,并回车,得到生成成功的结果,如下图:

android RSA密钥生成 rsa私钥生成_上传_03


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

详情见开放平台对于密钥生成说明

注意:请妥善保管好生成的公私钥!上传公钥

在“合作伙伴密钥管理”下(根据不同的产品选择对应的入口),点击“RSA加密”后的“添加密钥”,把自己的公钥复制进去,如截图:

android RSA密钥生成 rsa私钥生成_上传_04


注意:上传的公钥是一行格式,不允许有注释、空格、换行等!

转换前pem文件格式:

—–BEGIN PUBLIC KEY—–

MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDQWiDVZ7XYxa4CQsZoB3n7bfxL

DkeGKjyQPt2FUtm4TWX9OYrd523iw6UUqnQ+Evfw88JgRnhyXadp+vnPKP7unorm

YQAfsM/CxzrfMoVdtwSiGtIJB4pfyRXjA+KL8nIa2hdQy5nLfgPVGZN4WidfUY/Q

pkddCVXnZ4bAUaQjXQIDAQAB

—–END PUBLIC KEY—–

转换后的字符串:

MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDQWiDVZ7XYxa4CQsZoB3n7bfxLDkeGKjyQPt2FUtm4TWX9OYrd523iw6UUqnQ+Evfw88JgRnhyXadp+vnPKP7unormYQAfsM/CxzrfMoVdtwSiGtIJB4pfyRXjA+KL8nIa2hdQy5nLfgPVGZN4WidfUY/QpkddCVXnZ4bAUaQjXQIDAQAB

点击“确认上传”,提示:上传成功,说明已经成功上传:

android RSA密钥生成 rsa私钥生成_字符串_05


说明:如果需要修改公钥,只需要把新的公钥复制进去,点击“修改”即可!

查看支付宝公钥:点击“RSA加密”后面的“查看支付宝公钥”即可查看到对应的支付宝公钥!

android RSA密钥生成 rsa私钥生成_android RSA密钥生成_06

修改和查看公钥

第一步:

android RSA密钥生成 rsa私钥生成_字符串_07



第二步:

android RSA密钥生成 rsa私钥生成_上传_08


第三步:

android RSA密钥生成 rsa私钥生成_上传_09


第四步:

将bin路径下的rsa_public_key.pem打开,将内容复制进来(不允许有注释、空格、换行等),保存即可

android RSA密钥生成 rsa私钥生成_字符串_10


android RSA密钥生成 rsa私钥生成_开发者_11