说明: 下面流程图中说到的支付宝私钥是不对外开放的,商户自己的私钥也要注意保密不要对外展示,否则会影响账号安全!
一般我们会看到4个密钥
rsa_private_key 商户私钥 : 适用开发语言php ,.net等。
rsa_private_key_pkcs8 商户pkcs8私钥 :适用开发语言java,安卓 ,iso等。
rsa_public_key 商户公钥 : 上传到支付宝后台服务器
alipay_public_key 支付宝公钥: 配置到商户项目中 密钥交互原理
私钥用于签名,公钥用于验签。商户使用私钥生成请求签名参数,请求到支付宝,支付宝利用商户上传的商户公钥进行验签请求参数并处理,处理结果使用支付宝私钥进行签名,返回给商户服务器,商户利用配置到项目中的支付宝公钥进行验签。
密钥交互流程图
①:商户上传自己的商户公钥到支付宝服务器
②:使用商户私钥请求签名参数
③:签名以后的参数请求到支付宝
④:支付宝服务器使用商户上传的商户公钥,验签商户请求参数,并处理支付结果
⑤:对商户支付结果使用支付宝私钥签名
⑥:商户使用支付宝公钥验签支付返回的支付结果
大家对密钥原理有什么疑问欢迎在帖子下方追问吐槽