2013-03-20 4 views
2

내가 할 때 X509Certificate2 x509 = new X509Certificate2(certificateFile); 인증서가 있어야하는 형식은 무엇입니까?X509 인증서 형식

-----BEGIN RSA PRIVATE KEY----- 
...... 
-----END RSA PRIVATE KEY----- 

및 인증서 :

Certificate: 
    Data: 
     Version: 3 (0x2) 
     Serial Number: 
      .............. 
     Signature Algorithm: sha1WithRSAEncryption 
     Issuer: C=IL, ST=SS, L=...., O=....., OU=....., CN=...../emailAddress=..... 
     Validity 
      Not Before: Mar 19 14:45:09 2013 GMT 
      Not After : Mar 19 14:45:09 2014 GMT 
     Subject: C=IL, ST=SS, L=...., O=....., OU=....., CN=...../emailAddress=..... 
     Subject Public Key Info: 
      Public Key Algorithm: rsaEncryption 
       Public-Key: (2048 bit) 
       Modulus: 
        ................... 
       Exponent: 65537 (0x10001) 
     X509v3 extensions: 
      X509v3 Subject Key Identifier: 
       ......... 
      X509v3 Authority Key Identifier: 
       keyid:.......... 

      X509v3 Basic Constraints: 
       CA:TRUE 
    Signature Algorithm: sha1WithRSAEncryption 
     ..... 

아직 나는 어느 쪽도 위의 C# 코드를 사용하지로드 할 수 있어요

나는 개인 키가 있습니다. 내가 뭘 놓치고 있니?

+0

"로드 할 수 없음"이란 무엇을 의미합니까? 예외가 있습니까? 스택 트레이스가 있습니까? –

+0

"요청한 개체를 찾을 수 없습니다." – user2191209

+0

[해당 문서] (http://msdn.microsoft.com/en-us/library/ms148415.aspx)에 따르면 DER 또는 Base64 형식이 지원됩니다. –

답변

1

-----BEGIN RSA PRIVATE KEY-----은 PKCS # 1 형식의 RSA 비공개 키 (암호화되지 않음)의 헤더입니다. 이 형식은 개인 키 PEM 파일에 사용됩니다.

.NET Framework에서는 직접이 형식으로 개인 키를 내보내는 기성 메서드를 제공하지 않으므로 직접 구현해야합니다.

This document - RSA 비공개 키를 해독하는 예가 있습니다. 인코딩은 그 반대의 작업입니다.