AsymmetricKeyExchangeDeformatter クラス
アセンブリ: mscorlib (mscorlib.dll 内)


非共通キー交換の逆フォーマッタは、キー交換データを解読します。
キー交換を使用すると、送信者は、対称暗号化アルゴリズムでキーとして使用できるランダム データなどの秘密情報を作成し、それを暗号化して目的の受信者に送信できます。
![]() |
---|
キー交換を正常に行うには、細かな操作を慎重に実行する必要があるため、提供されている基本機能から独自のキー交換方法を作成することはお勧めできません。 |

AsymmetricKeyExchangeDeformatter クラスを拡張する方法を次のコード例に示します。
imports System imports System.Security.Cryptography Namespace Contoso Public Class ContosoDeformatter Inherits AsymmetricKeyExchangeDeformatter Private rsaKey As RSA ' Default constructor. Public Sub New() End Sub ' Constructor with the public key to use for decryption. Public Sub New(ByVal key As AsymmetricAlgorithm) SetKey(key) End Sub ' Set the public key for encyption operations. Public Overrides Sub SetKey(ByVal key As AsymmetricAlgorithm) If (Not key Is Nothing) Then rsaKey = CType(key, RSA) Else Throw New ArgumentNullException("key") End If End Sub ' Disallow access to the parameters of the formatter. Public Overrides Property Parameters() As String Get Return Nothing End Get Set(ByVal Value As String) End Set End Property ' Create the encrypted key exchange data from the specified input ' data. This method uses the RSACryptoServiceProvider only. To ' support additional providers or provide custom decryption logic, ' add logic to this member. Public Overrides Function DecryptKeyExchange( _ ByVal rgbData() As Byte) As Byte() Dim decryptedBytes() As Byte If (Not rsaKey Is Nothing) Then If (TypeOf (rsaKey) Is RSACryptoServiceProvider) Then Dim rsaProvider As RSACryptoServiceProvider rsaProvider = CType(rsaKey, RSACryptoServiceProvider) decryptedBytes = rsaProvider.Decrypt(rgbData, True) End If ' Add custom decryption logic here. Else Throw New CryptographicUnexpectedOperationException( _ "Cryptography_MissingKey") End If Return decryptedBytes End Function End Class End Namespace ' ' This code example produces the following output: ' ' Data to encrypt : Sample Contoso encryption application. ' Encrypted data: Kh34dfg-(*&834d+3 ' Data decrypted : Sample Contoso encryption application. ' ' This sample completed successfully; press Exit to continue.
using System; using System.Security.Cryptography; namespace Contoso { public class ContosoDeformatter : AsymmetricKeyExchangeDeformatter { private RSA rsaKey; // Default constructor. public ContosoDeformatter(){} // Constructor with the public key to use for decryption. public ContosoDeformatter(AsymmetricAlgorithm key) { SetKey(key); } // Set the public key for encyption operations. public override void SetKey(AsymmetricAlgorithm key) { if (key != null) { rsaKey = (RSA) key; } else { throw new ArgumentNullException("key"); } } // Disallow access to the parameters of the formatter. public override String Parameters { get { return null; } set { ; } } // Create the encrypted key exchange data from the specified input // data. This method uses the RSACryptoServiceProvider only. To // support additional providers or provide custom decryption logic, // add logic to this member. public override byte[] DecryptKeyExchange(byte[] rgbData) { byte[] decryptedBytes = null; if (rsaKey != null) { if (rsaKey is RSACryptoServiceProvider) { RSACryptoServiceProvider serviceProvder = (RSACryptoServiceProvider) rsaKey; decryptedBytes = serviceProvder.Decrypt(rgbData, true); } // Add custom decryption logic here. } else { throw new CryptographicUnexpectedOperationException( "Cryptography_MissingKey"); } return decryptedBytes; } } } // // This code example produces the following output: // // Data to encrypt : Sample Contoso encryption application. // Encrypted data: Khasdf-3248&$%23 // Data decrypted : Sample Contoso encryption application. // // This sample completed successfully; press Enter to exit.

System.Security.Cryptography.AsymmetricKeyExchangeDeformatter
System.Security.Cryptography.RSAOAEPKeyExchangeDeformatter
System.Security.Cryptography.RSAPKCS1KeyExchangeDeformatter


Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


AsymmetricKeyExchangeDeformatter コンストラクタ
アセンブリ: mscorlib (mscorlib.dll 内)



Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


AsymmetricKeyExchangeDeformatter プロパティ
AsymmetricKeyExchangeDeformatter メソッド

名前 | 説明 | |
---|---|---|
![]() | DecryptKeyExchange | 派生クラスでオーバーライドされると、暗号化されているキー交換データから秘密情報を抽出します。 |
![]() | Equals | オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 ( Object から継承されます。) |
![]() | GetHashCode | 特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 ( Object から継承されます。) |
![]() | GetType | 現在のインスタンスの Type を取得します。 ( Object から継承されます。) |
![]() | ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 ( Object から継承されます。) |
![]() | SetKey | 派生クラスでオーバーライドされると、秘密情報を解読するために使用する秘密キーを設定します。 |
![]() | ToString | 現在の Object を表す String を返します。 ( Object から継承されます。) |

名前 | 説明 | |
---|---|---|
![]() | Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 ( Object から継承されます。) |
![]() | MemberwiseClone | 現在の Object の簡易コピーを作成します。 ( Object から継承されます。) |

AsymmetricKeyExchangeDeformatter メンバ
すべての非共通キー交換逆フォーマッタの派生元の基本クラスを表します。
AsymmetricKeyExchangeDeformatter データ型で公開されるメンバを以下の表に示します。



名前 | 説明 | |
---|---|---|
![]() | DecryptKeyExchange | 派生クラスでオーバーライドされると、暗号化されているキー交換データから秘密情報を抽出します。 |
![]() | Equals | オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 (Object から継承されます。) |
![]() | GetHashCode | 特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 (Object から継承されます。) |
![]() | GetType | 現在のインスタンスの Type を取得します。 (Object から継承されます。) |
![]() | ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 (Object から継承されます。) |
![]() | SetKey | 派生クラスでオーバーライドされると、秘密情報を解読するために使用する秘密キーを設定します。 |
![]() | ToString | 現在の Object を表す String を返します。 (Object から継承されます。) |

名前 | 説明 | |
---|---|---|
![]() | Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 (Object から継承されます。) |
![]() | MemberwiseClone | 現在の Object の簡易コピーを作成します。 (Object から継承されます。) |

- AsymmetricKeyExchangeDeformatterのページへのリンク