Жесткие строки вообще не безопасны.Извлечь все строки из файла .exe - тривиальное дело.
В памяти немного безопаснее.Современные операционные системы имеют много защиты памяти, чтобы предотвратить чтение / изменение памяти одним процессом другого процесса.Это не позволит шпионским программам считывать пароль из сегмента памяти другого процесса.
Пока ваш процесс хранит только незашифрованное значение в памяти (никогда не записывает его в файл, передает его, сохраняет в базе данныхи т. д.), это, вероятно, достаточно безопасно.
Для сверхсекретных данных вам нужно позаботиться о теплых перезагрузках.Это когда ваша программа хранит незашифрованные данные в памяти, затем пользователь перезагружает компьютер и начинает читать всю основную память.В таком случае память может по-прежнему содержать незашифрованную информацию.Тем не менее, это своего рода крайность, и (для большинства приложений) не стоит беспокоиться.
Подводя итог:
- незашифрованные данные в памяти = ok
- незашифрованныеданные жестко запрограммированы в файле .exe = плохо