Наше приложение имеет XML-файл, который содержит информацию для правильной работы приложения.Этот файл генерируется нашим веб-сервером API и отправляется клиентскому приложению.Клиентское приложение должно иметь возможность чтения из этого файла, но мы не хотим, чтобы наши пользователи видели или модифицировали его.Этот файл существует в их файловой системе в течение определенного периода времени, в то время как они должны будут читать из него.В этом случае они отключены от Интернета или сети.Конечно, мы можем зашифровать его на нашем сервере перед отправкой, но остается вопрос о дешифровании.
Если я использую метод с открытым / закрытым ключом, это бессмысленное усилие, потому что мне нужно сохранитьзакрытый ключ где-то с клиентом.Мой другой вопрос заключается в следующем: зачем мне нужно хранить открытый ключ на сервере?(особенно если этот файл генерируется очень часто с новой парой секретный / открытый ключ при повторном запросе файла с сервера).
Я мог бы использовать симметричный алгоритм, но снова мне нужно что-то хранить склиент.
Я также думал о создании хэша для файла, но мне снова пришлось бы хранить соль с клиентом, чтобы вычислить тот же хеш и сравнить, если файл был подделан (таким образом, непредлагая шифрование, но, по крайней мере, способ узнать, что оно было изменено).
В конце дня я ищу решение, которое просто не дает нашим пользователям видеть очевидное явление.
Я просмотрел все материалы по XMLEncryption в статьях Msdn и SO, все они требуют какого-то управления ключами, но есть ли другие решения для этого сценария?Или я застрял, храня закрытый ключ с клиентом, чтобы они могли расшифровать файл?