Вам необходимо разработать утилиту (например, другое приложение java), которую вы не собираетесь распространять, которая кодирует ваш массив строк в виде зашифрованного или, по крайней мере, массива байтов или символов или в виде строки. Если вам нужно отредактировать список, который вы собираетесь редактировать и обновить это не выпущенное приложение.
Затем запустите его и получите закодированные / зашифрованные данные и скопируйте эти данные в ваше выпущенное приложение, чтобы оно стало скрытым между весь код. Вы даже можете разделить закодированные данные в нескольких разных местах.
Затем внедрите в свое выпущенное приложение код для извлечения и декодирования слова из этого списка (только по одному за раз, выполните необходимые действия и go для следующего, если вы расшифруете все слова, которые вы выставляете в списке, его трудно найти, потому что он находится в памяти, но ... он будет существовать в декодированном состоянии.
Все это не гарантирует 100 % защиты (как, вероятно, вы собираетесь включить расшифровку ключей и алгоритмов в свое выпущенное приложение), но значительно увеличивает сложность извлечения всего списка из вашего приложения, что, как я полагаю, вам нужно.
Кроме того, не храните закодированный список в файле, потому что обычно его легче найти. Если вы хотите использовать сервер, вам нужно избегать передачи всего списка (только слова за раз), вам нужно защитить API от злоупотреблений (слишком много запросов), и это будет медленнее, чем другой вариант, и склонен к автоматизации c e Экстракторы. В среднем серверное решение сложнее реализовать, чем первое.