Chilkat HOME ASP Visual Basic VB.NET C# C C++ MFC Delphi FoxPro Java Perl Python Ruby SQL Server VBScript
HMAC SHA1 for Amazon S3Demonstrates the HMAC SHA1 computation required by the Amazon S3 web service.
<?php // This example uses sample data from: // http://docs.amazonwebservices.com/AmazonS3/2006-03-01/RESTAuthentication.html $strToSign = 'GET' . "\n" . "\n" . "\n" . 'Tue, 27 Mar 2007 19:36:42 +0000' . "\n" . '/johnsmith/photos/puppy.jpg'; $crypt = new COM("Chilkat.Crypt2"); $success = $crypt->UnlockComponent('Anything for 30-day trial.'); if ($success != true) { // Unlock Failed. print $crypt->lastErrorText() . "\n"; exit; } // We want SHA1 for the HMAC hash algorithm: $crypt->HashAlgorithm = 'sha1'; $AWSAccessKeyId = '0PN5J17HBGZHT7JJ3X82'; $AWSSecretAccessKey = 'uV3F3YluFJax1cknvbcGwgjvx4QpvB+leU8dUj2o'; // Set the HMAC secret key: $crypt->SetHmacKeyString($AWSSecretAccessKey); // By setting the charset = "utf-8", the string will be converted // to utf-8 (internal to the Chilkat component) prior to signing: $crypt->Charset = 'utf-8'; // Indicate that Base64 output is desired: $crypt->EncodingMode = 'base64'; $signature = $crypt->hmacStringENC($strToSign); print $crypt->lastErrorText() . "\n"; // Display the signature as part of the HTTP Authorization header: print 'Authorization: AWS ' . $AWSAccessKeyId . ':' . $signature . "\n"; print 'Expected: AWS 0PN5J17HBGZHT7JJ3X82:xXjDGYUmKxnwqr5KXNPGldn5LbA=' . "\n"; ?> |
Need a specific example? Send a request to support@chilkatsoft.com
© 2000-2010 Chilkat Software, Inc. All Rights Reserved.