SignedCode.Sign 메서드
[ Sign 메서드는 요구 사항 섹션에 지정된 운영 체제에서 사용할 수 있습니다. 대신 PInvoke(Platform Invocation Services)를 사용하여 Win32 API SignerSignEx, SignerTimeStampEx 및 WinVerifyTrust 함수를 호출하여 Authenticode 디지털 서명으로 콘텐츠에 서명합니다. PInvoke에 대한 자세한 내용은 플랫폼 호출 자습서를 참조하세요. P/Invoke를 통한 .NET 및 CryptoAPI: P/Invoke를 통한 1부 및 .NET 및 CryptoAPI:CAPICOM 및 P/Invoke를 사용하여 .NET 암호화 확장의 2부 하위 섹션도 유용할 수 있습니다.]
Sign 메서드는 Authenticode 디지털 서명을 만들고 SignedCode.FileName 속성에 지정된 실행 파일에 서명합니다.
구문
SignedCode.Sign( _
[ ByVal Signer ] _
)
매개 변수
-
서명자 [in, 선택 사항]
-
코드에 서명하는 데 사용되는 인증서의 프라이빗 키에 액세스할 수 있는 Signer 개체입니다. 기본값은 Null입니다.
반환 값
이 메서드는 값을 반환하지 않습니다.
설명
Sign 메서드를 호출하기 전에 코드를 포함하는 파일을 FileName 속성에 지정해야 합니다.
실행 파일이 이미 서명된 경우 이 메서드는 기존 서명을 덮어씁니다.
다음 결과가 Signer 매개 변수 값에 적용됩니다.
- Signer 매개 변수가 NULL이 아닌 경우 이 메서드는 연결된 인증서가 가리키는 프라이빗 키를 사용하여 서명을 암호화합니다. 인증서가 가리키는 프라이빗 키를 사용할 수 없는 경우 메서드가 실패합니다.
- Signer 매개 변수가 NULL이고 코드 서명 기능이 있는 프라이빗 키에 액세스할 수 있는 인증서가 CURRENT_USER MY 저장소에 정확히 하나의 인증서가 있는 경우 해당 인증서는 서명을 만드는 데 사용됩니다.
- Signer 매개 변수가 NULL이면 Settings.EnablePromptForCertificateUI 속성 값이 true이고 CURRENT_USER MY 저장소에 코드 서명 기능이 있는 사용 가능한 프라이빗 키가 있는 인증서가 두 개 이상 있는 경우 사용자가 사용할 인증서를 선택할 수 있는 대화 상자가 나타납니다.
- Signer 매개 변수가 NULL이고 Settings.EnablePromptForCertificateUI 속성이 false이면 메서드가 실패합니다.
- Signer 매개 변수가 NULL이고 코드 서명 기능이 있는 사용 가능한 프라이빗 키가 있는 CURRENT_USER MY 저장소에 인증서가 없으면 메서드가 실패합니다.
이 메서드는 SHA-1 해시 알고리즘을 사용합니다.
요구 사항
요구 사항 | 값 |
---|---|
재배포 가능 파일 |
Windows Server 2003 및 Windows XP의 CAPICOM 2.0 이상 |
DLL |
|