DSACryptoServiceProvider Kelas

Definisi

Menentukan objek pembungkus untuk mengakses implementasi DSA penyedia layanan kriptografi (CSP) algoritma. Kelas ini tidak dapat diwariskan.

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
Warisan
DSACryptoServiceProvider
Atribut
Penerapan

Keterangan

Anda dapat menggunakan DSACryptoServiceProvider kelas untuk membuat tanda tangan digital dan melindungi integritas data Anda.

Untuk menggunakan sistem kunci publik untuk menandatangani pesan secara digital, pengirim terlebih dahulu menerapkan fungsi hash ke pesan untuk membuat hash pesan. Pengirim kemudian mengenkripsi hash pesan dengan kunci privat pengirim untuk membuat tanda tangan pribadi pengirim. Setelah menerima pesan dan tanda tangan, penerima mendekripsi tanda tangan menggunakan kunci umum pengirim untuk memulihkan hash pesan dan hash pesan menggunakan algoritma hash yang sama dengan yang digunakan pengirim. Jika hash pesan bahwa penerima menghitung sama persis dengan hash pesan yang diterima dari pengirim, penerima dapat memastikan bahwa pesan tidak diubah saat transit. Perhatikan bahwa tanda tangan dapat diverifikasi oleh siapa pun, karena kunci umum pengirim adalah pengetahuan umum.

Catatan

Pembuat algoritma DSA telah menarik dukungan mereka untuk itu. Pertimbangkan untuk RSACryptoServiceProvider menggunakan kelas alih-alih DSACryptoServiceProvider kelas . Gunakan DSACryptoServiceProvider hanya untuk kompatibilitas dengan aplikasi dan data warisan.

Algoritma ini mendukung panjang kunci dari 512 bit hingga 1024 bit dengan kenaikan 64 bit.

Konstruktor

DSACryptoServiceProvider()

Menginisialisasi instans baru kelas DSACryptoServiceProvider.

DSACryptoServiceProvider(CspParameters)

Menginisialisasi instans DSACryptoServiceProvider baru kelas dengan parameter yang ditentukan untuk penyedia layanan kriptografi (CSP).

DSACryptoServiceProvider(Int32)

Menginisialisasi instans DSACryptoServiceProvider baru kelas dengan ukuran kunci yang ditentukan.

DSACryptoServiceProvider(Int32, CspParameters)

Menginisialisasi instans DSACryptoServiceProvider baru kelas dengan ukuran kunci dan parameter yang ditentukan untuk penyedia layanan kriptografi (CSP).

Bidang

KeySizeValue

Mewakili ukuran, dalam bit, dari modulus kunci yang digunakan oleh algoritma asimetris.

(Diperoleh dari AsymmetricAlgorithm)
LegalKeySizesValue

Menentukan ukuran kunci yang didukung oleh algoritma asimetris.

(Diperoleh dari AsymmetricAlgorithm)

Properti

CspKeyContainerInfo

CspKeyContainerInfo Mendapatkan objek yang menjelaskan informasi tambahan tentang pasangan kunci kriptografi.

KeyExchangeAlgorithm

Mendapatkan nama algoritma pertukaran kunci.

KeySize

Mendapatkan ukuran kunci yang digunakan oleh algoritma asimetris dalam bit.

LegalKeySizes

Mendapatkan ukuran kunci yang didukung oleh algoritma asimetris.

LegalKeySizes

Mendapatkan ukuran kunci yang didukung oleh algoritma asimetris.

(Diperoleh dari AsymmetricAlgorithm)
PersistKeyInCsp

Mendapatkan atau menetapkan nilai yang menunjukkan apakah kunci harus dipertahankan di penyedia layanan kriptografi (CSP).

PublicOnly

Mendapatkan nilai yang menunjukkan apakah DSACryptoServiceProvider objek hanya berisi kunci publik.

SignatureAlgorithm

Mendapatkan nama algoritma tanda tangan.

UseMachineKeyStore

Mendapatkan atau menetapkan nilai yang menunjukkan apakah kunci harus disimpan di penyimpanan kunci komputer alih-alih penyimpanan profil pengguna.

Metode

Clear()

Merilis semua sumber daya yang AsymmetricAlgorithm digunakan oleh kelas .

(Diperoleh dari AsymmetricAlgorithm)
CreateSignature(Byte[])

DSA Membuat tanda tangan untuk data yang ditentukan.

