DSACryptoServiceProvider クラス

定義

DSA アルゴリズムの暗号化サービス プロバイダー (CSP) 実装にアクセスするためのラッパー オブジェクトを定義します。 このクラスは継承できません。

public ref class DSACryptoServiceProvider sealed : System::Security::Cryptography::DSA, System::Security::Cryptography::ICspAsymmetricAlgorithm
public ref class DSACryptoServiceProvider sealed : System::Security::Cryptography::DSA
public sealed class DSACryptoServiceProvider : System.Security.Cryptography.DSA, System.Security.Cryptography.ICspAsymmetricAlgorithm
public sealed class DSACryptoServiceProvider : System.Security.Cryptography.DSA
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class DSACryptoServiceProvider : System.Security.Cryptography.DSA, System.Security.Cryptography.ICspAsymmetricAlgorithm
type DSACryptoServiceProvider = class
    inherit DSA
    interface ICspAsymmetricAlgorithm
type DSACryptoServiceProvider = class
    inherit DSA
[<System.Runtime.InteropServices.ComVisible(true)>]
type DSACryptoServiceProvider = class
    inherit DSA
    interface ICspAsymmetricAlgorithm
Public NotInheritable Class DSACryptoServiceProvider
Inherits DSA
Implements ICspAsymmetricAlgorithm
Public NotInheritable Class DSACryptoServiceProvider
Inherits DSA
継承
DSACryptoServiceProvider
属性
実装

注釈

DSACryptoServiceProvider クラスを使用してデジタル署名を作成し、データの整合性を保護できます。

公開キー システムを使用してメッセージにデジタル署名するには、送信者が最初にメッセージにハッシュ関数を適用してメッセージ ダイジェストを作成します。 送信者は、送信者の秘密キーを使用してメッセージ ダイジェストを暗号化し、送信者の個人署名を作成します。 メッセージと署名を受信すると、受信者は送信者の公開キーを使用して署名を復号化してメッセージ ダイジェストを回復し、送信者が使用したのと同じハッシュ アルゴリズムを使用してメッセージをハッシュします。 受信側が計算するメッセージ ダイジェストが送信者から受信したメッセージ ダイジェストと正確に一致する場合、受信者は、転送中にメッセージが変更されていないことを確認できます。 送信者の公開キーは一般的な知識であるため、署名はだれでも検証できることに注意してください。

Note

DSA アルゴリズムの作成者は、そのサポートを取り消しました。 RSACryptoServiceProvider クラスではなく、DSACryptoServiceProvider クラスを使用することを検討してください。 DSACryptoServiceProviderは、レガシ アプリケーションとデータとの互換性のためにのみ使用します。

このアルゴリズムは、512 ビットから 1024 ビットまでのキー長を 64 ビットずつサポートします。

コンストラクター

名前 説明
DSACryptoServiceProvider()

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

DSACryptoServiceProvider(CspParameters)

暗号化サービス プロバイダー (CSP) の指定されたパラメーターを使用して、 DSACryptoServiceProvider クラスの新しいインスタンスを初期化します。

DSACryptoServiceProvider(Int32, CspParameters)

暗号化サービス プロバイダー (CSP) の指定したキー サイズとパラメーターを使用して、 DSACryptoServiceProvider クラスの新しいインスタンスを初期化します。

DSACryptoServiceProvider(Int32)

指定したキー サイズを使用して、 DSACryptoServiceProvider クラスの新しいインスタンスを初期化します。

フィールド

名前 説明
KeySizeValue

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

(継承元 AsymmetricAlgorithm)
LegalKeySizesValue

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

(継承元 AsymmetricAlgorithm)

プロパティ

名前 説明
CspKeyContainerInfo

暗号化キー ペアに関する追加情報を記述する CspKeyContainerInfo オブジェクトを取得します。

KeyExchangeAlgorithm

キー交換アルゴリズムの名前を取得します。

KeySize

非対称アルゴリズムで使用されるキーのサイズをビット単位で取得します。

LegalKeySizes

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

LegalKeySizes

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

(継承元 AsymmetricAlgorithm)
PersistKeyInCsp

キーを暗号化サービス プロバイダー (CSP) に保持するかどうかを示す値を取得または設定します。

PublicOnly

DSACryptoServiceProvider オブジェクトに公開キーのみが含まれているかどうかを示す値を取得します。

SignatureAlgorithm

署名アルゴリズムの名前を取得します。

