This topic has not yet been rated - Rate this topic

DSA Class

Represents the abstract base class from which all implementations of the Digital Signature Algorithm (DSA) must inherit.

Namespace:  System.Security.Cryptography
Assembly:  mscorlib (in mscorlib.dll)
[ComVisibleAttribute(true)]
public abstract class DSA : AsymmetricAlgorithm

The DSA type exposes the following members.

  Name Description
Protected method DSA Initializes a new instance of the DSA class.
Top
  Name Description
Public property KeyExchangeAlgorithm When overridden in a derived class, gets the name of the key exchange algorithm. (Inherited from AsymmetricAlgorithm.)
Public property KeySize Gets or sets the size, in bits, of the key modulus used by the asymmetric algorithm. (Inherited from AsymmetricAlgorithm.)
Public property LegalKeySizes Gets the key sizes that are supported by the asymmetric algorithm. (Inherited from AsymmetricAlgorithm.)
Public property SignatureAlgorithm Gets the name of the signature algorithm. (Inherited from AsymmetricAlgorithm.)
Top
  Name Description
Public method Clear Releases all resources used by the AsymmetricAlgorithm class. (Inherited from AsymmetricAlgorithm.)
Public method Static member Create() Creates the default cryptographic object used to perform the asymmetric algorithm.
Public method Static member Create(String) Creates the specified cryptographic object used to perform the asymmetric algorithm.
Public method CreateSignature When overridden in a derived class, creates the DSA signature for the specified data.
Public method Dispose() Releases all resources used by the current instance of the AsymmetricAlgorithm class. (Inherited from AsymmetricAlgorithm.)
Protected method Dispose(Boolean) Releases the unmanaged resources used by the AsymmetricAlgorithm class and optionally releases the managed resources. (Inherited from AsymmetricAlgorithm.)
Public method Equals(Object) Determines whether the specified Object is equal to the current Object. (Inherited from Object.)
Public method ExportParameters When overridden in a derived class, exports the DSAParameters.
Protected method Finalize Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method FromXmlString Reconstructs a DSA object from an XML string. (Overrides AsymmetricAlgorithm.FromXmlString(String).)
Public method GetHashCode Serves as a hash function for a particular type. (Inherited from Object.)
Public method GetType Gets the Type of the current instance. (Inherited from Object.)
Public method ImportParameters When overridden in a derived class, imports the specified DSAParameters.
Protected method MemberwiseClone Creates a shallow copy of the current Object. (Inherited from Object.)
Public method ToString Returns a string that represents the current object. (Inherited from Object.)
Public method ToXmlString Creates and returns an XML string representation of the current DSA object. (Overrides AsymmetricAlgorithm.ToXmlString(Boolean).)
Public method VerifySignature When overridden in a derived class, verifies the DSA signature for the specified data.
Top
  Name Description
Protected field KeySizeValue Represents the size, in bits, of the key modulus used by the asymmetric algorithm. (Inherited from AsymmetricAlgorithm.)
Protected field LegalKeySizesValue Specifies the key sizes that are supported by the asymmetric algorithm. (Inherited from AsymmetricAlgorithm.)
Top

You can use the DSA class and derived classes to create digital signatures that help protect the integrity of your data. The DSACryptoServiceProvider provides an implementation of this class.

To use a public-key system to digitally sign a message, the sender first applies a hash function to the message to create a message digest. The sender then encrypts the message digest with the sender's private key to create the sender's personal signature. Upon receiving the message and signature, the receiver decrypts the signature using the sender's public key to recover the message digest and hashes the message using the same hash algorithm that the sender used. If the message digest that the receiver computes exactly matches the message digest received from the sender, the receiver can assume that the message was not altered while in transit. Note that a signature can be verified by anyone, because the sender's public key is common knowledge.

This algorithm supports key lengths from 512 bits to 1024 bits in increments of 64 bits.

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Did you find this helpful?
(1500 characters remaining)
Community Content Add
Annotations FAQ