Суть в том, что вы не можете. Смотрите другие комментарии здесь по причинам. Даже программное обеспечение для шифрования, такое как PGP/GPG, хранит ключи в файле, а затем настоятельно призывает эти файлы хранить на флеш-накопителе в сейфе или что-то еще безопасное. Ключи, хранящиеся как часть исполняемого кода, будут обнаружены.
Фактически, если вы пытаетесь зашифровать что-либо на клиентской машине, которая будет дешифрована клиентом как часть обычных операций, это также является ошибкой дурака. Клиентские машины по своей сути небезопасны, и вы не можете контролировать то, что они собираются сделать с вашими данными.
Если вы пытаетесь аутентифицироваться, посмотрите на аутентификацию на основе Интернета с использованием логинов на сервере или какой-то сгенерированный KeyCode, который используется для проверки программного обеспечения.
Секретные ключи как часть публично-частной ключевой пары должны храниться в файлах данных, которые можно защитить. Симметричные ключи должны генерироваться «на лету» как сеансовые ключи, а затем отбрасываться. Всегда предполагайте, что любой, у кого есть секрет или ключ сеанса на своем компьютере, сможет обнаружить его и использовать его против ваших намерений.
Прочтите "Applied Cryptography" от Bruce Schneier для получения дополнительной информации.
Но как Adobe делает это с помощью Photoshop, например? – Jeena
Одно слово: безуспешно. – dmckee