Ваш вопрос состоит из двух частей. 1-й: Как сохранить данные? 2-й: Как их защитить?
Существует множество способов сохранения данных. От простого XML, сериализации Java до собственного формата данных. Нет способа, как предотвратить реверс инженерных данных, просто «простым текстом». Вы можете просто сделать это сложнее, но не невозможно. Чтобы сделать это совершенно невозможным, вам нужно использовать надежное шифрование, и здесь возникает проблема. Как зашифровать данные и не раскрывать безопасный токен. Если вы распространяете защищенный токен вместе со своим приложением, найти его - это только вопрос времени, и проблема решена. Поэтому ввод безопасного токена во время установки не возможен. Если пользователь должен пройти аутентификацию для использования приложения, это должно помочь, но это та же проблема. Следующим вариантом является использование настраиваемого защищенного алгоритма биекции для запутывания данных. И последний вариант - ничего не делать, просто сохранять формат данных закрытым, не публиковать их и не запутывать свое приложение, чтобы избежать обратного инжиниринга.
Наилучшим значением является простая обфускация данных (простое число XOR) с пользовательским форматом данных и запутанным приложением.