Odpowiedzi:
Magazyn certyfikatów systemu Windows jest (przeważnie) przechowywany w rejestrze, jak opisano tutaj . Jednak podczas gdy IE, Chrome, Safari / iTunes, Outlook itp. Używają magazynu certyfikatów systemu Windows, Firefox i Thunderbird korzystają z magazynu certyfikatów wieloplatformowych NSS. Opera korzysta także z własnego oddzielnego magazynu certyfikatów.
Jeśli chcesz uzyskać dostęp do magazynu certyfikatów Windows, powinieneś użyć Microsoft CryptoAPI. Jeśli chcesz uzyskać dostęp do magazynu certyfikatów NSS, możesz użyć biblioteki NSS .
W systemie Windows nie ma żadnego „folderu” certyfikatów; jest przechowywany w wewnętrznej bazie danych ( rejestrze systemu Windows ), którą tworzysz, korzystając ze sposobów wymienionych w pierwotnym pytaniu. Najłatwiejszym sposobem na uzyskanie dostępu do tej bazy danych jest po prostu umieszczenie certmgr.msc
w polu Start / Uruchom.
Jeśli jesteś naprawdę ciekawy, rzeczywiste wpisy rejestru znajdziesz w:
\SOFTWARE\Microsoft\SystemCertificates\
W HKEY_CURRENT_USER
przypadku certyfikatów specyficznych dla użytkownika i certyfikatów specyficznych HKEY_LOCAL_MACHINE
dla komputera będą to jednak nieczytelne binarne obiekty blob. Lepiej jest skorzystać z wymienionej wcześniej przystawki MMC .
Oto podsumowanie lokalizacji (klucze rejestru i pliki):
Poziom użytkownika (rejestr):
HKEY_CURRENT_USER\Software\Microsoft\SystemCertificates
: Zawiera certyfikaty ustawień dla bieżącego użytkownika.
HKEY_CURRENT_USER\Software\Policies\Microsoft\SystemCertificates
: Podobnie jak poprzednia lokalizacja, ale odpowiada to certyfikatom użytkownika wdrożonym przez obiekt zasad grupy (zasady grupy).
HKEY_USERS\SID-User\Software\Microsoft\SystemCertificates
: Odpowiada konfiguracji niektórych certyfikatów użytkownika. Każdy użytkownik ma swój oddział w rejestrze o identyfikatorze SID (Security Identifier).
Poziom komputera (rejestr):
HKEY_LOCAL_MACHINE\Software\Microsoft\SystemCertificates
: Zawiera certyfikaty ustawień dla wszystkich użytkowników komputerów.
HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\SystemCertificates
: Podobnie jak poprzednia lokalizacja, ale odpowiada to certyfikatom komputera wdrożonym w obiekcie GPO.
Poziom usług (rejestr):
HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography\Services\ServiceName\SystemCertificates
: Zawiera certyfikaty ustawień dla wszystkich usług na komputerze.
Poziom usługi Active Directory (rejestr):
HKEY_LOCAL_MACHINE\Software\Microsoft\EnterpriseCertificates
: Certyfikaty wydane na poziomie usługi Active Directory.
Są też foldery i pliki odpowiadające magazynie certyfikatów Windows.
Foldery są ukryte, a klucze publiczne i prywatne znajdują się w różnych folderach.
Certyfikaty użytkownika (pliki):
%APPDATA%\Microsoft\SystemCertificates\My\Certificates
%USERPROFILE%\AppData\Roaming\Microsoft\Crypto\RSA\SID
%USERPROFILE%\AppData\Roaming\Microsoft\Credentials
%USERPROFILE%\AppData\Roaming\Microsoft\Protect\SID
Certyfikaty komputerowe (pliki):
C:\ProgramData\Microsoft\Crypto\RSA\MachineKeys
Wyodrębniono z: http://www.sysadmit.com/2017/10/windows-donde-se-guardan-certificados.html
Certyfikaty są przechowywane w rejestrze pod adresem
HKLM/Software/Microsoft/SystemCertificates
Certyfikaty osobiste lub inne certyfikaty charakterystyczne dla zalogowanego użytkownika znajdują się pod adresem
HKCU/Software/Microsoft/SystemCertificates
Są one przechowywane jako binarne obiekty BLOB, więc należy je zdekodować, a wtyczka MMC jest dobrym sposobem na to.
HKLM/Software/Microsoft/SystemCertificates
iHKCU/Software/Microsoft/SystemCertificates
. Zwróć uwagę na brakujący system.