分享
这是一个创建于 的主题,其中的信息可能已经有所发展或是发生改变。
https://help.aliyun.com/document_detail/25492.html?spm=5176.doc25490.2.2.Uwn9UA
我按照url的文档,对StringToSign进行hmac sha1进行加密,然后base64,得到的结果与文档例子的结果不一致
[v2-c7765a6260196517ed843e4f01d9e381_r.png](http://studygolang.qiniudn.com/170504/f396c10be7d70db4cbf999e6d0680f74.png)
我的代码:
```
package main
import "fmt"
import "crypto/sha1"
import "crypto/hmac"
import b64 "encoding/base64"
func main() {
key := []byte("testsecret&")
mac := hmac.New(sha1.New, key)
mac.Write([]byte("GET&%2F&AccessKeyId%3Dtestid&Action%3DDescribeRegions&Format%3DXML&SignatureMethod%3DHMAC-SHA1&SignatureNonce%3D3ee8c1b8-83d3-44af-a94f-4e0ad82fd6cf&SignatureVersion%3D1.0&TimeStamp%3D2016-02-23T12%253A46%253A24Z&Version%3D2014-05-26"))
s := b64.StdEncoding.EncodeToString(mac.Sum(nil))
fmt.Println(s)
}
```
输出的结果:LZ5DVzNj95387UDL70u7+18AwWY= 与官网文档结果不一致,搞了一天了,不知道啥原因!
有疑问加站长微信联系(非本文作者)
入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889
关注微信4223 次点击
添加一条新回复
(您需要 后才能回复 没有账号 ?)
- 请尽量让自己的回复能够对别人有帮助
- 支持 Markdown 格式, **粗体**、~~删除线~~、
`单行代码` - 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
- 图片支持拖拽、截图粘贴等方式上传