开发者社区> 问答> 正文

媒体转码API 签名HMACSHA1 C#

媒体转码API 签名HMACSHA1时,C#中的计算结果与示例中不一样。具体实现方法如下:
string target = "GET&%2F&AccessKeyId%3DtestId%26Action%3DSearchTemplate%26Format%3DXML%26PageSize%3D2%26SignatureMethod%3DHMAC-SHA1%26SignatureNonce%3D4902260a-516a-4b6a-a455-45b653cf6150%26SignatureVersion%3D1.0%26Timestamp%3D2015-05-14T09%253A03%253A45Z%26Version%3D2014-06-18";

string key = "testKeySecret&";

HMACSHA1 hmacsha1 = new HMACSHA1();
hmacsha1.Key = Encoding.UTF8.GetBytes(key);
byte[] dataBuffer = Encoding.UTF8.GetBytes(target);
byte[] hashBytes = hmacsha1.ComputeHash(dataBuffer);
var sig2 = Convert.ToBase64String(hashBytes);//kmDv4mWo806GWPjQMy2z4VhBBDQ

//示例结果 lWhJxn%2FCKJyVy2VjmIoamFlJ8bo%3D

请求问,你们后台签名方法是用 Java实现的吗,如果是的话在C#去实现签名要进行什么变换?

展开
收起
xiaosonl 2016-10-14 13:09:57 3270 0
1 条回答
写回答
取消 提交回答
  • 请问楼主最后解决了吗?我也碰到了相同问题,按照文档的流程并没有得到正确的签名

    2019-07-17 20:16:19
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Spring Boot2.0实战Redis分布式缓存 立即下载
CUDA MATH API 立即下载
API PLAYBOOK 立即下载