CryptographicKey Class

対称キーまたは非対称キーのペアを表します。

構文


var cryptographicKey = createKey();
var cryptographicKey = createSymmetricKey();
var cryptographicKey = importKeyPair();
var cryptographicKey = importPublicKey();

属性

[DualApiPartition()]
[MarshalingBehavior(Agile)]
[Version(0x06020000)]

メンバー

CryptographicKeyクラス には次の種類のメンバーがあります。

メソッド

The CryptographicKey クラス には次のメソッドがあります。 With C#、Visual Basic、および C++ では、以下からもメソッドが継承されます。Object クラス.

メソッド説明
Export() Exports the key pair to a buffer.
Export(CryptographicPrivateKeyBlobType) Exports the key pair to a buffer given a specified format.
ExportPublicKey() Exports a public key to a buffer.
ExportPublicKey(CryptographicPublicKeyBlobType) Exports a public key to a buffer given a specified format.

 

プロパティ

CryptographicKeyクラス には次のプロパティがあります。

プロパティアクセスの種類説明

KeySize

読み取り専用Gets the size, in bits, of the key.

 

解説

次のクラスでキーを作成またはインポートするメソッドを使用すると、CryptographicKey オブジェクトが作成されます。


using Windows.Security.Cryptography;
using Windows.Security.Cryptography.Core;
using Windows.Storage.Streams;

namespace SampleCryptographicKey
{
    sealed partial class CryptographicKeyApp : Application
    {
        static IBuffer buffKeyPair;

        public CryptographicKeyApp()
        {
            // Initialize the application.
            this.InitializeComponent();

            // Create an asymmetric key pair.
            String strAsymmetricAlgName = AsymmetricAlgorithmNames.RsaPkcs1;
            UInt32 asymmetricKeyLength = 512;
            IBuffer buffPublicKey = this.SampleCreateAsymmetricKeyPair(
                strAsymmetricAlgName,
                asymmetricKeyLength);
        }

        public IBuffer SampleCreateAsymmetricKeyPair(
            String strAsymmetricAlgName,
            UInt32 keyLength)
        {
            // Open the algorithm provider for the specified asymmetric algorithm.
            AsymmetricKeyAlgorithmProvider objAlgProv = AsymmetricKeyAlgorithmProvider.OpenAlgorithm(strAsymmetricAlgName);

            // Create an asymmetric key pair.
            CryptographicKey keyPair = objAlgProv.CreateKeyPair(keyLength);

            // Export the public key to a buffer for use by others.
            IBuffer buffPublicKey = keyPair.ExportPublicKey();

            // You should keep your private key (embedded in the key pair) secure. For  
            // the purposes of this example, however, we're just copying it into a
            // static class variable for later use during decryption.
            CryptographicKeyApp.buffKeyPair = keyPair.Export();

            // Retrieve the size of the key pair.
            UInt32 lengthKeyPair = keyPair.KeySize;

            // Return the public key.
            return buffPublicKey;
        }
    }
}


要件

最小限サポートされるクライアント

Windows 8 [Windows ストア アプリ, デスクトップ アプリ]

最小限サポートされるサーバー

Windows Server 2012 [Windows ストア アプリ, デスクトップ アプリ]

名前空間

Windows.Security.Cryptography.Core
Windows::Security::Cryptography::Core [C++]

メタデータ

Windows.winmd

参照

AsymmetricKeyAlgorithmProvider
SymmetricKeyAlgorithmProvider

 

 

表示:
© 2015 Microsoft