Почему я не могу правильно вычислить авторизацию Amazon S3

Я следую официальной документации 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));
}

person sysrpl    schedule 17.05.2012    source источник


Ответы (1)


Хорошо, я нашел проблему. Ключи, использованные в примерах, неверны.

person sysrpl    schedule 17.05.2012
comment
Я не вижу ответа от Amazon, подтверждающего проблему. - person Joshua Drake; 21.05.2012