支付宝开放平台采用了RSA安全签名机制,开发者可以通过支付宝公钥验证消息来源,同时可使用自己的私钥对信息进行加密。RSA算法及数字签名机制是支付宝开放平台与开发者网关安全通信的基础,若开发者不熟悉RSA及数字签名,请先查阅相关资料。
1、RSA私钥及公钥生成
官方提供的开发文档存在一些误导,这里简要概括为这几句话:
RSA密钥生成命令
生成RSA私钥
openssl>genrsa -out rsa_private_key.pem 1024
生成RSA公钥
openssl>rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem
将RSA私钥转换成PKCS8格式
openssl>pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt
注意:“>”符号后面的才是需要输入的命令。
2、
在上图应用公钥(RSA)中填写你生成的RSA公钥,应用网关可不填。切记一定要点击“合作伙伴密钥”,进入该页面在RSA加密处填写你生成的RSA公钥(和上面的一样),如下图
3、配置支付宝提供的Demo