한 돌로 두 마리를 죽이려고합니다. 저는 인증서에 정통하지 않습니다. 어떻게 작동합니까? 내 회사 웹 사이트 용 SSL 인증서를 사용하여 내 어셈블리에 서명하고 신뢰할 수있게 할 수 있습니까? 나는 생각하지 않는다. 그러나 그것이 가치가있는 것이었다라고 생각했다.내 어셈블리에 SSL 인증서를 서명 할 수 있습니까?
3
A
답변
6
코드 ()에 개인 키가있는 코드로 어셈블리 (및 모든 Windows dll 또는 exe)에 서명 할 수 있습니다.
웹 사이트 (인증) 인증서가 코드 서명에 사용될 수 있도록 올바른 "사용"속성을 가지고 있지 않은 경우가 아주 드물게 있지 않는 한.
자세한 내용은 서명을해야합니다. Everything you need to know about Authenticode Code Signing.
1
리차드가 말한 것 외에도 강력한 이름 ("원시"개인 키가있는 어셈블리 서명)과 Authenticode 서명을 구별해야합니다. Strong-naming은 .NET 어셈블리에만 해당되며 Authenticode는 PE 파일 (및 일부 다른 파일 형식)에도 서명하는 데 사용됩니다.
또한 Authenticode를 사용하여 어셈블리에 서명하는 경우 어셈블리가로드 될 때 지연 될 준비를하십시오. 이는 .NET Framework가 서명의 유효성을 검사하고 선택적으로 CRL을 검색하고 어셈블리가로드 될 때마다 OCSP 검사를 수행하기 때문입니다. 따라서 이 어셈블리에 서명해야하는 경우가 아니면 성능상의 이유로이 단계를 건너 뛸 수 있습니다.
우리의 Secureblackbox 제품에는 모든 어셈블리가 서명되었지만 일부 고객은 어셈블리가 단순히로드되지 않을 것이라고보고했으며 이는 서명 유효성 검사와 관련이 있음을 나타 냈습니다. 그래서 우리는 authenticode 서명을 제거하고 오직 .NET의 강력한 이름을 유지했습니다.
조직 유효성이 검증 된 SSL 인증서 (회사 이름 포함)는 어떻게됩니까? –
@ JoshM : 조직의 SSL 인증서에 코드 서명을 위해 플래그가 지정되어 있으면 사용할 수 있으며, 플래그가 지정되지 않으면 서명 할 수 없습니다. 인증서의 신뢰 범위는이 점과 별 차이가 없습니다. – Richard
알겠습니다. 고마워요. –