2015-11-24 2 views
2

Я установил сертификат на свой компьютер, и я пытаюсь прочитать свойство «Имя контейнера». Это возможно и как?Прочитать имя контейнера сертификата клиента

public void Read() 
    { 
     X509Store store = new X509Store(StoreName.My, StoreLocation.CurrentUser); 

     store.Open(OpenFlags.ReadOnly | OpenFlags.OpenExistingOnly); 

     foreach (X509Certificate2 mCert in store.Certificates) 
     { 
      //Find Container name? 
     } 
    } 

ответ

2

Здесь вы идете.

public static void Read() 
{ 
    X509Store store = new X509Store(StoreName.My, StoreLocation.CurrentUser); 

    store.Open(OpenFlags.ReadOnly | OpenFlags.OpenExistingOnly); 

    foreach (X509Certificate2 mCert in store.Certificates) 
    { 
     //Find Container name? 

     var privateKey = mCert.PrivateKey as RSACryptoServiceProvider; 

     var uniqueKeyContainerName = privateKey.CspKeyContainerInfo.UniqueKeyContainerName; 
     var keyContainerName = privateKey.CspKeyContainerInfo.KeyContainerName; 
     var ProviderName = privateKey.CspKeyContainerInfo.ProviderName; 
     // etc. 
    } 
} 

Более подробную информацию о CspKeyContainerInfohere.

+0

Я установил собственное имя контейнера в свой сертификат, но теперь он выглядит зашифрованным (или я его не могу найти). Предполагается, что это так или как я могу ее расшифровать? – MrProgram

+0

@emptyman Не могли бы вы объяснить немного больше? Я не понимаю, что вы пытаетесь сделать. ИМХО Я правильно ответил на ваш предыдущий вопрос. – pepo

Смежные вопросы