RSA クラス

定義

RSA アルゴリズムのすべての実装が継承する、基本クラスを表します。

public ref class RSA abstract : System::Security::Cryptography::AsymmetricAlgorithm
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public abstract class RSA : System.Security.Cryptography.AsymmetricAlgorithm
public abstract class RSA : System.Security.Cryptography.AsymmetricAlgorithm
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class RSA : System.Security.Cryptography.AsymmetricAlgorithm
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
type RSA = class
    inherit AsymmetricAlgorithm
type RSA = class
    inherit AsymmetricAlgorithm
[<System.Runtime.InteropServices.ComVisible(true)>]
type RSA = class
    inherit AsymmetricAlgorithm
Public MustInherit Class RSA
Inherits AsymmetricAlgorithm
継承
派生
属性

注釈

開発者は、特定の派生クラスではなく、基底クラスに RSA 対してプログラミングすることをお勧めします。 派生クラスは、基になるシステム暗号化ライブラリとの相互運用を目的としています。

コンストラクター

RSA()

RSA クラスの新しいインスタンスを初期化します。

フィールド

KeySizeValue

非対称アルゴリズムで使用されるキー モジュラスのサイズをビット単位で表します。

(継承元 AsymmetricAlgorithm)
LegalKeySizesValue

非対称アルゴリズムでサポートされているキー サイズを指定します。

(継承元 AsymmetricAlgorithm)

プロパティ

KeyExchangeAlgorithm

RSA のこの実装で使用可能なキー交換アルゴリズムの名前を取得します。

KeyExchangeAlgorithm

派生クラスでオーバーライドされると、キー交換アルゴリズムの名前を取得します。 それ以外の場合は、NotImplementedException をスローします。

(継承元 AsymmetricAlgorithm)
KeySize

非対称アルゴリズムで使用されるキー モジュラスのサイズをビット単位で取得または設定します。

(継承元 AsymmetricAlgorithm)
LegalKeySizes

非対称アルゴリズムでサポートされているキー サイズを取得します。

(継承元 AsymmetricAlgorithm)
SignatureAlgorithm

RSA のこの実装で使用可能なキー交換アルゴリズムの名前を取得します。

SignatureAlgorithm

派生クラスで実装された場合、署名アルゴリズムの名前を取得します。 それ以外の場合は、常に NotImplementedException をスローします。

(継承元 AsymmetricAlgorithm)

メソッド

Clear()

AsymmetricAlgorithm クラスによって使用されているすべてのリソースを解放します。

(継承元 AsymmetricAlgorithm)
Create()

RSA アルゴリズムの既定の実装のインスタンスを作成します。

Create(Int32)

キー サイズを指定して新しい短期 RSA キーを作成します。

Create(RSAParameters)

RSA キー パラメーターを指定して新しい短期 RSA キーを作成します。

Create(String)
古い.

RSA の指定した実装のインスタンスを作成します。

Decrypt(Byte[], RSAEncryptionPadding)

派生クラスでオーバーライドされると、指定されたパディング モードを使用して入力データを復号化します。

Decrypt(ReadOnlySpan<Byte>, RSAEncryptionPadding)

指定したパディング モードを使用して、入力データを復号化します。

Decrypt(ReadOnlySpan<Byte>, Span<Byte>, RSAEncryptionPadding)

指定したパディング モードを使用して、入力データを復号化します。

DecryptValue(Byte[])
古い.

派生クラスでオーバーライドされると、秘密キーを使用して入力データの暗号化を解除します。

Dispose()

AsymmetricAlgorithm クラスの現在のインスタンスによって使用されているすべてのリソースを解放します。

(継承元 AsymmetricAlgorithm)
Dispose(Boolean)

AsymmetricAlgorithm クラスによって使用されているアンマネージド リソースを解放し、オプションでマネージド リソースも解放します。

(継承元 AsymmetricAlgorithm)
Encrypt(Byte[], RSAEncryptionPadding)

派生クラスでオーバーライドされると、指定されたパディング モードを使用して入力データを暗号化します。

Encrypt(ReadOnlySpan<Byte>, RSAEncryptionPadding)

指定したパディング モードを使用して、入力データを暗号化します。

Encrypt(ReadOnlySpan<Byte>, Span<Byte>, RSAEncryptionPadding)

