2013-05-29 3 views
2

Windows 8 앱에서 작업 중이며 런타임에 생성되는 인증서를 패키지화 할 수 없습니다. 동적으로 생성 된 인증서를 사용할 수 있습니까? 그렇다면 Websocket/StreamSocket 수준에서 사용할 수 있습니까?ssl 연결을 위해 동적으로 생성 된 인증서

+1

클라이언트 측 인증에 사용하고 있습니까? 아니면 ...? –

+0

예, 클라이언트 측 인증에 필요합니다. – sgowd

+1

런타임에 PKI 인증서를 생성해도 실제로 보안이 보장되지 않습니다. 누가 그들을 믿을 것입니까? 왜 그럴까요? PKI 인증서는 고유 한 엔터티를 안정적으로 식별해야합니다. 런타임의 생성은이를 위반합니다. – EJP

답변

0

RSA 등의 공개 키 암호화 방식은 일반적으로 안전하지만, 공개 키의 유효성에 의존 할 (++ 바람직 C)에 매우 도움이 될 것입니다 코드를 맛볼 수 언급. 따라서 목록 공개 키 http://en.wikipedia.org/wiki/Certificate_authority을 발행하는 많은 인증 기관이 있습니다. 그들이 그렇게 할 때, 그들은 그 주체가 정말로 주인이라고 주장하는 주체에 속한다는 것을 "증언"합니다. 런타임에 키를 발행하는 것은 의미가 없습니다. 키가이 사람으로부터 온 것임을 검증 할 수 없기 때문입니다.

+0

인증서가 CA에 의해 서명되지 않았습니다. 클라이언트 측 인증을 위해 고객이 서명합니다. 고객은 자사의 소프트웨어를 실행하여 서명합니다. – sgowd

0

나는 내 자신의 질문에 대답하고있다. Windows 8 metro api는 csr의 비대칭 키를 지원하지 않습니다. 여기를 참조하십시오 : http://msdn.microsoft.com/en-us/library/windows/apps/hh464944.aspx

메트로에 대한 변경이나 openssl 빌드가 가능하지 않으면 진행할 수 없습니다.

업데이트 : 인증서 교환 중 서버 인증서의 공개 키를 검색 할 수있는 방법이 없습니다. Microsoft 직원 (2012 년 5 월)의 최신 업데이트 http://social.msdn.microsoft.com/Forums/en-US/winappswithcsharp/thread/bbffe488-fc74-4c8b-bed1-adf8fe162449/에 따라이 기능은 지원되지 않습니다.