UseMachineKeyStore

ユーザー プロファイル ストアではなく、コンピューターのキー ストアにキーを保持するかどうかを示す値を取得または設定します。

メソッド

名前 説明
Clear()

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

(継承元 AsymmetricAlgorithm)
CreateSignature(Byte[], DSASignatureFormat)

指定された形式で指定されたハッシュ値の DSA 署名を作成します。

(継承元 DSA)
CreateSignature(Byte[])

指定したデータの DSA 署名を作成します。

CreateSignatureCore(ReadOnlySpan<Byte>, DSASignatureFormat)

指定された形式で指定されたハッシュ値の DSA 署名を作成します。

(継承元 DSA)
Dispose()

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

(継承元 AsymmetricAlgorithm)
Dispose(Boolean)

AsymmetricAlgorithm クラスによって使用されるアンマネージ リソースを解放し、必要に応じてマネージド リソースを解放します。

(継承元 AsymmetricAlgorithm)
Equals(Object)

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

(継承元 Object)
ExportCspBlob(Boolean)

DSACryptoServiceProvider オブジェクトに関連付けられているキー情報を含む BLOB をエクスポートします。

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)

DSAParametersをエクスポートします。

ExportPkcs8PrivateKey()

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

(継承元 AsymmetricAlgorithm)
ExportPkcs8PrivateKeyPem()

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

(継承元 AsymmetricAlgorithm)
ExportSubjectPublicKeyInfo()

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

(継承元 AsymmetricAlgorithm)
ExportSubjectPublicKeyInfoPem()

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

(継承元 AsymmetricAlgorithm)
Finalize()

このインスタンスに関連付けられているすべてのリソースを解放します。

FromXmlString(String)

XML 文字列から DSA オブジェクトを再構築します。

(継承元 DSA)
GetHashCode()

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

(継承元 Object)
GetMaxSignatureSize(DSASignatureFormat)

指定された形式でこのキーによって生成される署名の最大サイズ (バイト単位) を取得します。

(継承元 DSA)
GetType()

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

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

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

(継承元 DSA)
HashData(Stream, HashAlgorithmName)

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

(継承元 DSA)
ImportCspBlob(Byte[])

DSA キー情報を表す BLOB をインポートします。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

(継承元 DSA)
ImportParameters(DSAParameters)

指定した DSAParametersをインポートします。

ImportPkcs8PrivateKey(ReadOnlySpan<Byte>, Int32)

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

(継承元 DSA)
ImportSubjectPublicKeyInfo(ReadOnlySpan<Byte>, Int32)

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

(継承元 DSA)
MemberwiseClone()

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

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

指定したデータのハッシュ値を計算し、指定した署名形式を使用して署名します。

(継承元 DSA)
SignData(Byte[], HashAlgorithmName)

指定したハッシュ アルゴリズムを使用して、指定したバイト配列のハッシュ値を計算し、結果のハッシュ値に署名します。

(継承元 DSA)
SignData(Byte[], Int32, Int32, HashAlgorithmName, DSASignatureFormat)

指定したデータのハッシュ値を計算し、指定した署名形式を使用して署名します。

(継承元 DSA)
SignData(Byte[], Int32, Int32, HashAlgorithmName)

指定したハッシュ アルゴリズムを使用して、指定したバイト配列の一部のハッシュ値を計算し、結果のハッシュ値に署名します。

(継承元 DSA)
SignData(Byte[], Int32, Int32)

指定した始点から指定した終点までのバイト配列に署名します。

SignData(Byte[])

指定したバイト配列のハッシュ値を計算し、結果のハッシュ値に署名します。

SignData(Stream, HashAlgorithmName, DSASignatureFormat)

指定したデータのハッシュ値を計算し、指定した署名形式を使用して署名します。

(継承元 DSA)
SignData(Stream, HashAlgorithmName)

指定したハッシュ アルゴリズムを使用して、指定したストリームのハッシュ値を計算し、結果のハッシュ値に署名します。

(継承元 DSA)
SignData(Stream)

指定した入力ストリームのハッシュ値を計算し、結果のハッシュ値に署名します。

SignDataCore(ReadOnlySpan<Byte>, HashAlgorithmName, DSASignatureFormat)

指定したデータのハッシュ値を計算し、指定した署名形式を使用して署名します。

(継承元 DSA)
SignDataCore(Stream, HashAlgorithmName, DSASignatureFormat)