指定したパディング モードを使用して、入力データを暗号化します。

EncryptValue(Byte[])
古い.

派生クラスでオーバーライドされると、公開キーを使用して入力データを暗号化します。

Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
ExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, PbeParameters)

現在のキーを PKCS# 8 EncryptedPrivateKeyInfo 形式で、バイトベースのパスワードを使用してエクスポートします。

(継承元 AsymmetricAlgorithm)
ExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, PbeParameters)

現在のキーを PKCS# 8 EncryptedPrivateKeyInfo 形式で、char ベースのパスワードを使用してエクスポートします。

(継承元 AsymmetricAlgorithm)
ExportEncryptedPkcs8PrivateKeyPem(ReadOnlySpan<Byte>, PbeParameters)

PKCS#8 EncryptedPrivateKeyInfo 形式の現在のキーを、PEM でエンコードされたバイトベースのパスワードでエクスポートします。

(継承元 AsymmetricAlgorithm)
ExportEncryptedPkcs8PrivateKeyPem(ReadOnlySpan<Char>, PbeParameters)

PKCS#8 EncryptedPrivateKeyInfo 形式の現在のキーを、文字ベースのパスワード PEM エンコードでエクスポートします。

(継承元 AsymmetricAlgorithm)
ExportParameters(Boolean)

派生クラスでオーバーライドされると、RSAParameters をエクスポートします。

ExportPkcs8PrivateKey()

現在のキーを PKCS# 8 PrivateKeyInfo 形式でエクスポートします。

(継承元 AsymmetricAlgorithm)
ExportPkcs8PrivateKeyPem()

現在のキーを PKCS#8 PrivateKeyInfo 形式 (PEM エンコード) でエクスポートします。

(継承元 AsymmetricAlgorithm)
ExportRSAPrivateKey()

現在のキーを PKCS#1 RSAPrivateKey 形式でエクスポートします。

ExportRSAPrivateKeyPem()

PKCS#1 RSAPrivateKey 形式 (PEM エンコード) で現在のキーをエクスポートします。

ExportRSAPublicKey()

現在のキーの公開キーの部分を、PKCS#1 RSAPublicKey 形式でエクスポートします。

ExportRSAPublicKeyPem()

現在のキーの公開キー部分を PKCS#1 RSAPublicKey 形式 (PEM エンコード) でエクスポートします。

ExportSubjectPublicKeyInfo()

現在のキーの公開キーの部分を、X.509 SubjectPublicKeyInfo 形式でエクスポートします。

(継承元 AsymmetricAlgorithm)
ExportSubjectPublicKeyInfoPem()

現在のキーの公開キー部分を、PEM でエンコードされた X.509 SubjectPublicKeyInfo 形式でエクスポートします。

(継承元 AsymmetricAlgorithm)
FromXmlString(String)

XML 文字列のキー情報から RSA オブジェクトを初期化します。

FromXmlString(String)

派生クラスでオーバーライドされた場合は、XML 文字列から AsymmetricAlgorithm オブジェクトを再構築します。 それ以外の場合は、NotImplementedException をスローします。

(継承元 AsymmetricAlgorithm)
GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetMaxOutputSize()

RSA 操作で生成できる最大バイト数を取得します。

GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
HashData(Byte[], Int32, Int32, HashAlgorithmName)

派生クラスでオーバーライドされると、指定したハッシュ アルゴリズムを使用して、指定したバイト配列部分のハッシュ値が計算されます。

HashData(Stream, HashAlgorithmName)

派生クラスでオーバーライドされると、指定したハッシュ アルゴリズムを使用して、指定したバイナリ ストリームのハッシュ値が計算されます。

ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Int32)

バイトベースのパスワードを使用して暗号化解除した後に、PKCS#8 EncryptedPrivateKeyInfo 構造体から公開/秘密キー ペアをインポートし、このオブジェクトのキーを置き換えます。

ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Int32)

派生クラスでオーバーライドされるときに、バイトベースのパスワードを使用して暗号化解除した後に、PKCS#8 EncryptedPrivateKeyInfo 構造体から公開/秘密キー ペアをインポートし、このオブジェクトのキーを置き換えます。

(継承元 AsymmetricAlgorithm)
ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, ReadOnlySpan<Byte>, Int32)

