AmazonのAPIでHMACSHA256が必要になる件
AmazonのAPIを使う場合に認証コードが必要になる件だけど、HMACSHA256だからPHPだとこうだね。
<?php $data = 'GET webservices.amazon.com /onca/xml AWSAccessKeyId=00000000000000000000&ItemId=0679722769&Operation=ItemLookup&ResponseGroup=ItemAttributes%2COffers%2CImages%2CReviews&Service=AWSECommerceService&Timestamp=2009-01-01T12%3A00%3A00Z&Version=2009-01-06'; $secret_key = '1234567890'; $hash = hash_hmac('sha256', $data, $secret_key, true); var_dump(base64_encode($hash)); // string(44) "Nace+U3Az4OhN7tISqgs1vdLBHBEijWcBeCqL5xN9xg="
PHP 5.1.2から標準で使えるhash_hmac関数があるおかげで簡単。