s3tools/s3cmd — pull request #13 by firstclown (2011-11-16 14:27:09+00:00)
Title: Pickle encryption

Encryption during sync modified to use an auxiliary file to store the MD5s needed to check changes between the files. There is now a pickled dictionary mapping the encrypted file's MD5 against the decrypted file's MD5 stored at ~/.s3metadata.

I have tested it with a put with --encrypt and then doing a sync with --encrypt and it will only move changed files. I have also tested get and sync back to local and decrypting works successfully in both cases. (You do need to specify --encrypt when doing the sync to local, so that s3cmd knows not to check the file size before syncing).

Let me know if you have any questions or suggestions on this. I am running my backup with it with over 15,000 files and it is a lot better than the HEAD version ;)