Chilkat HOME ASP Visual Basic VB.NET C# Visual C++ C MFC Delphi FoxPro Java Perl PHP Python Ruby SQL Server VBScript
HMAC SHA1 for Amazon S3Demonstrates the HMAC SHA1 computation required by the Amazon S3 web service. require 'chilkat' # 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 = Chilkat::CkCrypt2.new() success = crypt.UnlockComponent("Anything for 30-day trial.") if (success != true) # Unlock Failed. print crypt.lastErrorText() + "\n" exit end # We want SHA1 for the HMAC hash algorithm: crypt.put_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.put_Charset("utf-8") # Indicate that Base64 output is desired: crypt.put_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-2008 Chilkat Software, Inc. All Rights Reserved.