CreateSignature(Byte[], DSASignatureFormat)

Membuat tanda tangan DSA untuk nilai hash yang ditentukan dalam format yang ditunjukkan.

(Diperoleh dari DSA)
CreateSignatureCore(ReadOnlySpan<Byte>, DSASignatureFormat)

Membuat tanda tangan DSA untuk nilai hash yang ditentukan dalam format yang ditunjukkan.

(Diperoleh dari DSA)
Dispose()

Merilis semua sumber daya yang digunakan oleh instans AsymmetricAlgorithm kelas saat ini.

(Diperoleh dari AsymmetricAlgorithm)
Dispose(Boolean)

Merilis sumber daya tidak terkelola yang digunakan oleh AsymmetricAlgorithm kelas dan secara opsional merilis sumber daya terkelola.

(Diperoleh dari AsymmetricAlgorithm)
Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
ExportCspBlob(Boolean)

Mengekspor blob yang berisi informasi kunci yang DSACryptoServiceProvider terkait dengan objek.

ExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, PbeParameters)

Mengekspor kunci saat ini dalam format PKCS#8 EncryptedPrivateKeyInfo dengan kata sandi berbasis byte.

(Diperoleh dari AsymmetricAlgorithm)
ExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, PbeParameters)

Mengekspor kunci saat ini dalam format PKCS#8 EncryptedPrivateKeyInfo dengan kata sandi berbasis karakter.

(Diperoleh dari AsymmetricAlgorithm)
ExportEncryptedPkcs8PrivateKeyPem(ReadOnlySpan<Byte>, PbeParameters)

Mengekspor kunci saat ini dalam format PKCS#8 EncryptedPrivateKeyInfo dengan kata sandi berbasis byte, yang dikodekan PEM.

(Diperoleh dari AsymmetricAlgorithm)
ExportEncryptedPkcs8PrivateKeyPem(ReadOnlySpan<Char>, PbeParameters)

Mengekspor kunci saat ini dalam format PKCS#8 EncryptedPrivateKeyInfo dengan kata sandi berbasis karakter, yang dikodekan PEM.

(Diperoleh dari AsymmetricAlgorithm)
ExportParameters(Boolean)

DSAParametersMengekspor .

ExportPkcs8PrivateKey()

Mengekspor kunci saat ini dalam format PKCS#8 PrivateKeyInfo.

(Diperoleh dari AsymmetricAlgorithm)
ExportPkcs8PrivateKeyPem()

Mengekspor kunci saat ini dalam format PKCS#8 PrivateKeyInfo, yang dikodekan PEM.

(Diperoleh dari AsymmetricAlgorithm)
ExportSubjectPublicKeyInfo()

Mengekspor bagian kunci publik dari kunci saat ini dalam format SubjectPublicKeyInfo X.509.

(Diperoleh dari AsymmetricAlgorithm)
ExportSubjectPublicKeyInfoPem()

Mengekspor bagian kunci publik dari kunci saat ini dalam format SubjectPublicKeyInfo X.509, yang dikodekan PEM.

(Diperoleh dari AsymmetricAlgorithm)
Finalize()

Membebaskan semua sumber daya yang terkait dengan instans ini.

FromXmlString(String)

Merekonstruksi DSA objek dari string XML.

(Diperoleh dari DSA)
GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetMaxSignatureSize(DSASignatureFormat)

Mendapatkan ukuran terbesar, dalam byte, untuk tanda tangan yang dihasilkan oleh kunci ini dalam format yang ditunjukkan.

(Diperoleh dari DSA)
GetType()

Mendapatkan dari instans Type saat ini.

(Diperoleh dari Object)
HashData(Byte[], Int32, Int32, HashAlgorithmName)

Saat ditimpa dalam kelas turunan, menghitung nilai hash dari bagian tertentu dari array byte dengan menggunakan algoritma hash tertentu.

(Diperoleh dari DSA)
HashData(Stream, HashAlgorithmName)

Saat ditimpa di kelas turunan, menghitung nilai hash dari aliran biner tertentu dengan menggunakan algoritma hash tertentu.

(Diperoleh dari DSA)
ImportCspBlob(Byte[])

Mengimpor blob yang mewakili informasi kunci DSA.

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

Mengimpor keypair publik/privat dari struktur PKCS#8 EncryptedPrivateKeyInfo setelah mendekripsi dengan kata sandi berbasis byte, menggantikan kunci untuk objek ini.

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

