Я занимаюсь разработкой приложения на C #, которое НЕ МОЖЕТ подключиться к Интернету.
Это приложение создаст файл конфигурации для моего оборудования.
я хочу быть уверен, что когда я передаю файл конфигурации моему помощнику, он не меняет его и помещает в аппаратное обеспечение файл с другой конфигурацией.
Чтобы избежать этого, я сейчас использую простой метод.
В коде у меня есть ключ: abcd123
Мое приложение создает файл конфигурации, а затем:
HASH файл конфигурации и шифрует HASH ключом: abcd123, хранящимся в
строковая переменная KEY
передать файл конфигурации моему помощнику, который загружает его в аппаратное обеспечение
Теперь аппаратное обеспечение имеет KEY abcd123, оно дешифрует конфигурацию и HASH полезную нагрузку. Если 2 хэша - то же самое, я предполагаю, что мой помощник не изменил файл конфигурации.
Что меня беспокоит, так это то, что хранилище KEY в коде в .NET очень легко восстановить без запутывания.
Таким образом, я купил Crypto Obfuscator , но я не знаю, насколько мой ключ в безопасности.
Я не достаточно опытен, чтобы декомпилировать мою программу и посмотреть, все еще открыт ключ или нет.
Какими методами вы можете предложить мне, чтобы Я НАСТОЯТЕЛЬНО гарантировал, что мой ключ «безопасен»?
Я понимаю, что нет никакого способа защитить это, но я просто хочу разумную дополнительную безопасность для моей автоматической маскировки, о которой я не знаю много.
Надеюсь, я прояснил ситуацию, но прошу разъяснений.