让代码更简单

支付宝更新支付接口MD5加密方式为RSA非对称加密

重要:本文最后更新于2021-11-20 18:41:52,某些文章具有时效性,若有错误或已失效,请在下方留言或联系代码狗

由于MD5的加密特性,目前全球MD5数据库搜集的加密数据量太大,使得MD5撞库破解成为可能,MD5加密不再可靠。支付宝发布通知,要求所有商户在收到通知起6个月内完成支付加密方式升级,由MD5转为RSA非对称加密。准确来说不是升级,是放弃MD5加密方式,因为支付宝一直都有提供RSA加密方式,只是RSA加密比MD5复杂一些,不受业余开发者喜欢,比如我。

支付宝更新支付接口MD5加密方式为RSA非对称加密

支付宝更新支付接口MD5加密方式为RSA非对称加密

关于什么是RSA非对称加密,以及如何实现,请看前面的文章:PHP的RSA非对称加解密

FAQ问题汇总

a) 接口加签算法升级为RSA后, 相应服务通知验签算法也要升级成为RSA?

答:是的,由于接口参数加签算法与支付宝侧服务通知的加签算法不一定严格对应(接口参数使用RSA签名,接口通知不一定使用RSA),建议商户在完成接口加签升级后,对服务通知的验签逻辑也进行升级,使服务端通知同时支持MD5和RSA算法;具体而言,接口加签只支持RSA,服务通知验签同时支持MD5和RSA。

b) 为什么要强制MD5密钥升级到RSA密钥?

答:随着计算机算力的提升,MD5密钥已经无法应对未来的安全要求,并且国家监管部门已经出台相关的制度法规,为了您业务安全,也为了业务合规考虑,请您尽快升级。

c) MD5密钥升级时长是多少?

从通知触达之日起,为期6个月,请商户尽量在期限内完成升级!逾期未升级商户,支付宝将根据商户的升级情况,评估是否采用进一步的安全措施。

d) 接口改造过程中是否有测试联调环境?

目前该接口暂无对外的联调环境,由于开放协议使用的是普通的Https协议,开发者可以在测试环境中构造加签请求后,请求支付宝的正式网关,完成整改验证。

e) ASP服务端如何进行升级?

由于ASP编程语言比较老旧,目前没有公开的ASP RSA加密类库,针对这部分存量商户,可以参考支付宝加/验签名逻辑自行实现编码。如无编码能力,可以暂时不进行升级,支付宝将保持这部分商户的业务连续性。

整改风险提示

商户在进行RSA密钥升级时,一定要注意加签RSA私钥安全存放,禁止将RSA私钥文件直接保存在服务端程序的文件目录中,避免被外部访问,造成RSA私钥泄漏。

感觉很棒!可以赞赏支持我哟~

1 打赏

评论 (0)

登录后评论
QQ咨询 邮件咨询 狗哥推荐