이 certmgr.msc
유틸리티를 사용하면 Windows 인증서 저장소에 액세스 할 수 있지만 Windows가 개인 키를 저장하는 위치는 여전히 알 수 없습니다.
예를 들어 특정 인증서에 대해 Windows는이 인증서와 관련된 개인 키가 있다고 알려줍니다. 하지만 어디서 물리적으로 찾을 수 있습니까?
이 certmgr.msc
유틸리티를 사용하면 Windows 인증서 저장소에 액세스 할 수 있지만 Windows가 개인 키를 저장하는 위치는 여전히 알 수 없습니다.
예를 들어 특정 인증서에 대해 Windows는이 인증서와 관련된 개인 키가 있다고 알려줍니다. 하지만 어디서 물리적으로 찾을 수 있습니까?
답변:
키는 Microsoft의 암호화 API : 차세대 (CNG) 를 통해 저장됩니다 .
보관 위치 :
%APPDATA%\Microsoft\Crypto\Keys
%ALLUSERSPROFILE%\Application Data\Microsoft\Crypto\SystemKeys
%WINDIR%\ServiceProfiles\LocalService
%WINDIR%\ServiceProfiles\NetworkService
%ALLUSERSPROFILE%\Application Data\Microsoft\Crypto\Keys
기술:
CNG는 공개 키 또는 개인 키 암호화와 같은 암호화 기능을 사용하는 응용 프로그램을 만드는 현재 및 미래의 요구와 키 자료의 저장 요구에 적응할 수있는 개인 키 저장소 모델을 제공합니다. 키 저장소 라우터는이 모델의 핵심 루틴이며 Ncrypt.dll에서 구현됩니다. 응용 프로그램은 키 저장소 라우터를 통해 시스템의 KSP (키 저장소 공급자)에 액세스합니다.이 저장소 라우터는 키 격리와 같은 세부 정보를 응용 프로그램과 저장소 공급자 모두에서 숨 깁니다. 다음 그림은 CNG 키 격리 아키텍처의 디자인 및 기능을 보여줍니다. 출처
참고 :
Tim G가 언급했듯이 키는 CNG API를 통해 키를 저장하는 과정에서 암호화되므로 파일 수준에서 읽을 수 없습니다.