Должен ли я зашифровать сериализованный файл? - PullRequest
2 голосов
/ 18 декабря 2011

У меня есть проект по искусственному интеллекту, он обучил нейронные сети (нейронные сети - это некоторые классы и структуры в моей программе).Я сериализирую структуры, используя System.Runtime.Serialization.Formatters.Binary.BinaryFormatter класс.

Когда пользователь запускает программу, он десериализует классы, чтобы получить ответ от нейронных сетей.(ничего нового не нужно сериализовать)

Это проект с искусственным интеллектом, а не с открытым исходным кодом.Итак, я не хочу, чтобы кто-нибудь получал доступ к моим нейронным сетям.

Должен ли я шифровать сериализованные файлы?И насколько это безопасно?

Будет ли это мешать другим видеть переменную на нем?

Могут ли другие люди использовать мою программу для шифрования моейзашифрованные файлы?как предотвратить это сделать?

1 Ответ

5 голосов
/ 18 декабря 2011

Если вы: только вы можете ответить на это; если незаконное присвоение представляет собой реальный риск, тогда обязательно.

Надлежащее шифрование не позволит никому без ключей получить легкий доступ к любому содержимому, поэтому, действительно, содержимое будет непрозрачным. Однако есть две проблемы:

  • защита ключей самих от взятия
  • риск решительного хакерского перебора ключей

Повторное использование программы для расшифровки; это зависит от того, где вы храните ключи. Если ключи находятся в самой программе, то, даже если они запутаны, они уязвимы.

Для полной и точной оценки обратитесь к уважаемому консультанту по информационной безопасности.

Могу также заметить, что вы можете быть осторожнее, используя BinaryFormatter; это может быть очень хрупким, когда вы повторно выпускаете приложение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...