Безопасный и надежный способ сохранить зашифрованные данные и закрытый ключ в C # Dll - PullRequest
2 голосов
/ 23 февраля 2012

Вопрос о сохранении строки подключения самым безопасным способом.

Мой текущий подход (не смейтесь)
1. Написал программу RSAEncryption и передал строку подключения для генерации шифра.
2. СохраненоСайфер и закрытый ключ в файле ресурсов
3. Во время выполнения снова получен файл шифрования.

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

Пожалуйста, скажите мне, как лучшехранить строку подключения внутри dll.

С уважением, Омкар

1 Ответ

1 голос
/ 23 февраля 2012

В .NET встроен механизм шифрования разделов конфигурации. Прелесть в том, что вы можете использовать DPAPI и заставить сам компьютер создавать ключ, поэтому никто не знает, что это такое, кроме Windows. Лучше всего то, что вы получаете это в значительной степени бесплатно (небольшая кривая обучения), а с кривой обучения легко справиться с помощью быстрого поиска Google по шифрованию файлов конфигурации. Может не подходить для всех сценариев, но с большей вероятностью будет безопаснее, чем предполагаемая альтернатива.

Единственная проблема здесь, если это термоусадочная посуда (то есть, вы продаете программное обеспечение), но есть способы справиться с этим, если для установки требуется сеть и добавляются биты, которые они не могут знать, пока вы шифруете память во время установки. : -)

...