char ベースのパスワードを使用して暗号化解除した後に、PKCS#8 EncryptedPrivateKeyInfo 構造体から公開/秘密キー ペアをインポートし、このオブジェクトのキーを置き換えます。

ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, ReadOnlySpan<Byte>, Int32)

派生クラスでオーバーライドされるときに、char ベースのパスワードを使用して暗号化解除した後に、PKCS#8 EncryptedPrivateKeyInfo 構造体から公開/秘密キー ペアをインポートし、このオブジェクトのキーを置き換えます。

(継承元 AsymmetricAlgorithm)
ImportFromEncryptedPem(ReadOnlySpan<Char>, ReadOnlySpan<Byte>)

暗号化された RFC 7468 PEM でエンコードされた秘密キーをインポートして、このオブジェクトのキーを置き換えます。

ImportFromEncryptedPem(ReadOnlySpan<Char>, ReadOnlySpan<Byte>)

派生クラスでオーバーライドされる場合は、暗号化された RFC 7468 PEM でエンコードされたキーをインポートして、このオブジェクトのキーを置き換えます。

(継承元 AsymmetricAlgorithm)
ImportFromEncryptedPem(ReadOnlySpan<Char>, ReadOnlySpan<Char>)

暗号化された RFC 7468 PEM でエンコードされた秘密キーをインポートして、このオブジェクトのキーを置き換えます。

ImportFromEncryptedPem(ReadOnlySpan<Char>, ReadOnlySpan<Char>)

派生クラスでオーバーライドされる場合は、暗号化された RFC 7468 PEM でエンコードされたキーをインポートして、このオブジェクトのキーを置き換えます。

(継承元 AsymmetricAlgorithm)
ImportFromPem(ReadOnlySpan<Char>)

RFC 7468 PEM でエンコードされたキーをインポートして、このオブジェクトのキーを置き換えます。

ImportFromPem(ReadOnlySpan<Char>)

派生クラスでオーバーライドされる場合は、RFC 7468 でテキスト エンコーディングされたキーをインポートして、このオブジェクトのキーを置き換えます。

(継承元 AsymmetricAlgorithm)
ImportParameters(RSAParameters)

派生クラスでオーバーライドされると、指定された RSAParameters をインポートします。

ImportPkcs8PrivateKey(ReadOnlySpan<Byte>, Int32)

暗号化解除した後に、PKCS#8 PrivateKeyInfo 構造体から公開/秘密キー ペアをインポートし、このオブジェクトのキーを置き換えます。

ImportPkcs8PrivateKey(ReadOnlySpan<Byte>, Int32)

派生クラスでオーバーライドされるときに、暗号化解除した後に、PKCS#8 PrivateKeyInfo 構造体から公開/秘密キー ペアをインポートし、このオブジェクトのキーを置き換えます。

(継承元 AsymmetricAlgorithm)
ImportRSAPrivateKey(ReadOnlySpan<Byte>, Int32)

暗号化解除した後に、PKCS#1 RSAPrivateKey 構造体から公開/秘密キー ペアをインポートし、このオブジェクトのキーを置き換えます。

ImportRSAPublicKey(ReadOnlySpan<Byte>, Int32)

暗号化解除した後に、PKCS#1 RSAPublicKey 構造体から公開キーをインポートし、このオブジェクトのキーを置き換えます。

ImportSubjectPublicKeyInfo(ReadOnlySpan<Byte>, Int32)

暗号化解除した後に、X.509 SubjectPublicKeyInfo 構造体から公開キーをインポートし、このオブジェクトのキーを置き換えます。

ImportSubjectPublicKeyInfo(ReadOnlySpan<Byte>, Int32)

派生クラスでオーバーライドされるときに、暗号化解除した後に、X.509 SubjectPublicKeyInfo 構造体から公開キーをインポートし、このオブジェクトのキーを置き換えます。

(継承元 AsymmetricAlgorithm)
MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
SignData(Byte[], HashAlgorithmName, RSASignaturePadding)

指定したハッシュ アルゴリズムおよびパディング モードを使用して、指定したバイト配列のハッシュ値を計算し、結果のハッシュ値に署名します。

SignData(Byte[], Int32, Int32, HashAlgorithmName, RSASignaturePadding)

指定したハッシュ アルゴリズムおよびパディング モードを使用して、指定したバイト配列の一部分のハッシュ値を計算し、結果のハッシュ値に署名します。

