API защиты данных

редактировать

DPAPI (Программирование приложений защиты данных Интерфейс) - это простой криптографический интерфейс прикладного программирования, доступный как встроенный компонент в Windows 2000 и более поздних версиях Microsoft Windows операционные системы. Теоретически API защиты данных может обеспечить симметричное шифрование любых данных; на практике его основное использование в операционной системе Windows - симметричное шифрование асимметричных закрытых ключей с использованием секрета пользователя или системы в качестве значительного вклада энтропии. Подробный анализ внутренней работы DPAPI был опубликован в 2011 году Бурштейн и др.

Практически для всех криптосистем одной из самых сложных проблем является «управление ключами». «- в частности, как надежно хранить ключ дешифрования. Если ключ хранится в виде обычного текста, то любой пользователь, имеющий доступ к ключу, может получить доступ к зашифрованным данным. Если ключ должен быть зашифрован, нужен другой ключ и так далее. DPAPI позволяет разработчикам шифровать ключи, используя симметричный ключ, полученный из секретов входа пользователя в систему, или, в случае системного шифрования, используя секреты аутентификации домена системы.

Ключи DPAPI, используемые для шифрования ключей RSA пользователя, хранятся в каталоге % APPDATA% \ Microsoft \ Protect \ {SID}, где {SID} - это идентификатор безопасности этого пользователя. Ключ DPAPI хранится в том же файле, что и главный ключ, который защищает личные ключи пользователей. Обычно это 64 байта случайных данных.

Содержание
  • 1 Свойства безопасности
  • 2 Использование DPAPI программным обеспечением Microsoft
  • 3 Ссылки
  • 4 Внешние ссылки
Свойства безопасности

DPAPI не хранит никаких постоянных данных для себя; вместо этого он просто получает открытый текст и возвращает зашифрованный текст (или наоборот).

Безопасность DPAPI зависит от способности операционной системы Windows защитить главный ключ и закрытые ключи RSA от компрометации, что в большинстве сценариев атак в наибольшей степени зависит от безопасности учетных данных конечного пользователя.. Основной ключ шифрования / дешифрования получается из пароля пользователя с помощью функции PBKDF2. Конкретные данные больших двоичных объектов могут быть зашифрованы таким образом, что добавляется salt и / или требуется внешний пароль, запрашиваемый пользователем (он же «Надежная защита ключа»). Использование соли является вариантом реализации, т. Е. Под контролем разработчика приложения, и не контролируется конечным пользователем или системным администратором.

Делегированный доступ к ключам может быть предоставлен с помощью объекта COM +. Это позволяет IIS веб-серверам использовать DPAPI.

Использование DPAPI в программном обеспечении Microsoft

Хотя он не реализован повсеместно во всех продуктах Microsoft, использование DPAPI в продуктах Microsoft увеличивалось с каждой последующей версией Windows. Однако многие приложения от Microsoft и сторонних разработчиков по-прежнему предпочитают использовать собственный подход к защите или только недавно перешли на использование DPAPI. Например, Internet Explorer версий 4.0-6.0, Outlook Express и MSN Explorer использовали старый API защищенного хранилища (PStore) для хранения сохраненных учетных данных, таких как пароли и т. Д.. Internet Explorer 7 теперь защищает сохраненные учетные данные пользователя с помощью DPAPI.

Ссылки
Внешние ссылки
Последняя правка сделана 2021-05-17 14:08:50
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте