X509Certificate2.PrivateKey プロパティとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > X509Certificate2.PrivateKey プロパティの意味・解説 

X509Certificate2.PrivateKey プロパティ

メモ : このプロパティは、.NET Framework version 2.0新しく追加されたものです。

証明書関連付けられた秘密キーを表す AsymmetricAlgorithm オブジェクト取得または設定します

名前空間: System.Security.Cryptography.X509Certificates
アセンブリ: System (system.dll 内)
構文構文

Public Property PrivateKey As
 AsymmetricAlgorithm
Dim instance As X509Certificate2
Dim value As AsymmetricAlgorithm

value = instance.PrivateKey

instance.PrivateKey = value
public AsymmetricAlgorithm PrivateKey { get;
 set; }
public:
property AsymmetricAlgorithm^ PrivateKey {
    AsymmetricAlgorithm^ get ();
    void set (AsymmetricAlgorithm^ value);
}
/** @property */
public AsymmetricAlgorithm get_PrivateKey ()

/** @property */
public void set_PrivateKey (AsymmetricAlgorithm
 value)
public function get PrivateKey
 () : AsymmetricAlgorithm

public function set PrivateKey
 (value : AsymmetricAlgorithm)

プロパティ
RSA 暗号サービス プロバイダまたは DSA 暗号化サービス プロバイダである AsymmetricAlgorithm オブジェクト

例外例外
例外種類条件

CryptographicException

キーの値が RSA キーDSA キーどちらでもないか、またはキー読み取ることができません。

解説解説

現在、このプロパティは、RSA キーまたは DSA キーだけをサポートします。そのため、このプロパティは、RSACryptoServiceProvider オブジェクトまたは DSACryptoServiceProvider オブジェクト返します。この証明書に関連付けられた秘密キーない場合null 参照 (Visual Basic では Nothing) が返されます。

使用例使用例

現在のユーザーの証明ストア開いてアクティブ証明書だけを選択しユーザー1 つ上の証明書選択できるようにするコード例次に示します。この例では、次に証明書情報コンソール書き込みます

using System;
using System.Security.Cryptography;
using System.Security.Permissions;
using System.IO;
using System.Security.Cryptography.X509Certificates;

class CertSelect
{
    static void Main()
    {
        try
        {
            X509Store store = new X509Store("MY",StoreLocation.CurrentUser);
            store.Open(OpenFlags.ReadOnly | OpenFlags.OpenExistingOnly);
            X509Certificate2Collection collection = (X509Certificate2Collection)store.Certificates;
            X509Certificate2Collection fcollection = (X509Certificate2Collection)collection.Find(X509FindType.FindByTimeValid
,DateTime.Now,false);
            X509Certificate2Collection scollection = X509Certificate2UI.SelectFromCollection(fcollection,
 "Test Certificate Select","Select a certificate from the following
 list to get information on that certificate",X509SelectionFlag.MultiSelection);
            Console.WriteLine("Number of certificates: {0}{1}",scollection.Count
,Environment.NewLine);
                foreach (X509Certificate2 x509 in
 scollection)
                {
                    byte[] rawdata = x509.RawData;
                    Console.WriteLine("Content Type: {0}{1}",X509Certificate2.GetCertContentType(rawdata)
,Environment.NewLine);
                    Console.WriteLine("Friendly Name: {0}{1}",x509.FriendlyName
,Environment.NewLine);
                    Console.WriteLine("Certificate Verified?: {0}{1}",x509.Verify()
,Environment.NewLine);
                    Console.WriteLine("Simple Name: {0}{1}",x509.GetNameInfo(X509NameType.SimpleName
,true),Environment.NewLine);
                    Console.WriteLine("Signature Algorithm: {0}{1}",x509.SignatureAlgorithm.FriendlyName
,Environment.NewLine);
                    Console.WriteLine("Private Key: {0}{1}",x509.PrivateKey.ToXmlString(false)
,Environment.NewLine);
                    Console.WriteLine("Public Key: {0}{1}",x509.PublicKey.Key.ToXmlString(false)
,Environment.NewLine);
                    Console.WriteLine("Certificate Archived?: {0}{1}",x509.Archived
,Environment.NewLine);
                    Console.WriteLine("Length of Raw Data: {0}{1}",x509.RawData.Length
,Environment.NewLine);
                    X509Certificate2UI.DisplayCertificate(x509);
                    x509.Reset();
                }
            store.Close();
            }
        catch (CryptographicException)
            {
                   Console.WriteLine("Information could not be written out for
 this certificate.");
            }
        
    }
}
#using <System.dll>
#using <System.Security.dll>

using namespace System;
using namespace System::Security::Cryptography;
using namespace System::Security::Permissions;
using namespace System::IO;
using namespace System::Security::Cryptography::X509Certificates;
int main()
{
   try
   {
      X509Store ^ store = gcnew X509Store( "MY",StoreLocation::CurrentUser
 );
      store->Open( static_cast<OpenFlags>(OpenFlags::ReadOnly | OpenFlags::OpenExistingOnly)
 );
      X509Certificate2Collection ^ collection = dynamic_cast<X509Certificate2Collection^>(store->Certificates);
      X509Certificate2Collection ^ fcollection = dynamic_cast<X509Certificate2Collection^>(collection->Find(
 X509FindType::FindByTimeValid, DateTime::Now, false ));
      X509Certificate2Collection ^ scollection = X509Certificate2UI::SelectFromCollection(fcollection,
 "Test Certificate Select","Select a certificate from the following
 list to get information on that certificate",X509SelectionFlag::MultiSelection);
      Console::WriteLine( "Number of certificates: {0}{1}", scollection->Count,
 Environment::NewLine );
      System::Collections::IEnumerator^ myEnum = scollection->GetEnumerator();
      while ( myEnum->MoveNext() )
      {
         X509Certificate2 ^ x509 = safe_cast<X509Certificate2 ^>(myEnum->Current);
         array<Byte>^rawdata = x509->RawData;
         Console::WriteLine( "Content Type: {0}{1}", X509Certificate2::GetCertContentType(
 rawdata ), Environment::NewLine );
         Console::WriteLine( "Friendly Name: {0}{1}", x509->FriendlyName,
 Environment::NewLine );
         Console::WriteLine( "Certificate Verified?: {0}{1}", x509->Verify(),
 Environment::NewLine );
         Console::WriteLine( "Simple Name: {0}{1}", x509->GetNameInfo(
 X509NameType::SimpleName, true ), Environment::NewLine );
         Console::WriteLine( "Signature Algorithm: {0}{1}", x509->SignatureAlgorithm->FriendlyName,
 Environment::NewLine );
         Console::WriteLine( "Private Key: {0}{1}", x509->PrivateKey->ToXmlString(
 false ), Environment::NewLine );
         Console::WriteLine( "Public Key: {0}{1}", x509->PublicKey->Key->ToXmlString(
 false ), Environment::NewLine );
         Console::WriteLine( "Certificate Archived?: {0}{1}", x509->Archived,
 Environment::NewLine );
         Console::WriteLine( "Length of Raw Data: {0}{1}", x509->RawData->Length,
 Environment::NewLine );
         x509->Reset();
      }
      store->Close();
   }
   catch ( CryptographicException^ ) 
   {
      Console::WriteLine( "Information could not be written out for
 this certificate." );
   }

}

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
X509Certificate2 クラス
X509Certificate2 メンバ
System.Security.Cryptography.X509Certificates 名前空間



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

X509Certificate2.PrivateKey プロパティのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



X509Certificate2.PrivateKey プロパティのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2024 Microsoft.All rights reserved.

©2024 GRAS Group, Inc.RSS