Mengimpor keypair publik/privat dari struktur PKCS#8 EncryptedPrivateKeyInfo setelah mendekripsi dengan kata sandi berbasis byte, menggantikan kunci untuk objek ini.

(Diperoleh dari DSA)
ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, ReadOnlySpan<Byte>, Int32)

Mengimpor keypair publik/privat dari struktur PKCS#8 EncryptedPrivateKeyInfo setelah mendekripsi dengan kata sandi berbasis karakter, menggantikan kunci untuk objek ini.

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

Mengimpor keypair publik/privat dari struktur PKCS#8 EncryptedPrivateKeyInfo setelah mendekripsi dengan kata sandi berbasis karakter, menggantikan kunci untuk objek ini.

(Diperoleh dari DSA)
ImportFromEncryptedPem(ReadOnlySpan<Char>, ReadOnlySpan<Byte>)

Mengimpor kunci privat yang dikodekan RFC 7468 PEM terenkripsi, menggantikan kunci untuk objek ini.

(Diperoleh dari DSA)
ImportFromEncryptedPem(ReadOnlySpan<Char>, ReadOnlySpan<Char>)

Mengimpor kunci privat yang dikodekan RFC 7468 PEM terenkripsi, menggantikan kunci untuk objek ini.

(Diperoleh dari DSA)
ImportFromPem(ReadOnlySpan<Char>)

Mengimpor kunci yang dikodekan RFC 7468 PEM, menggantikan kunci untuk objek ini.

(Diperoleh dari DSA)
ImportParameters(DSAParameters)

Mengimpor yang ditentukan DSAParameters.

ImportPkcs8PrivateKey(ReadOnlySpan<Byte>, Int32)

Mengimpor keypair publik/privat dari struktur PKCS#8 PrivateKeyInfo setelah dekripsi, menggantikan kunci untuk objek ini.

(Diperoleh dari DSA)
ImportSubjectPublicKeyInfo(ReadOnlySpan<Byte>, Int32)

Mengimpor kunci publik dari struktur SubjectPublicKeyInfo X.509 setelah dekripsi, menggantikan kunci untuk objek ini.

(Diperoleh dari DSA)
MemberwiseClone()

Membuat salinan dangkal dari saat ini Object.

(Diperoleh dari Object)
SignData(Byte[])

Menghitung nilai hash dari array byte yang ditentukan dan menandatangani nilai hash yang dihasilkan.

SignData(Byte[], HashAlgorithmName)

Menghitung nilai hash dari array byte yang ditentukan menggunakan algoritma hash yang ditentukan dan menandatangani nilai hash yang dihasilkan.

(Diperoleh dari DSA)
SignData(Byte[], HashAlgorithmName, DSASignatureFormat)

Menghitung nilai hash dari data yang ditentukan dan menandatanganinya menggunakan format tanda tangan yang ditentukan.

(Diperoleh dari DSA)
SignData(Byte[], Int32, Int32)

Menandatangani array byte dari titik awal yang ditentukan ke titik akhir yang ditentukan.

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

Menghitung nilai hash dari sebagian array byte yang ditentukan menggunakan algoritma hash yang ditentukan dan menandatangani nilai hash yang dihasilkan.

(Diperoleh dari DSA)
SignData(Byte[], Int32, Int32, HashAlgorithmName, DSASignatureFormat)

Menghitung nilai hash dari data yang ditentukan dan menandatanganinya menggunakan format tanda tangan yang ditentukan.

(Diperoleh dari DSA)
SignData(Stream)

Menghitung nilai hash dari aliran input yang ditentukan dan menandatangani nilai hash yang dihasilkan.

SignData(Stream, HashAlgorithmName)

Menghitung nilai hash dari aliran yang ditentukan menggunakan algoritma hash yang ditentukan dan menandatangani nilai hash yang dihasilkan.

(Diperoleh dari DSA)
SignData(Stream, HashAlgorithmName, DSASignatureFormat)

Menghitung nilai hash dari data yang ditentukan dan menandatanganinya menggunakan format tanda tangan yang ditentukan.

(Diperoleh dari DSA)
SignDataCore(ReadOnlySpan<Byte>, HashAlgorithmName, DSASignatureFormat)

Menghitung nilai hash dari data yang ditentukan dan menandatanganinya menggunakan format tanda tangan yang ditentukan.

