Problem: I need to store a SECRET key (String) locally on the device. How do i reasonably do this?
It is impossible to keep something 100% securely private that is stored locally but I want to make it as difficult as possible for someone to extract the secret key. What are my options?
Requirements
- There should be no UI operations involved.
- The secret key should not be extractable in an trivial way.
Possible solutions
obfuscation
Android KeyChain class http://developer.android.com/reference/android/security/KeyChain.html http://nelenkov.blogspot.com/2011/11/using-ics-keychain-api.html
I think KeyChain requires user interaction so it wouldnt work.