Одним из возможных способов сделать это будет включение ключа дешифрования в начале файла, а ключ был переработан каким-то образом, который вы можете определить из ключа. Одна из возможностей заключалась бы в том, чтобы выбрать, например, шестнадцать разных вещей, 0, скажем, повернуть первые два байта до конца; 1 - вращение последних двух байтов спереди; 2 - добавить 1 к каждому байту; и т. д. для 14 дополнительных функций. Теперь добавьте это значение перед ключом как «флаг обработки».
Первый байт ключа затем будет таблицей ветвей в одну из 16 различных подпрограмм, чтобы сказать, что делать с ключом. Обратите внимание, что флаг перепрограммирования не должен быть первым байтом, он может быть любым байтом в ключе, если вы помните, что вы удаляете этот байт при обработке ключа.
Затем вы обрабатываете ключ в соответствии с любым алгоритмом дешифрования, который вы использовали бы.
Теперь, учитывая этот флаг перепрограммирования, особенно если весь ключ был в шестнадцатеричном формате, потребовалось бы, чтобы кто-то следовал логике, чтобы определить, какая из 16 различных функций выполняет ваш код, а затем выяснить способ дешифрования. Это не остановит всех, но это, вероятно, сделает довольно хорошую работу, отгоняя всех, кроме самых решительных.
Кто такой Винс и почему он задал этот самый вопрос? http://stackoverflow.com/questions/559995/encrypting-config-files-for-deployment-net – spender