(Diperoleh dari DSA)
SignDataCore(Stream, HashAlgorithmName, DSASignatureFormat)

Menghitung nilai hash dari data yang ditentukan dan menandatanganinya menggunakan format tanda tangan yang ditentukan.

(Diperoleh dari DSA)
SignHash(Byte[], String)

Menghitung tanda tangan untuk nilai hash yang ditentukan dengan mengenkripsinya dengan kunci privat.

ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)
ToXmlString(Boolean)

Membuat dan mengembalikan representasi string XML dari objek saat ini DSA .

(Diperoleh dari DSA)
TryCreateSignature(ReadOnlySpan<Byte>, Span<Byte>, DSASignatureFormat, Int32)

Mencoba membuat tanda tangan DSA untuk nilai hash yang ditentukan dalam format yang ditunjukkan dan menempatkannya ke dalam buffer yang disediakan.

(Diperoleh dari DSA)
TryCreateSignature(ReadOnlySpan<Byte>, Span<Byte>, Int32)

Mencoba membuat tanda tangan DSA untuk hash yang ditentukan ke dalam buffer yang disediakan.

(Diperoleh dari DSA)
TryCreateSignatureCore(ReadOnlySpan<Byte>, Span<Byte>, DSASignatureFormat, Int32)

Mencoba membuat tanda tangan DSA untuk nilai hash yang ditentukan dalam format yang ditunjukkan dan menempatkannya ke dalam buffer yang disediakan.

(Diperoleh dari DSA)
TryExportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, PbeParameters, Span<Byte>, Int32)

Mencoba mengekspor kunci saat ini dalam format PKCS#8 EncryptedPrivateKeyInfo ke dalam buffer yang disediakan, menggunakan kata sandi berbasis byte.

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

Mencoba mengekspor kunci saat ini dalam format PKCS#8 EncryptedPrivateKeyInfo ke dalam buffer yang disediakan, menggunakan kata sandi berbasis karakter.

(Diperoleh dari DSA)
TryExportEncryptedPkcs8PrivateKeyPem(ReadOnlySpan<Byte>, PbeParameters, Span<Char>, Int32)

Mencoba mengekspor kunci saat ini dalam format PKCS#8 EncryptedPrivateKeyInfo dengan kata sandi berbasis byte, yang dikodekan PEM.

(Diperoleh dari AsymmetricAlgorithm)
TryExportEncryptedPkcs8PrivateKeyPem(ReadOnlySpan<Char>, PbeParameters, Span<Char>, Int32)

Mengekspor kunci saat ini dalam format PKCS#8 EncryptedPrivateKeyInfo dengan kata sandi berbasis karakter, yang dikodekan PEM.

(Diperoleh dari AsymmetricAlgorithm)
TryExportPkcs8PrivateKey(Span<Byte>, Int32)

Mencoba mengekspor kunci saat ini dalam format PKCS#8 PrivateKeyInfo ke dalam buffer yang disediakan.

(Diperoleh dari DSA)
TryExportPkcs8PrivateKeyPem(Span<Char>, Int32)

Mencoba mengekspor kunci saat ini dalam format PKCS#8 PrivateKeyInfo yang dikodekan PEM ke dalam buffer yang disediakan.

(Diperoleh dari AsymmetricAlgorithm)
TryExportSubjectPublicKeyInfo(Span<Byte>, Int32)

Mencoba mengekspor kunci saat ini dalam format X.509 SubjectPublicKeyInfo ke dalam buffer yang disediakan.

(Diperoleh dari DSA)
TryExportSubjectPublicKeyInfoPem(Span<Char>, Int32)

Mencoba mengekspor kunci saat ini dalam format SubjectPublicKeyInfo X.509 yang dikodekan PEM ke dalam buffer yang disediakan.

(Diperoleh dari AsymmetricAlgorithm)
TryHashData(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, Int32)

Mencoba menghitung nilai hash dari data yang disediakan ke dalam buffer yang disediakan.

(Diperoleh dari DSA)
TrySignData(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, DSASignatureFormat, Int32)

Mencoba membuat tanda tangan DSA untuk data yang ditentukan dalam format yang ditunjukkan dan menempatkannya ke dalam buffer yang disediakan.

(Diperoleh dari DSA)
TrySignData(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, Int32)

Mencoba membuat tanda tangan DSA untuk data yang ditentukan ke dalam buffer yang disediakan.

