AsymmetricKeyExchangeDeformatter クラスとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > AsymmetricKeyExchangeDeformatter クラスの意味・解説 

AsymmetricKeyExchangeDeformatter クラス

すべての非共通キー交換フォーマッタ派生元の基本クラス表します

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

<ComVisibleAttribute(True)> _
Public MustInherit Class
 AsymmetricKeyExchangeDeformatter
Dim instance As AsymmetricKeyExchangeDeformatter
[ComVisibleAttribute(true)] 
public abstract class AsymmetricKeyExchangeDeformatter
[ComVisibleAttribute(true)] 
public ref class AsymmetricKeyExchangeDeformatter
 abstract
/** @attribute ComVisibleAttribute(true) */ 
public abstract class AsymmetricKeyExchangeDeformatter
ComVisibleAttribute(true) 
public abstract class AsymmetricKeyExchangeDeformatter
解説解説
使用例使用例

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.Object
  System.Security.Cryptography.AsymmetricKeyExchangeDeformatter
     System.Security.Cryptography.RSAOAEPKeyExchangeDeformatter
     System.Security.Cryptography.RSAPKCS1KeyExchangeDeformatter
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバ場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
AsymmetricKeyExchangeDeformatter メンバ
System.Security.Cryptography 名前空間



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

辞書ショートカット

すべての辞書の索引

「AsymmetricKeyExchangeDeformatter クラス」の関連用語

AsymmetricKeyExchangeDeformatter クラスのお隣キーワード
検索ランキング

   

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



AsymmetricKeyExchangeDeformatter クラスのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

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

©2025 GRAS Group, Inc.RSS