2014-07-24 11 views
0

Compact Framework 3.5가 설치된 PDA 용 Windows Mobile 6 응용 프로그램을 개발합니다. 내 PDA에는 스마트 카드 판독기가 있습니다. 카드가 삽입되면 모든 인증서가 내부에 저장됩니다. 이미 데스크톱 애플리케이션에서 성공했지만 모바일에서 동일한 코드를 사용해도 인증서를 찾지 못했습니다! 그래서, 나는 differents 솔루션을 시도했지만 아무것도 작동하지 않습니다! 여기Windows Mobile 6의 스마트 카드에 인증서 저장

내 코드 :

X509Store test = new X509Store(StoreName.Root, StoreLocation.LocalMachine); 
test.Open(OpenFlags.ReadOnly); 

if (test.Certificates.Count > 0) 
{ 
    foreach (X509Certificate2 cert in test.Certificates) 
    { 
      MessageBox.Show("Certificate: " + cert.ToString()); 
    } 
} 

당신이 아이디어를 가지고 있나요?

+0

코드가 "작동하지 않는 방법"에 대해 자세히 설명해 주시겠습니까? 당신은 무엇을 기대하고 있었고 실제로 무슨 일이 일어 났습니까? 예외가 발생하면 발생한 행을 게시하고 예외 세부 사항을 게시하십시오. – gunr2171

+0

예외는 없으며 오류는 없습니다. 내 코드는 내 스마트 카드에 저장된 인증서가 없다는 것을 나타냅니다. – JohnDoe66

+0

LocalMachine에서 루트 저장소를 열시겠습니까? 나는 당신이 거기서 스마트 카드로부터 인증서를 찾을 것이라고 생각하지 않는다. X509Store 테스트 = 새 X509Store (StoreName.My, StoreLocation.CurrentUser);를 열려고합니다. – pepo

답변

0

예외가 있습니까? 빈 저장소 만 표시되는 경우 스마트 카드에서 Windows 인증서 저장소로의 인증서 전파에 문제가있을 수 있습니다. 데스크탑 윈도우 시스템에서

는 스마트 카드가 때 현재 사용자의 인증서 저장소에

복사 사용자 인증서 및 스마트 카드에서 루트 인증서가 감지 서비스 인증서 전파 (CertPropSvc) 것이있다 스마트 카드 판독기에 삽입하고 필요한 경우 스마트 카드 플러그 앤 플레이 미니 드라이버를 설치합니다.

Windows Mobile 6 또는 모바일 Windows OS에 이러한 서비스가 있는지 여부를 알 수 없습니다.

나는 당신이 연구를 할 것을 권할 것이다 (나의 2 분 노력은 어떤 긍정적 인 결과도 가져 오지 않았다).

또는 PKCS # 11 라이브러리를 사용하여 스마트 카드에 저장된 인증서 및 개인 키에 액세스하고 사용할 수 있습니다. 스마트 카드 공급 업체는 종종 스마트 카드 용 드라이버가있는 PKCS # 11 라이브러리를 배포합니다.

PKCS11Interop 또는 NCryptoki처럼 (보통 C로 작성) PKCS # 11 라이브러리와 통신 할 수 있도록 몇 가지 오픈 소스 .NET 프로젝트가 있습니다.

+0

설명해 주셔서 대단히 감사합니다. 그러나 몇 가지 테스트를 마치면 "PKCS11Interop"및 "NCryptoki"라이브러리가 Windows Mobile 6에서 작동하지 않는 것으로 보입니다. – JohnDoe66