Для этого не существует простого или действительно герметичного решения.
Но прежде всего для связи с бэкэндом следует, по крайней мере, использовать SSL-шифрование, чтобы минимизировать риск для атакующего в середине.
Одним из способов будет создание уникального идентификатора при первом запуске и использование того же алгоритма на сервере для проверки, создавая, таким образом, свой собственный токен доступа к бэкэнду. Однако если ваш алгоритм слаб или кто-то декомпилирует ваше приложение, он может узнать, как вы генерируете свой идентификатор.
Вы должны хотя бы использовать шифрование ша, md5 начинает ослабевать в наши дни.
Exampel для очень простой генерации токенов, не используйте это в своем коде;
String salt = "twsg23s¤#"; //a random generated string (must be the same on the server and client
String token = sha1(sha1(facebookid + salt) + salt); //this will be your token
Затем вы генерируете тот же токен на стороне сервера и сравниваете токен клиента с токеном сервера.
Я должен подчеркнуть: Если ваша соль обнаружена и / или ваш алгоритм слаб, у вас будет огромная дыра в безопасности в вашей системе.