(Diperoleh dari DSA)
TrySignDataCore(ReadOnlySpan<Byte>, Span<Byte>, HashAlgorithmName, DSASignatureFormat, Int32)

Mencoba membuat tanda tangan DSA untuk data yang ditentukan dalam format yang ditunjukkan dan menempatkannya ke dalam buffer yang disediakan.

(Diperoleh dari DSA)
VerifyData(Byte[], Byte[])

Memverifikasi data tanda tangan yang ditentukan dengan membandingkannya dengan tanda tangan yang dihitung untuk data yang ditentukan.

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

Memverifikasi bahwa tanda tangan digital valid dengan menghitung nilai hash data yang ditentukan menggunakan algoritma hash yang ditentukan dan membandingkannya dengan tanda tangan yang disediakan.

(Diperoleh dari DSA)
VerifyData(Byte[], Byte[], HashAlgorithmName, DSASignatureFormat)

Memverifikasi bahwa tanda tangan digital valid untuk data yang disediakan.

(Diperoleh dari DSA)
VerifyData(Byte[], Int32, Int32, Byte[], HashAlgorithmName)

Memverifikasi bahwa tanda tangan digital valid dengan menghitung nilai hash data dalam sebagian array byte menggunakan algoritma hash yang ditentukan dan membandingkannya dengan tanda tangan yang disediakan.

(Diperoleh dari DSA)
VerifyData(Byte[], Int32, Int32, Byte[], HashAlgorithmName, DSASignatureFormat)

Memverifikasi bahwa tanda tangan digital valid untuk data yang disediakan.

(Diperoleh dari DSA)
VerifyData(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, HashAlgorithmName)

Memverifikasi bahwa tanda tangan digital valid dengan menghitung nilai hash data dalam rentang byte menggunakan algoritma hash yang ditentukan dan membandingkannya dengan tanda tangan yang disediakan.

(Diperoleh dari DSA)
VerifyData(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, HashAlgorithmName, DSASignatureFormat)

Memverifikasi bahwa tanda tangan digital valid untuk data yang disediakan.

(Diperoleh dari DSA)
VerifyData(Stream, Byte[], HashAlgorithmName)

Memverifikasi bahwa tanda tangan digital valid dengan menghitung nilai hash aliran yang ditentukan menggunakan algoritma hash yang ditentukan dan membandingkannya dengan tanda tangan yang disediakan.

(Diperoleh dari DSA)
VerifyData(Stream, Byte[], HashAlgorithmName, DSASignatureFormat)

Memverifikasi bahwa tanda tangan digital valid untuk data yang disediakan.

(Diperoleh dari DSA)
VerifyDataCore(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, HashAlgorithmName, DSASignatureFormat)

Memverifikasi bahwa tanda tangan digital valid untuk data yang disediakan.

(Diperoleh dari DSA)
VerifyDataCore(Stream, ReadOnlySpan<Byte>, HashAlgorithmName, DSASignatureFormat)

Memverifikasi bahwa tanda tangan digital valid untuk data yang disediakan.

(Diperoleh dari DSA)
VerifyHash(Byte[], String, Byte[])

Memverifikasi data tanda tangan yang ditentukan dengan membandingkannya dengan tanda tangan yang dihitung untuk nilai hash yang ditentukan.

VerifySignature(Byte[], Byte[])

Memverifikasi DSA tanda tangan untuk data yang ditentukan.

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

Memverifikasi bahwa tanda tangan digital valid untuk hash yang disediakan.

(Diperoleh dari DSA)
VerifySignature(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>)

Memverifikasi bahwa tanda tangan digital valid untuk hash data yang disediakan.

(Diperoleh dari DSA)
VerifySignature(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, DSASignatureFormat)

Memverifikasi bahwa tanda tangan digital valid untuk hash yang disediakan.

(Diperoleh dari DSA)
VerifySignatureCore(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, DSASignatureFormat)

Memverifikasi bahwa tanda tangan digital valid untuk hash yang disediakan.

(Diperoleh dari DSA)

Implementasi Antarmuka Eksplisit

IDisposable.Dispose()

API ini mendukung infrastruktur produk dan tidak dimaksudkan untuk digunakan langsung dari kode Anda.

Untuk deskripsi anggota ini, lihat Dispose().

(Diperoleh dari AsymmetricAlgorithm)

Berlaku untuk

Lihat juga