我在这里关注官方的 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));
}