指定したデータのハッシュ値を計算し、指定した署名形式を使用して署名します。

(継承元 DSA)
SignHash(Byte[], String)

秘密キーを使用して暗号化することで、指定したハッシュ値の署名を計算します。

ToString()

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

(継承元 Object)
ToXmlString(Boolean)

現在の DSA オブジェクトの XML 文字列形式を作成して返します。

(継承元 DSA)
TryCreateSignature(ReadOnlySpan<Byte>, Span<Byte>, DSASignatureFormat, Int32)

指定したハッシュ値の DSA 署名を指定された形式で作成し、指定されたバッファーに配置しようとします。

(継承元 DSA)
TryCreateSignature(ReadOnlySpan<Byte>, Span<Byte>, Int32)

指定したハッシュの DSA 署名を指定されたバッファーに作成しようとします。

(継承元 DSA)
TryCreateSignatureCore(ReadOnlySpan<Byte>, Span<Byte>, DSASignatureFormat, Int32)

指定したハッシュ値の DSA 署名を指定された形式で作成し、指定されたバッファーに配置しようとします。

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

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

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

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

(継承元 DSA)
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 形式の現在のキーを指定されたバッファーにエクスポートしようとします。

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

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

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

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

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

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

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

指定されたデータのハッシュ値を指定されたバッファーに計算しようとします。

(継承元 DSA)
TrySignData(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, DSASignatureFormat, Int32)

指定されたデータの DSA 署名を指定された形式で作成し、指定されたバッファーに配置しようとします。

(継承元 DSA)
TrySignData(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, Int32)

指定したデータの DSA 署名を指定されたバッファーに作成しようとします。

(継承元 DSA)
TrySignDataCore(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, DSASignatureFormat, Int32)

指定されたデータの DSA 署名を指定された形式で作成し、指定されたバッファーに配置しようとします。

(継承元 DSA)
VerifyData(Byte[], Byte[], HashAlgorithmName, DSASignatureFormat)

指定されたデータに対してデジタル署名が有効であることを確認します。

(継承元 DSA)
VerifyData(Byte[], Byte[], HashAlgorithmName)

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

(継承元 DSA)
VerifyData(Byte[], Byte[])

指定した署名データを、指定したデータに対して計算された署名と比較して検証します。

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

指定されたデータに対してデジタル署名が有効であることを確認します。

(継承元 DSA)
VerifyData(Byte[], Int32, Int32, Byte[], HashAlgorithmName)

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

(継承元 DSA)
VerifyData(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, HashAlgorithmName, DSASignatureFormat)

指定されたデータに対してデジタル署名が有効であることを確認します。

(継承元 DSA)
VerifyData(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, HashAlgorithmName)

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

(継承元 DSA)
VerifyData(Stream, Byte[], HashAlgorithmName, DSASignatureFormat)

指定されたデータに対してデジタル署名が有効であることを確認します。

(継承元 DSA)
VerifyData(Stream, Byte[], HashAlgorithmName)

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

(継承元 DSA)
VerifyDataCore(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, HashAlgorithmName, DSASignatureFormat)

指定されたデータに対してデジタル署名が有効であることを確認します。

(継承元 DSA)
VerifyDataCore(Stream, ReadOnlySpan<Byte>, HashAlgorithmName, DSASignatureFormat)

指定されたデータに対してデジタル署名が有効であることを確認します。

(継承元 DSA)
VerifyHash(Byte[], String, Byte[])

指定したハッシュ値に対して計算された署名と比較して、指定した署名データを検証します。

VerifySignature(Byte[], Byte[], DSASignatureFormat)

指定されたハッシュに対してデジタル署名が有効であることを確認します。

(継承元 DSA)
VerifySignature(Byte[], Byte[])

指定したデータの DSA 署名を検証します。

VerifySignature(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, DSASignatureFormat)

指定されたハッシュに対してデジタル署名が有効であることを確認します。

(継承元 DSA)
VerifySignature(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>)

指定されたデータ ハッシュに対してデジタル署名が有効であることを確認します。

(継承元 DSA)
VerifySignatureCore(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, DSASignatureFormat)

指定されたハッシュに対してデジタル署名が有効であることを確認します。

(継承元 DSA)

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

名前 説明
IDisposable.Dispose()

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

このメンバーの説明については、 Dispose()を参照してください。

(継承元 AsymmetricAlgorithm)

適用対象

こちらもご覧ください