타사 CSP(암호화 서비스 공급자)의 Authenticode 서명
사용자 지정 CSP(암호화 서비스 공급자)에 대한 타사 Authenticode 서명은 Windows Vista 이상에서 사용할 수 있습니다.
따라서 Microsoft는 더 이상 CSP에 서명하지 않으며 수동 CSP 서명 서비스가 사용 중지되었습니다. 또는 서명할 cspsign@microsoft.comcecspsig@microsoft.com 전자 메일 및 CSP는 더 이상 Microsoft에서 처리되지 않습니다.
대신, 이제 다음 절차에 따라 모든 타사 CSP에 자체 서명할 수 있습니다.
- Microsoft가 교차 인증서를 발급하는 CA(인증 기관)에서 코드 서명 인증서를 구매합니다. 커널 모드 코드 서명에 대한 인증서 간 항목에서는 Microsoft에서 교차 인증서 및 해당 인증서 간을 제공하는 CA 목록을 제공합니다. 이는 Windows에서 타사 CSP를 실행할 수 있도록 하는 Microsoft에서 발급한 "Microsoft 코드 확인 루트"에 연결된 유일한 교차 인증서입니다.
- CA의 인증서와 일치하는 교차 인증서가 있으면 SignTool 을 사용하여 모든 CSP 이진 파일에 서명할 수 있습니다.
- SignTool은 최신 버전의 Visual Studio에 포함되어 있습니다. 또한 WDK 버전 7.0 이상 버전에도 포함되어 있습니다. 이전 버전의 WDK와 함께 제공되는 SignTool은 인증서 간과 호환되지 않으며 이진 파일에 서명하는 데 사용할 수 없습니다.
참고
Windows 8 시작하여 CSP에 서명해야 하는 것은 더 이상 필요하지 않습니다.
명령줄에서 이진 파일에 서명하거나 Visual Studio 2012 이상에서 통합 빌드 단계로 서명할 수 있습니다.
SignTool에 대한 명령은 다음과 같습니다.
signtool.exe sign /ac <cross-certificate_from_ms> /sha1 <sha1_hash> /t <timestamp_server> /d <”optional_description_in_double_quotes”> <binary_file.ext>
- <교차 certificate_from_ca> Microsoft에서 다운로드한 인증서 간 파일입니다.
- < > sha1_hash 코드 서명 인증서에 해당하는 SHA1 지문입니다.
- < > timestamp_server 서명 작업을 타임스탬프하는 데 사용되는 서버입니다.
- <"optional_description_in_double_quotes"> 은 선택적 식별 이름 설명입니다.
- <binary_file.ext> 는 서명할 파일입니다.
예:
signtool.exe sign /ac certificate.cer /sha1 553e39af9e0ea8c9edcd802abbf103166f81fa50 /t "http://timestamp.digicert.com" /d "My Cryptographic Service Provider" csp.dll
참고
이전 CSP 서명에 필요한 대로 리소스 ID #666을 CSP DLL에 포함하거나 레지스트리에 서명을 포함할 필요가 없습니다.
추가 도움말 및 지원
Windows Desktop용 애플리케이션 보안 포럼에서 도움을 받을 수 있습니다.