2011-01-25 3 views
-1

Мы пишем набор приложений для окон, который содержит панель инструментов IE, панель инструментов Firefox и клиент Windows Desktop.Общая, но безопасная память между 3 различными приложениями (Windows)

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

Теперь задача для нас состоит в том, что мы должны использовать тот же секретный код, чтобы расшифровать его данные, пока он использует все 3 компонента. В настоящее время мы пишем этот секретный ключ в обычном файле с AES-шифрованием с определенным ключом, в исходном коде и все 3 компонента доступа к этому ключу из этого файла.

Теперь, пожалуйста, предложите мне лучший способ в свете следующих ограничений/требований.

  1. Все 3 компонента полностью/частично написаны на .Net.
  2. IE использует защищенный режим, поэтому доступ к высокоприоритетному ресурсу невозможен
  3. данные пользователя зашифрованы его собственным ключом безопасности, поэтому нам необходимо, чтобы у него был ключ для дешифрования его данных. и когда он уходит, мы теряем этот ключ, чтобы обеспечить безопасность.
  4. Все 3 компонента работают в низкоприоритетных процессах.

Может ли кто-нибудь помочь мне в этом.

С уважением

+0

'Secure' от чего? Какова ваша модель угрозы? –

ответ

2
+0

Это похоже на ответ. Спасибо за ответ. Попробую, дайте знать. Большое спасибо –

+0

Это правильный ответ. Но я также нашел файлы карты памяти, которые выглядят более безопасным способом, http://www.pinvoke.net/default.aspx/kernel32.createfilemapping , но я столкнулся с проблемой, которая является одним из моих компонентов IE Toolbar, и когда мы находимся в защищенном режиме, он генерирует «исключение нарушения доступа» в функции OpenFIle, пожалуйста, поделитесь чем-то с этим, если у вас есть опыт в этом. Большое спасибо –