RSA2新式签名方式

简介: 什么是数字签名? 简单来说,签名主要包含两个过程:摘要和非对称加密,首先对需要签名的数据做摘要(类似于常见的MD5)后得到摘要结果,然后通过签名者的私钥对摘要结果进行非对称加密即可得到签名结果。 开放平台最新支持的签名算法由于计算能力的飞速发展,从安全性角度考虑,蚂蚁金服在原来SHA1...

什么是数字签名? 


简单来说,签名主要包含两个过程:摘要和非对称加密,首先对需要签名的数据做摘要(类似于常见的MD5)后得到摘要结果,然后通过签名者的私钥对摘要结果进行非对称加密即可得到签名结果。 


开放平台最新支持的签名算法


由于计算能力的飞速发展,从安全性角度考虑,蚂蚁金服在原来SHA1WithRSA签名算法的基础上,新增了支持SHA256WithRSA的签名算法,该算法在摘要算法上比SHA1WithRSA有更强的安全能力,当然,SHA1WithRSA的签名算法会继续提供支持,但为了您的应用安全,强烈建议使用SHA256WithRSA的签名算法,同时,我们蚂蚁金服把这种签名算法命名为RSA2。 


注意事项


1.避免公私钥混用      

不同签名算法的签名密钥是隔离的。由于同时提供了两套签名算法,若选择了特定的签名算法,请保证使用对应的私钥签名,同时使用对应的支付宝公钥进行验签。 

2.协议参数        

开放平台的报文标准中,sign_type参数用于指定签名算法,若使用SHA256WithRSA签名算法则在报文中需要指定sign_type=RSA2。若您使用开放平台SDK,在此做简要说明: 

1)技术同学接入配置信息 把APPID、应用私钥、支付宝公钥配置在代码中,对请求内容进行签名,并对支付宝返回的内容进行验签,支付宝开放平台SDK封装了签名和验签过程,只需配置账号及密钥参数即可,强烈建议使用。 

2)使用开放平台sdk接入示例 开放平台SDK封装了签名实现,只需在创建DefaultAlipayClient对象时,设置请求网关(gateway),应用id(app_id),应用私钥(private_key),编码格式(charset),支付宝公钥(alipay_public_key),签名类型(sign_type)即可,报文请求时会自动进行签名,示例如下:


目录
相关文章
|
存储 缓存 NoSQL
Spring-Boot实战|分布式缓存-JPA的二级缓存-Redis
以JPA为ORM框架的微服务,默认是二级缓存是关闭的。因为在分布式集群架构下,本地的二级缓存必然会带来多个微服务实例缓存不一致问题。将二级缓存移交给第三方中间件可以很好的解决缓存不一致问题。而Redis一款高性能的K-V存储中间件,在保证缓存一致性的同时,还能提供高性能,高可用的特性。本篇文章就是基于开源框架Hibernate-Redis,将Redis作为为JPA的二级缓存实现
5561 0
Spring-Boot实战|分布式缓存-JPA的二级缓存-Redis
|
11月前
|
存储 机器学习/深度学习 人工智能
​​解锁AI检索的7大Embedding技术:从稀疏到多向量,一文掌握!​
本文系统解析七种主流文本嵌入技术,包括 Sparse、Dense、Quantized、Binary、Matryoshka 和 Multi-Vector 方法,结合适用场景提供实用选型建议,助你高效构建文本检索系统。
1272 0
|
5月前
|
人工智能 安全 JavaScript
零基础入门:阿里云/本地部署OpenClaw+百炼API配置,1分钟吃上AI小龙虾🦞(附8大神级Skill及避坑指南)
OpenClaw的真正魅力,不在于基础的对话能力,而在于其开放的技能(Skill)生态——每一个技能都是一个“外挂模块”,能让AI获得联网爬虫、代码开发、文档编辑、定时任务等专属能力。截至2026年3月,ClawHub技能市场已收录超过10000个技能,但多数用户陷入“选择困境”:要么不知道哪些技能真正实用,要么安装后因配置复杂、功能冲突无法正常使用。
1159 0
|
8月前
|
设计模式 算法 Java
Java 学习进阶书单:从基础到架构,循序渐进提升技术栈
一份涵盖Java基础、并发、JVM、算法、数据库、框架、架构等12大方向的精选书单,每本书均附精准定位与阅读建议,助力Java程序员高效进阶,少走弯路。
979 0
|
存储 传感器 算法
如何选择合适的 CRC 多项式
CRC(循环冗余校验)多项式的选取对数据传输的错误检测至关重要。选择时需考虑多项式的长度、检测性能及实现复杂度,常用多项式有CRC-8、CRC-16、CRC-32等,适用于不同场景以确保高效准确的错误检测。
2045 4
|
存储 Java 数据安全/隐私保护
Java 生成证书:使用 keytool
Java 生成证书:使用 keytool
|
存储 Ubuntu 测试技术
如何在 Ubuntu 或 Debian VPS 上配置 Apache Web 服务器
如何在 Ubuntu 或 Debian VPS 上配置 Apache Web 服务器
657 0
|
easyexcel
EasyExcel写入内容匹配不上解决方法
EasyExcel写入内容匹配不上解决方法
750 0
|
监控 网络协议 NoSQL
java线上排查OOM内存溢出
java线上排查OOM内存溢出
1203 1
|
前端开发 Windows
手机真机调试本地前端页面
手机真机调试本地前端页面
1008 0