Відповіді:
Зберігання сертифікатів Windows (в основному) зберігається в реєстрі, як зазначено тут . Однак, хоча IE, Chrome, Safari / iTunes, Outlook тощо використовують магазин сертифікатів Windows, Firefox та Thunderbird використовують міжсплатний магазин сертифікатів NSS. Opera також використовує власний окремий магазин сертифікатів.
Якщо ви хочете отримати доступ до магазину сертифікатів Windows, вам слід скористатися CryptoAPI від Microsoft. Якщо ви хочете отримати доступ до магазину сертифікатів NSS, ви можете використовувати бібліотеку NSS .
У Windows немає жодної "папки" сертифікатів; він зберігається у внутрішній базі даних ( реєстр Windows ), яку ви інтерфейсуєте, використовуючи способи, перелічені в оригінальному запитанні. Найпростіший спосіб дістатися до цієї бази даних - просто помістити certmgr.mscу поле для запуску / запуску.
Якщо вам справді цікаво, фактичні записи реєстру ви можете знайти в розділі:
\SOFTWARE\Microsoft\SystemCertificates\
Для HKEY_CURRENT_USERсертифікатів для користувачів та HKEY_LOCAL_MACHINEдля окремих машинних сертифікатів, але вони будуть нечитабельними бінарними краплями. Просто краще використовувати оснащення ММС, яке я перераховував раніше.
Ось підсумок місцезнаходження (ключі реєстру та файли):
Рівень користувача (реєстр):
HKEY_CURRENT_USER\Software\Microsoft\SystemCertificates: Містить сертифікати налаштувань для поточного користувача.
HKEY_CURRENT_USER\Software\Policies\Microsoft\SystemCertificates: Як і в попередньому місці, але це відповідає сертифікатам користувачів, розгорнутим груповою політикою (Групова політика).
HKEY_USERS\SID-User\Software\Microsoft\SystemCertificates: Відповідає конфігурації певних сертифікатів користувачів. Кожен користувач має свою філію в реєстрі з SID (ідентифікатором безпеки).
Комп'ютерний рівень (реєстр):
HKEY_LOCAL_MACHINE\Software\Microsoft\SystemCertificates: Містить сертифікати налаштувань для всіх користувачів комп'ютерів.
HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\SystemCertificates: Як і в попередньому місці, але це відповідає комп'ютерним сертифікатам, розгорнутим GPO.
Рівень обслуговування (реєстр):
HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography\Services\ServiceName\SystemCertificates: Містить сертифікати налаштувань для всіх служб на комп’ютері.
Рівень (реєстр) Active Directory:
HKEY_LOCAL_MACHINE\Software\Microsoft\EnterpriseCertificates: Сертифікати, видані на рівні Active Directory.
І є кілька папок і файлів, що відповідають магазину сертифікатів Windows.
Папки приховані, а відкриті та приватні ключі розташовані в різних папках.
Сертифікати користувачів (файли):
%APPDATA%\Microsoft\SystemCertificates\My\Certificates
%USERPROFILE%\AppData\Roaming\Microsoft\Crypto\RSA\SID
%USERPROFILE%\AppData\Roaming\Microsoft\Credentials
%USERPROFILE%\AppData\Roaming\Microsoft\Protect\SID
Комп'ютерні сертифікати (файли):
C:\ProgramData\Microsoft\Crypto\RSA\MachineKeys
Витягнуто з: http://www.sysadmit.com/2017/10/windows-donde-se-guardan-certificados.html
Сертифікати зберігаються в реєстрі за адресою
HKLM/Software/Microsoft/SystemCertificates
Особисті сертифікати або інші сертифікати, характерні для користувача, який увійшов у систему, є в
HKCU/Software/Microsoft/SystemCertificates
Вони зберігаються у вигляді бінарних крапок, тому їх потрібно розшифрувати, і плагін MMC - це хороший спосіб зробити це.
Дайте шанс PowerShell:
Get-Childitem Cert:\currentUser -Recurse | Format-Table -AutoSize PSPath, FriendlyName, DnsNamelist
HKLM/Software/Microsoft/SystemCertificatesіHKCU/Software/Microsoft/SystemCertificates. Зверніть увагу на відсутні системи.