Нет способа гарантировать, что данные, полученные вашим сервером, получены из законной версии вашего Java-приложения.Если вы используете любую форму шифрования, ключ должен храниться где-то в вашем байт-коде приложения.Кроме того, не очень сложно взломать клиентское приложение и позволить ему отправлять недействительные данные.
Правильный подход - помнить, что на стороне сервера ваши данные могут не поступать изправильный источник и, следовательно, вам нужно будет проверить все данные, чтобы убедиться, что ничего незаконного не делается.
Если вы просто хотите гарантировать, что законные пользователи, использующие ваше клиентское приложение, могут быть уверены, что они общаются сваш сервер, вы можете использовать HTTPS или другой метод, использующий асимметричное шифрование.