storage - Don't want to store the secret Facebook/Twitter API key on mobile devices, design patterns? -


i have issue letting secret api key on world on potentially thousands of mobile devices. compromised , used malicious purposes hacker.

so options me? guess private server has secret api key , web service encapsulates method calls. instead of mobile device having secret key , like:
list<friends> = service.getfriends(secretkey);

if secret api key compromised , used spamming/abuse purposes, must shut down use users, leaving application dead in sea.

so idea can use mobile device unique device id , do:
list<friends> = myservice.getfriends(deviceid);

of course, malicious hacker call web service fake deviceid, @ least have control blacklist deviceid's. introduces potential bandwidth isssue, of less concern.

a true pki out of question, since targetted device doesn't handle http client certificates in current version.

any other ideas?

you don't want publish api key facebook or twitter, obfuscated within client.

your instincts correct proxy through service control. limiting access service - how risk unauthorized use? device id pretty clue device/user identity, can faked.

there stronger authentication methods use (sms auth, etc) establish long-term session or device key, these more complex , impose higher burden on end user.

tl;dr

protect platform api keys. secure own api enough protect needs.


Comments

Popular posts from this blog

android - Spacing between the stars of a rating bar? -

html - Instapaper-like algorithm -

c# - How to execute a particular part of code asynchronously in a class -