сохранение ключа в настройках приложения - PullRequest
0 голосов
/ 11 августа 2009

Я начинаю использовать класс криптопотоков. Я могу ошибаться, если вы что-то зашифруете, закроете приложение, а затем попытаетесь расшифровать его, оно не сможет, потому что будет сгенерирован другой ключ. Мне нужна эта функциональность, поэтому мне интересно, можно ли сохранить ключ в настройках приложения и правильно ли это сделать?

Ответы [ 2 ]

1 голос
/ 11 августа 2009

Если вы всегда запускаете приложение под одной и той же учетной записью пользователя (это может быть локальный пользователь или пользователь домена), лучшим вариантом будет использование DPAPI . Преимущество использования DPAPI заключается в том, что вам не нужно беспокоиться о ключе (система генерирует его для вас). Если вы запускаете приложение под разными именами пользователей, оно становится более сложным, потому что доступные варианты варьируются от плохого до худшего (главная проблема: как защитить свой секрет: ключ, пароль, пароль и т. Д.). В зависимости от того, что вы хотите сделать, вам может вообще не понадобиться использовать шифрование (например, если вы хотите зашифровать строку подключения, рассмотрите возможность использования встроенной аутентификации Windows, которая не требует пароля). Дополнительные сведения по этой теме см. В статье MSDN: Защитите строки подключения к базе данных и другие важные параметры в вашем коде ; это может дать вам некоторые идеи.

1 голос
/ 11 августа 2009

Многие приложения сохраняют ключи в конфигурационных файлах. Это плохая практика.

Это небезопасно, но все безопасные опции сложно реализовать. Есть варианты с использованием разных факторов,

  1. Вы можете получить ключ из пароля, используя PBE (шифрование на основе пароля). Но вы должны ввести пароль для запуска приложения. Это так называемый фактор «Что вы знаете».

  2. Вставьте ключ в смарт-карту. Это очень безопасно, но у вас должен быть доступ к карте на машине. Это называется "Что у тебя есть".

Игнорировать другие схемы, использующие ключи шифрования с еще одним ключом. Это на самом деле не меняет силы безопасности.

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