I have a need of a function/library that can quickly encrypt an image on a low-powered device (cell phone, tablet, etc).
I need to provide a string which can act as a password to encrypt and decrypt the image file.
Ideally, I would like something that retains the image file format and just scrambles the pixels. I have tried prototyping this and haven't been able to find an efficient method to do so (10-30 seconds to encrypt on a PC, crashes on device). The idea here is to visually show the user that their image has been encrypted. I realize that I may have to fake this feature, or do without it completely.
I need the image file to be encrypted on the client and sent to a server where it can be stored without the user worrying about who can access it. The encryption doesn't have to be terribly tough (referring to the NSA question). The image file will then later be downloaded by the user and decrypted with a password.
Is there anything out there that fits this description?