RSA和RSA2签名算法区别
新建应用只支持RSA2签名方式,目前已使用RSA签名方式的应用仍然可以正常调用接口,详情请见开放平台接口签名方式升级公告。
什么是数字签名?
一个很好的说明文档可以参考What is a Digital Signature?,中文翻译可以参考:数字签名是什么?。
简单来说,签名主要包含两个过程:摘要和非对称加密,首先对需要签名的数据做摘要(类似于常见的MD5)后得到摘要结果,然后通过签名者的私钥对摘要结果进行非对称加密即可得到签名结果。
开放平台支持的签名算法
开放平台签名算法名称 | 标准签名算法名称 | 备注 |
---|---|---|
RSA2 | SHA256WithRSA | 强制要求RSA密钥的长度至少为2048 |
RSA | SHA1WithRSA | 对RSA密钥的长度不限制,推荐使用2048位以上 |
由于计算能力的飞速发展,从安全性角度考虑,蚂蚁金服在原来SHA1WithRSA签名算法的基础上,新增了支持SHA256WithRSA的签名算法。该算法在摘要算法上比SHA1WithRSA有更强的安全能力。
目前SHA1WithRSA的签名算法会继续提供支持,但为了您的应用安全,强烈建议使用SHA256WithRSA的签名算法。
注意事项:
- 协议参数:开放平台的报文标准中,sign_type参数用于指定签名算法,若使用SHA256WithRSA签名算法则在报文中需要指定sign_type=RSA2,若您使用开放平台SDK,可参考SDK相关文档说明。
- 避免公私钥混用:不同签名算法的签名密钥是隔离的。由于同时提供了两套签名算法,若选择了特定的签名算法,请保证使用对应的私钥签名,同时使用对应的支付宝公钥进行验签。
RSA和RSA2签名算法区别相关推荐
- PHP 实现RSA,RSA2 加密和签名
目录 前情提要 生成 RSA 私钥和公钥 加密(公钥加密,私钥解密) 签名(私钥签名,公钥验签) 使用 RSA2 的签名和验签说明 结论 前情提要 在网站或应用的业务开发中,往往会使用一些加密逻辑或者 ...
- [密码学基础][每个信息安全博士生应该知道的52件事][Bristol Cryptography][第10篇]RSA和强RSA问题有什么区别
这个密码学52件事数学知识的第一篇,也是整个系列的第10篇.这篇介绍了RSA问题和Strong-RSA问题,指出了这两种问题的不同之处. 密码学严重依赖于这样的假设,某些数学问题难以在有限的时间内解决 ...
- SSL证书RSA和ECC算法区别
RSA算法和ECC算法是目前流行的主要两种SSL证书公钥加密算法 RSA 加密算法:国际标准算法,应用较早的算法之一,普遍性更强,同比 ECC 算法的适用范围更广,兼容性更好,一般采用2048位的加密 ...
- 浅谈RSA2加密原理
RSA2加密解密原理分析 一.相关定义 RSA2签名 加密与签名 摘要 非对称加密 RSA和RSA2签名算法区别 PKCS1与PKCS8格式的小知识 签名类型划分 国密 二.加密原理 1.求幂再求余 ...
- 支付宝支付之“单笔转账到支付宝账户接口”的调用(生成签名、上传应用公钥、下载SDK、接口调用、报错自动排查、查看错误码)
支付宝接口调用 "单笔转账到支付宝账户"的接口调用,一般涉及到下面几个知识点 1.生成签名 在使用支付宝接口的时候,需要使用支付宝的签名,这里需要使用支付宝的RSA生成工具. 关于 ...
- 支付开发(七)----支付宝开发之手机网站支付(H5支付)
其实官方的文档中:https://docs.open.alipay.com/203 介绍的已经很详细了,我就实地的看文档操作了一遍,具体步骤如下: 一.创建应用 流程如下: 首先要有支付宝开放平台: ...
- 支付宝:APP支付接口2.0(alipay.trade.app.pay)
本章是跟支付宝进行签约对接商户服务端(也就是自行开发的JAVA后端),做此记录. 文献基本都来源于支付宝,详情请看支付宝官方文档:APP支付 目录 系统交互图 服务端demo 配置参数 获取APPID ...
- java开发沙箱环境_java支付宝开发-01-沙箱环境接入
一.沙箱环境说明 (1)蚂蚁沙箱环境(Beta)是协助开发者进行接口功能开发及主要功能联调的辅助环境.沙箱环境模拟了开放平台部分产品的主要功能和主要逻辑(当前沙箱支持产品请参考"沙箱支持产品 ...
- 大话 AliPay踩的坑
大话 AliPay踩的坑 传送门->大话微信支付踩的坑 做三方集成的时候按照官方的步骤进行集成基本不会出现太多问题.最近在做App集成支付,主要就是微信支付.支付宝.在集成支付宝支付的时候还是遇 ...
最新文章
- shell获取时间戳
- GoldenGate 配置extract,replicat进程自启动
- C++ 特殊类设计:只能在堆、栈上创建的类、无法继承的类、无法拷贝的类、只能创建一个对象的类
- VigiBase中搜索和眼病相关的统计数据
- Cache替换算法:LRU与LFU的区别
- 程序员学会精刷LeetCode后,会变得有多强...
- 物联网开发语言的探讨
- newsgroup_txt
- POI删除空白行 代码和其他用法(将会持续更新)
- MATLAB无法直接打开M文件
- JAVA柱形图动态显示,动态控制柱形图显示柱数
- 软件工程第二次作业——模仿实现主流网页
- 服务器单核性能天梯图,台式机cpu性能排行(cpu单核性能天梯图)
- html 插入 flv,HTML中嵌入FLV视频文件
- 没有苹果开发账号,只有p12文件和mobileprovision文件进行打包
- lol手游账号服务器,英雄联盟手游
- 小学信息技术 计算机组装,浅谈小学信息技术教学创新
- 物联网在智慧校园里的应用
- Flutter Icon
- Linux管理日记(一)
热门文章
- Github上的iOS App源码 (中文)
- 最新服务器开门进度,各服进度汇总,截止8月3号11点为止,最新服务器开门进度排名!23个已完成服务器!...
- Protobuf基本用法
- 【人才管理】13个最难填补的IT职位
- 7种常见的51单片机时钟电路图,收藏!
- RuntimeError: mat1 and mat2 shapes cannot be multiplied (128x200 and 1250x1024)
- Acrel-3000WEB电能管理系统运用互联网和大数据技术,为电力运维公司和售配电公司提供变电所运维云平台
- 判断移动端打开的是ios还是android还是微信浏览器
- 苹果2019财年第二财季财报前瞻:分析师预计营收将继续下滑
- Python 爬虫学习(无聊至极的环境搭建)