SignData(ReadOnlySpan<Byte>, HashAlgorithmName, RSASignaturePadding)

指定したデータのハッシュ値を計算し、それに署名します。

SignData(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, RSASignaturePadding)

指定したアルゴリズムを使用して指定されたデータのハッシュを計算し、現在のキーでハッシュに署名し、指定されたバッファーに署名を書き込みます。

SignData(Stream, HashAlgorithmName, RSASignaturePadding)

指定したハッシュ アルゴリズムおよびパディング モードを使用して、指定したストリームのハッシュ値を計算し、結果のハッシュ値に署名します。

SignHash(Byte[], HashAlgorithmName, RSASignaturePadding)

派生クラスでオーバーライドされると、指定されたパディングを使用して、指定されたハッシュ値の署名を計算します。

SignHash(ReadOnlySpan<Byte>, HashAlgorithmName, RSASignaturePadding)

指定したパディングを使用して、指定したハッシュ値の署名を計算します。

SignHash(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, RSASignaturePadding)

現在のキーを使用してハッシュに署名し、指定されたバッファーに署名を書き込みます。

ToString()

現在のオブジェクトを表す文字列を返します。

(継承元 Object)
ToXmlString(Boolean)

現在の RSA オブジェクトのキーを格納している XML 文字列を作成して返します。

ToXmlString(Boolean)

派生クラスでオーバーライドされた場合は、現在の AsymmetricAlgorithm オブジェクトの XML 文字列形式を作成して返します。 それ以外の場合は、NotImplementedException をスローします。

(継承元 AsymmetricAlgorithm)
TryDecrypt(ReadOnlySpan<Byte>, Span<Byte>, RSAEncryptionPadding, Int32)

指定したパディング モードを使用して入力データを復号化し、その結果を指定したバッファーに書き込むことを試みます。

TryEncrypt(ReadOnlySpan<Byte>, Span<Byte>, RSAEncryptionPadding, Int32)

指定したパディング モードで、指定したバッファーに入力データを暗号化することを試みます。

TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, PbeParameters, Span<Byte>, Int32)

バイトベースのパスワードを使用して、現在のキーを PKCS#8 EncryptedPrivateKeyInfo 形式で指定のバッファーにエクスポートすることを試みます。

TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, PbeParameters, Span<Byte>, Int32)

派生クラスでオーバーライドされるときに、バイトベースのパスワードを使用して、現在のキーを PKCS#8 EncryptedPrivateKeyInfo 形式で指定のバッファーにエクスポートすることを試みます。

(継承元 AsymmetricAlgorithm)
TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, PbeParameters, Span<Byte>, Int32)

char ベースのパスワードを使用して、PKCS#8 EncryptedPrivateKeyInfo 形式の現在のキーを、指定されたバッファーにエクスポートすることを試みます。

TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, PbeParameters, Span<Byte>, Int32)

派生クラスでオーバーライドされるときに、char ベースのパスワードを使用して、現在のキーを PKCS#8 EncryptedPrivateKeyInfo 形式で指定のバッファーにエクスポートすることを試みます。

(継承元 AsymmetricAlgorithm)
TryExportEncryptedPkcs8PrivateKeyPem(ReadOnlySpan<Byte>, PbeParameters, Span<Char>, Int32)

PKCS#8 EncryptedPrivateKeyInfo 形式の現在のキーを、PEM でエンコードされたバイトベースのパスワードでエクスポートしようとします。

(継承元 AsymmetricAlgorithm)
TryExportEncryptedPkcs8PrivateKeyPem(ReadOnlySpan<Char>, PbeParameters, Span<Char>, Int32)

PKCS#8 EncryptedPrivateKeyInfo 形式の現在のキーを、文字ベースのパスワード PEM エンコードでエクスポートします。

(継承元 AsymmetricAlgorithm)
TryExportPkcs8PrivateKey(Span<Byte>, Int32)

PKCS#8 PrivateKeyInfo 形式の現在のキーを、指定のバッファーにエクスポートすることを試みます。

TryExportPkcs8PrivateKey(Span<Byte>, Int32)

派生クラスでオーバーライドされるときに、現在のキーを PKCS#8 PrivateKeyInfo 形式で指定のバッファーにエクスポートすることを試みます。

