2013-05-14 13 views
11

Używam DPAPI do przechowywania danych XML. Dane po CryptProtectData są przechowywane w pliku. W jednym z przypadków użycia te dane muszą zostać odszyfrowane, zanim dowolny użytkownik zaloguje się na stacji roboczej. Ponieważ nie mogę użyć w tym celu klucza użytkownika, ustawiam flagę "CRYPTPROTECT_LOCAL_MACHINE" podczas szyfrowania. Klucz Entropy to tekst statyczny.DPAPI: Używanie CryptUnprotect przed zalogowaniem użytkownika w

Funkcja "Wyłącz" działa we wszystkich scenariuszach, z wyjątkiem sytuacji, gdy wywołuję ją przed zalogowaniem (żaden użytkownik nie jest zalogowany). Powracający błąd 87 (paramter jest niepoprawny).

Ponownie przeczytam całą dokumentację DPAPI, aby zobaczyć, jak generowane są klucze. Niestety nie ma wystarczających informacji na temat tej konkretnej flagi.

Czy CryptUnprotectData będzie działać w tym scenariuszu? Czy może być wywołana przez aplikacje działające w ramach pewnej sesji użytkownika? Każda pomoc jest doceniana.

Dzięki, D

+0

Czy mówisz o 'CryptProtectData' i' CryptUnprotectData'? – Steve

+0

@Steve, tak samo .. –

+0

Czy próbowałeś zamiast tego używać 'CryptEncrypt' i' CryptDecrypt'? –

Odpowiedz

1

Używamy DPAPI przechowywać hasło wymagane przez usługę:

  • Szyfrowanie z CRYPTPROTECT_LOCAL_MACHINE | CRYPTPROTECT_UI_FORBIDDEN.

  • deszyfrowanie z CRYPTPROTECT_UI_FORBIDDEN

uruchomienia usługi podczas uruchamiania systemu (to znaczy przed logowania); wszystko działa dobrze.

1

Dokumentacja Microsoft jest w tym punkcie niejasna. Passcape zrobił bardzo dobry napis o nazwie DPAPI Secrets.

Odpowiednia sekcja za pytanie jest Recovering wireless connection passwords in Windows 7, który opisuje szczegółowo dane wymagane do deszyfrowania:

  1. „System Master Key z folderu E:/Windows/System32/Microsoft/Protect/S-1-5-18/User” pliki
  2. Dwa rejestru: „system” i " BEZPIECZEŃSTWO "

Na podstawie nazw nie byłbym zaskoczony, gdyby pliki te były chronione przez system operacyjny i dostępne tylko dla zalogowanych użytkowników, ale ktoś inny mógłby je potwierdzić.

Powiązane problemy