时间:2021-07-15 | 标签: | 作者:Q8 | 来源:小米开放平台网络
小提示:您能找到这篇{小米应用商店:MAC签名验证}绝对不是偶然,我们能帮您找到潜在客户,解决您的困扰。如果您对本页介绍的小米应用商店:MAC签名验证内容感兴趣,有相关需求意向欢迎拨打我们的服务热线,或留言咨询,我们将第一时间联系您! |
< ">< font-size: 18px;">1.API MAC签名算法 < ">小米开放平台一些API需要进行MA C验证,在调用API时用MAC加密算法对请求进行加密,并将结果放到请求的header中。 < ">1.1 MAC计算 < ">请求内容标准化 < ">标准化的请求字符串,就是用指定的请求属性按照某个规则拼接而成的字符串。在这里,其实标准化请求字符串,就是将nonce,HTTP METHOD,HOST,URI,QUERY以换行符(即:n)为连接符,合并起来得到的字符串(格式串结尾增加n),其中涉及到属性: < ">标准化示例 54897465748976549:21459478nGETnopen.account.xia北京财经公关公司omi.comn/user/profilenclientId=xxx&token=xxxn < ">注意:上述换行符“n”仅用于展示 < ">MAC计算 < ">客户端使用MAC算法和MAC密钥来对“标准化的请求字符串”进行加密计算出消息认证码,MAC算法有hmac-sha-1和hmac-sha-256两种,我们目前只支持hmac-sha-1。 mac=HMAC-SHA1(mac_key,标准化的请求字符串) < ">MAC计算示例,以请求用户基本信息API为例说明: < ">请求地址:https://open.account.xiaomi.com/user/profile < ">请求参数: clientId=179887661252608&token=eJxjYGAQydknLLCFsVyIR-DxSqdTnQFGfX4yDAwMjAzxQJIheJfnRTDtvAhMM8SE_2FgWDw7Rg3MYzdUMFIwVjABMplzE5MBClYRuw nonce:2870867952176701445:23282360 < ">HTTP方法:GET < ">拼接得到标准化字符串: 2870867952176701445:23282360nGETnope360百科创建词条n.account.xiamomi.comn/user/profilenclientId=179887661252608&token=eJxjYGAQydknLLCFsVyIR-DxSqdTnQFGfX4yDAwMjAzxQJIheJfnRTDtvAhMM8SE_2FgWDw7Rg3MYzdUMFIwVjABMplzE5MBClYRuwn < ">Mac Key: ORhx44qK6Alqf8vt2rGB5f-oPq0 < ">签名结果输出(已Base64编码): 9uvros2WcjMaJ3pH25eQZU9p5pA= < ">1.2 MAC请求格式 < ">Header格式说明 < ">采用MAC签名验证调用API,需要将相关签名信息放入请求的HTTP请求的header中,第三方在发送API请求时需要在请求header中添加Authorization字段。Authorization字段内容如下: Authorization:MAC access_token="token value",nonce="随机码",mac="签名值" < ">字段说明: < ">access_token:授权时下发的访问令牌 < ">nonce:随机串,计算mac时候使用的nonce < ">mac:按照上面的方法计算得到的结果(例如:9uvros2WcjMaJ3pH25eQZU9p5pA=) < ">< font-size: 18px;">2._xmSign签名算法 < ">验证用户密码接口中的_xmSign字段基于API MAC签名算法生成,两者的区别在于MAC签名计算签名的时候使用的是mac_key,_xmSign计算用的是client_secret。 _xmSign=HmacSha1(client_secret,callback标准化字符串) < ">其中_xmNonce和_xmSign不参与标准化。 < ">_xmSign签名验证示例: < ">第三方提供的Callback:http://third_url.com/xm < ">小米验证成功之后调用的callback: http://third_url.com/xm?xmResult=true&xmUserId=1909031&code=93D6A6663C1095587F68281E654D5526&_xmNonce=5964262989求推广045079397%3A24012419&_xmSign=m%2FM1Ia6fOBfKWUbae5G5UXnqh5I%3D 其中_xmNonce=5964262989045079397:24012419,_xmSign=m/M1Ia6fOBfKWUbae5G5UXnqh5I= < ">参数: xmResult=true&xmUserId=1909031&code=93D6A6663C1095587F68281E654D5526(_xmNonce和_xmSign不参与标准化) < ">nonce:5964262989045079397:24012419 < ">HTTP方法:GET < ">拼接得到的标准化字符串: 5964262989045079397:24012419nGETnxiaomi.comn/n&code=93D6A6663C1095587F68281E654D5526&xmUserId=1909031&xmResult=truen < ">client secret: ORhx44qK6Alqf8vt2rGB5f-oPq0 < ">签名结果输出(已Base64编码): m/M1Ia6fOBfKWUbae5G5UXnqh5I= |
上一篇:小米应用商店的相关错误码定义
下一篇:Facebook广告Spy工具介绍
基于对传统行业渠道的理解,对互联网行业的渠道我们可以下这样一个定义:一切...
小米应用商店的后台操作和苹果是比较相似的,因为都能填写100字符关键词,允许...
小米的规则目前是在变更中的,但是根据经验小米的搜索排名评分的高低是个很重...
为了恰饭,有时候是要接入一些广告的,所以FB也专门有一个广告的SDK,这就是A...
在 2018 年于旧金山举行的游戏开发者大会上,Amazon Web Services (AWS) 曾宣布,目前世...
关于Facebook Audience Network如何收款的问题,其实官方已经给了详细的步骤。本文主要...
本文介绍了Audience Network对广告载体的质量检查,以及它重点广告形式需要注意的问...
随着iOS开发,作为开发者或公司需要针对iOS App开发涉及的方方面面作出对应的信息...
Facebook和谷歌对出海企业广告渠道都很熟悉,但事实上,在国外还有一些渠道也很...
卖家从做号的第1分钟开始,就一定要想好变现路径是什么?一定要以变现为目的去...
小提示:您应该对本页介绍的“小米应用商店:MAC签名验证”相关内容感兴趣,若您有相关需求欢迎拨打我们的服务热线或留言咨询,我们尽快与您联系沟通小米应用商店:MAC签名验证的相关事宜。
关键词:小米应用商店:MAC签名验