Voici la question qui est interne similaire à ce que vous demandez:
Provide secure Facebook authentication with my Server
Voici ce que je lui répondis là-bas:
Il est appelé attestation à distance. Il y a beaucoup de problèmes avec cela.
Avant d'aller dans cette direction, vous devez vous poser deux questions
Si vous vous protégez contre un étudiant ayant une connaissance très limitée, qui peut écrire une application mobile qui utilisera votre sever alors vous êtes très bien avec un secret partagé.
Si vous protégez contre un ingénieur logiciel un peu plus sophistiqué (qui peut faire de l'ingénierie inverse de votre application) - ce ne sera pas suffisant. Cet ingénieur peut extraire une secert de votre application et l'utiliser dans son application.
Vous pouvez lire à propos de l'attestation à distance here et here.
Les solutions qui peuvent vous protéger de la rétro-ingénierie simple sont assez complexes.