2

我在这里关注官方的 Amazon S3 REST API 文档,并且在计算它们在示例中显示的相同授权值时遇到问题。他们在第一个示例中显示的 base64 HMAC-SHA1 哈希是:

xXjDGYUmKxnwqr5KXNPGldn5LbA=

但我不断提出:

bWq2s1WEIj+Ydj0vQ697zp+IXMU=

我在这里扯头发。我可能做错了什么?

从他们的第一个例子:

static string TestS3(string key, string request) 
{
  var hash = new HMACSHA1(Encoding.UTF8.GetBytes(key));
  var data = hash.ComputeHash(Encoding.UTF8.GetBytes(request));
  return Convert.ToBase64String(data);
}

static void Main(string[] args)
{
  string key = "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY";
  string request = "GET\n\n\nTue, 27 Mar 2007 19:36:42 +0000\n/johnsmith/photos/puppy.jpg";         
  Console.Write(TestS3(key, request));
}
4

1 回答 1

0

好的,我发现了问题。示例中使用的键是错误的。

于 2012-05-17T20:22:47.140 回答