Vb6 code for Amazon S3 Simple Storage Solution

Looking for working Vb6 code to access Amazon S3 Simple Storage Solution via HTTP.
I have a AccessKey and SecretKey that I have been using with JungleDisk for several years.
I have tried sample code at http://blog.gobansaor.com/2008/02/22/xlaws-excel-vba-code-for-accessing-amazons-s3-and-simpledb/ but it is not working (Error - "The request signature we calculated does not match the signature you provided. Check your key and signing method.").

Class for HMAC_SHA256 was found here. Added method for HMAC_SHA1 which was confirmed OK via online HMAC_SHA1 generators.

The problem is putting all the pieces together correctly for the request. HMAC_SHA1, Base64, MD5, etc.
Currently trying with CreateObject("MSXML2.XMLHTTP") Open/Send

Looking for any of the following:
1. GetService - Retrieve bucket names.
2. GET file info
3. Download file.
4. Upload file.
5. How is versioning handled.
LVL 22
Who is Participating?
does amazon have api for that, it should be the first place you should look. you can post the code you used and the api here so that have a look at the problem
danaseamanAuthor Commented:
Already looked there. Amazon has SDK and API for Java, .Net, and other languages but nothing for Vb6. Looked at cSocketMaster for communicating with server but I don't think it is 100% reliable. Looks like it is going to be a chore to put this all together.
also note that its a paid service, and as such if you develop for it without something like an api key, you program might not work as expected
danaseamanAuthor Commented:
As mentioned in first post I have the keys for Amazon S3 since I have been using the service for several years via JungleDisk client.
It is a paid service but it's very cheap and I think new users get 5Gb free.
See http://aws.amazon.com/s3/#pricing

Thanks for those links. I was already able to connect using legacy Hmac_Sha1 crypto. Now I'm off to implementing the more secure Hmac_Sha256.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.