(継承元 AsymmetricAlgorithm)
TryExportPkcs8PrivateKeyPem(Span<Char>, Int32)

PEM でエンコードされた PKCS#8 PrivateKeyInfo 形式の現在のキーを、指定されたバッファーにエクスポートしようとします。

(継承元 AsymmetricAlgorithm)
TryExportRSAPrivateKey(Span<Byte>, Int32)

現在のキーを PKCS#1 RSAPrivateKey 形式で指定のバッファーにエクスポートすることを試みます。

TryExportRSAPrivateKeyPem(Span<Char>, Int32)

PEM でエンコードされた PKCS#1 RSAPrivateKey 形式の現在のキーを、指定されたバッファーにエクスポートしようとします。

TryExportRSAPublicKey(Span<Byte>, Int32)

現在のキーを PKCS#1 RSAPublicKey 形式で指定のバッファーにエクスポートすることを試みます。

TryExportRSAPublicKeyPem(Span<Char>, Int32)

PEM でエンコードされた PKCS#1 RSAPublicKey 形式の現在のキーを、指定されたバッファーにエクスポートしようとします。

TryExportSubjectPublicKeyInfo(Span<Byte>, Int32)

現在のキーを X.509 SubjectPublicKeyInfo 形式で指定のバッファーにエクスポートすることを試みます。

TryExportSubjectPublicKeyInfo(Span<Byte>, Int32)

派生クラスでオーバーライドされるときに、現在のキーを X.509 SubjectPublicKeyInfo 形式で指定のバッファーにエクスポートすることを試みます。

(継承元 AsymmetricAlgorithm)
TryExportSubjectPublicKeyInfoPem(Span<Char>, Int32)

PEM でエンコードされた X.509 SubjectPublicKeyInfo 形式の現在のキーを、指定されたバッファーにエクスポートしようとします。

(継承元 AsymmetricAlgorithm)
TryHashData(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, Int32)

指定されたアルゴリズムを使用して指定されたデータのハッシュを計算し、その結果を指定されたバッファーに書き込むことを試みます。

TrySignData(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, RSASignaturePadding, Int32)

指定されたアルゴリズムで、指定されたデータをハッシュし、現在のキーでハッシュを署名して、その結果を指定されたバッファーに書き込むことを試みます。

TrySignHash(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, RSASignaturePadding, Int32)

現在のキーで、ハッシュを署名して、その結果を指定されたバッファーに書き込むことを試みます。

VerifyData(Byte[], Byte[], HashAlgorithmName, RSASignaturePadding)

指定したハッシュ アルゴリズムとパディングを使用して、指定したデーターのハッシュ値を計算し、これを指定した署名と比較することによって、デジタル署名が有効であることを確認します。

VerifyData(Byte[], Int32, Int32, Byte[], HashAlgorithmName, RSASignaturePadding)

指定したハッシュ アルゴリズムとパディングを使用して、バイト配列の部分のデータのハッシュ値を計算し、これを指定した署名と比較することによって、デジタル署名が有効であることを確認します。

VerifyData(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, HashAlgorithmName, RSASignaturePadding)

指定したハッシュ アルゴリズムとパディングを使用して、指定したデーターのハッシュ値を計算し、これを指定した署名と比較することによって、デジタル署名が有効であることを確認します。

VerifyData(Stream, Byte[], HashAlgorithmName, RSASignaturePadding)

指定したハッシュ アルゴリズムとパディングを使用して、指定したストリームのハッシュ値を計算し、これを指定した署名と比較することによって、デジタル署名が有効であることを確認します。

VerifyHash(Byte[], Byte[], HashAlgorithmName, RSASignaturePadding)

指定したハッシュ アルゴリズムとパディングを使用して、署名のハッシュ値を決定し、これを指定したハッシュ値と比較することによって、デジタル署名が有効であることを確認します。

VerifyHash(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, HashAlgorithmName, RSASignaturePadding)

指定したハッシュ アルゴリズムとパディングを使用して、署名のハッシュ値を決定し、これを指定したハッシュ値と比較することによって、デジタル署名が有効であることを確認します。

明示的なインターフェイスの実装

IDisposable.Dispose()

この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。

このメンバーの詳細については、「Dispose()」をご覧ください。

(継承元 AsymmetricAlgorithm)

適用対象

こちらもご覧ください