Nonce Used1
1 摘要签名认证方式
API网关提供前端签名及验签能力,前端签名及验签主要两点用途:
验证客户端请求的合法性,确认请求中携带授权后的AK生成的签名;
防止请求数据在网络传输过程中被篡改。
API的拥有者可以在API网关控制台的应用管理页面生成APP,每个APP会携带一对签名密钥(APP Key和APP Secret),API拥有者将API授权给指定的APP(APP可以是API拥有者颁发或者API调用者所有)后,API调用者就可以用APP的签名密钥来调用相关的API了。
客户端调用 API 时,需要使用已授权签名密钥对请求内容的关键数据进行加密签名计算,并且将APP Key和加密后生成的字符串放在请求的 Header 传输给API网关,API网关会读取请求中的APP Key的头信息,并且根据APP Key的值查询到对应的APP Secret的值,使用APP Secret对收到的请求中的关键数据进行签名计算,并且使用自己的生成的签名和客户端传上来的签名进行比对,来验证签名的正确性。只有签名验证通过的请求才会发送给后端服务,否则API网关会认为该请求为非法请求,直接返回错误应答。
API网关只会验证安全认证类型为“阿里云APP”或者“OpenID Connect & 阿里云APP”两种类型的API请求的签名,其他安全类型的API请求不会验证签名。
2 使用SDK调用
签名计算的详细实现可以参考API网关提供的SDK,在API网关控制台的下面两个页面中可以下载Java/Android/Objective-C的带源码的SDK:
开放API-SDK/文档自动生成
调用API-已授权的API的SDK
具体可参考使用SDK调用API
3 摘要签名认证方式原理说明
3.1签名生成流程和认证流程概述
3.1.1 前置条件
API的调用方需要在调用API之前获取到已经授权给对应API的签名密钥对:
APP Key
APP Secret
Nonce Used1相关推荐
- php 获取signature,PHP开发微信无法获取到signature,timestamp,nonce
namespace HomeController; use ThinkController; define("TOKEN","weixin"); /* *微信的 ...
- nonce和timestamp在Http安全协议中的作用
前段时间给客户网站做新浪微博账号登录功能,对OAuth协议以及相关的一些安全协议做了一些研究,顺便就记录一下学习心得吧.在这里就不打算具体讲OAuth的协议流程了,而是针对OAuth请求头里的nonc ...
- 解决问题的反馈机制_谈谈HBase中的Nonce机制
最近在读hbase源码关于rpc的一些实现细节,想正好趁此机会和大家分享一下我理解到的hbase关于Nonce机制的实现. Nonce机制的来源 Nonce这个词由来已久,且在各个领域都会有相对应的名 ...
- 以太坊中的nonce
以太坊创建每个账户时初始nonce=0,以后每次交易nonce+1,防止以太坊中的replay attack. 参考:https://www.bilibili.com/video/BV1Vt411X7 ...
- 区块链中nonce与难度系数
一.简述: 简言之,区块链是去中心化的分布式数据库.而sha-256就是区块哈希的算法.计算的难度:难度系数越大目标值越小,只有小于目标值的哈希才是有效的.随机项,nonce是一个在区块头任意变化的随 ...
- 基于timestamp和nonce的防止重放攻击方案
以前总是通过timestamp来防止重放攻击,但是这样并不能保证每次请求都是一次性的.今天看到了一篇文章介绍的通过nonce(Number used once)来保证一次有效,感觉两者结合一下,就能达 ...
- nonce值是什么?(Number once)(Number used once)cnonce(client nonce)(一个只被使用一次的任意或非重复的随机数值)
Nonce是Number once的缩写,在密码学中Nonce是一个只被使用一次的任意或非重复的随机数值. 具体应用 在摘要认证中服务器让客户选一个随机数(称作"nonce"),然 ...
- 如何正确处理nonce
问题概述 以太坊系列(ETH&ETC)在发送交易有三个对应的RPC接口,分别是ethsendTransaction.ethsendRawTransaction和personal_sendTra ...
- 以太坊交易中的nonce和confirmation
1. 以太坊交易中的nonce及其价值 1.1 以太坊交易中的nonce值 在以太坊中,每笔交易都有一个nonce值,该nonce值代表的是从该交易发起地址发出的交易数.(当存在使用同一地址从多个客户 ...
最新文章
- 自动生成低精度深度学习算子
- oracle 日志注册,Oracle日常维护中管理用户以及重做日志文件的方法
- struts2采用convention-plugin实现零配置
- 主页被篡改修正方法(续)
- LiveVideoStack成立5周年生日快乐!一路走来,感谢有你!
- 机器学习--Lasso回归(LassoRegression)
- 模拟——玩具谜题(洛谷 P1563)
- python 3.28 第三章 函数嵌套/名称空间//内置名称空间/全局名称空间/局部名称空间/作用域/函数对象/闭包函数。...
- linux 软件 tar deb rmp,deb、rpm、tar.gz三种Linux软件包的区别
- 分享一个mysql的docker-compose.yml
- 学术壁报模板_电子壁报 | 中华医学会第十四次全国妇产科学学术会议
- 中科院分区 计算机科学与技术专业就业前景,2020年中科院分区(升级版)最新数据分析...
- JDownloader 2 for Mac(百度云无限速下载工具)内附安装教程,需要 macOS 11.x系统
- linux下sybase创建数据库,教小白搭建sybase数据库环境
- 牛客网-调整数组顺序使奇数位于偶数前面
- matlab线条不平滑如何滤波,复杂曲线的包络线不平滑
- matlab表格数据输入方式,matlab输入excel表格数据-matlab怎么把数据写入excel
- 爆笑,2008最新一句话笑喷饭!
- java加密与解密-核心包中的部分API(2)
- 接口测试基础、流程、工具