Вам может понадобиться решение вашей проблемы под другим углом.
Я согласен с ответом Шоша в том, что независимо от того, что вы делаете, человек с необходимыми инструментами и знаниями сможет взломать ваш код и выяснить ваш личный ключ.
То, что вам нужно сделать, это либо вывести данные на экстернализацию, либо снизить риски, если будут обнаружены ваши закрытые ключи.
Лучший способ экстернализировать любые личные данные - это зашифровать их с помощью предоставленного пользователем пароля, который должен быть введен пользователем для использования. К сожалению, это не совсем разумно для большинства приложений.
Чтобы снизить риски, я обычно стараюсь обеспечить, чтобы в случае нарушения безопасности была нарушена только одна «установка».
Например, случайным образом генерировать данные закрытого ключа при установке.
Для клиент-серверных приложений вы можете использовать модель https и использовать обмен открытым / закрытым ключом для обмена случайно сгенерированным ключом шифрования.
Если у каждой клиентской установки есть свой собственный открытый / закрытый ключ, то сервер может определить, какие клиенты подключаются, а также, если есть проблема, они могут запретить клиентов.
Надеюсь, это поможет.