public sealed class DSACryptoServiceProvider : DSA { // Public Constructors public DSACryptoServiceProvider( ); public DSACryptoServiceProvider(CspParameters parameters); public DSACryptoServiceProvider(int dwKeySize); public DSACryptoServiceProvider(int dwKeySize, CspParameters parameters); // Public Static Properties public static bool UseMachineKeyStore{set; get; } // Public Instance Properties public override string KeyExchangeAlgorithm{get; // overrides AsymmetricAlgorithm public override int KeySize{get; // overrides AsymmetricAlgorithm public override KeySizes[ ] LegalKeySizes{get; // overrides AsymmetricAlgorithm public bool PersistKeyInCsp{set; get; } public override string SignatureAlgorithm{get; // overrides AsymmetricAlgorithm// Public Instance Methods public override byte[ ] CreateSignature(byte[ ] rgbHash); // overrides DSA public override DSAParameters ExportParameters(bool includePrivateParameters); // overrides DSA public override void ImportParameters( DSAParameters parameters); // overrides DSA public byte[ ] SignData(byte[ ] buffer); public byte[ ] SignData(byte[ ] buffer, int offset, int count); public byte[ ] SignData(System.IO.Stream inputStream); public byte[ ] SignHash(byte[ ] rgbHash, string str); public bool VerifyData(byte[ ] rgbData, byte[ ] rgbSignature); public bool VerifyHash(byte[ ] rgbHash, string str, byte[ ] rgbSignature); public override bool VerifySignature(byte[ ] rgbHash, byte[ ] rgbSignature); // overrides DSA// Protected Instance Methods protected override void Dispose(bool disposing); // overrides AsymmetricAlgorithm protected override void Finalize( ); // overrides object }
This subclass of DSA is the default implementation of the DSA and is a wrapper around the Windows Crypto API.
This class defines several new members; the SignData( ) method creates a digital signature by reading data from a stream. The VerifyData( ) method verifies a digital signature from the signed data (as opposed to the cryptographic hash code). The SignHash( ) and VerifyHash( ) methods are functionally equivalent to the CreateSignature( ) and VerifySignature( ) methods of the parent class.