so i am writing an app for android which will push some data over to Amazon S3 storage to be later read. I am using Amazons SDK to make my calls but this requires me to store the public and private keys within my app. Is there a way to secure them so they couldn't be extracted by reverse engineering? Is it even possible since i will be making direct calls from the device? Or is my only option to run a proxy server (on EC2) and pass my data through it?

thanks for your help!

Source: View source