支付宝开放平台使用csr证书认证的python调用

1 篇文章 0 订阅
1 篇文章 0 订阅

支付宝开放平台的python sdk中没有支持csr模式的认证和请求,而且从官方文档中看到的价签步骤过于简单,有很多问题不能解释清楚。

证书

证书加密就是就是rsa加密更加高级可信的形式。什么是证书,是一种数字签名的声明,它将公钥的值绑定到持有对应私钥的个人、设备或服务的身份。大多数普通用途的证书基于 X.509v3 证书标准。那就清楚了,支付宝平台助手的csr工具会让你先填一些信息,这些信息就是证书的目的地,然后用rsa256生成一份不对称的秘钥,公钥写入证书,私钥需要留下来,这样限于你某个组织以及域名的证书就完成了。这时候还没完,支付宝会让你下载一个叫支付宝公钥的东西,这个和我们刚上传的应用公钥是两回事。接着下面看。

原理

我们向支付宝请求的时候,会用自己的私钥加密,这个秘文是和私钥唯一绑定的,只有对应的公钥才能解开,所以支付宝用我们传上去的公钥解开成明文,拿到请求数据。但是证书的参数里面还有一个支付宝公钥sn和根证书sn的参数,我的理解是这是支付宝需要二次校验,从根证书上验证安全。

参考

我参照java的证书调用方式以及网上一些博客和资料,简单构造了csr方式的python访问脚本。可以移植到工程文件中,修改路径进行填补。项目地址

当前模块只写了获取临时授权码的api,这是访问的入口接口,拿到code后就可以获取到访问令牌,然后用访问令牌就可以去调业务接口了,后面要做的就是添加方法继续向下走即可。另外,对于根证书的sn获取python的方法有问题,因为这个值长期不会变,所以暂时写死了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值