DSASignatureFormatter.SetHashAlgorithm Method (String)

 
System_CAPS_noteNote

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Specifies the hash algorithm for the Digital Signature Algorithm (DSA) signature formatter.

Namespace:   System.Security.Cryptography
Assembly:  mscorlib (in mscorlib.dll)

public override void SetHashAlgorithm(
	string strName
)

Parameters

strName
Type: System.String

The name of the hash algorithm to use for the signature formatter.

Exception Condition
CryptographicUnexpectedOperationException

The strName parameter does not map to the SHA1 hash algorithm.

using System;
using System.Security.Cryptography;

class DSASample
{

	static void Main()
	{
		try
		{
			//Create a new instance of DSACryptoServiceProvider.
			DSACryptoServiceProvider DSA = new DSACryptoServiceProvider();

			//The hash to sign.
			byte[] Hash = {59,4,248,102,77,97,142,201,210,12,224,93,25,41,100,197,213,134,130,135};

			//Create an DSASignatureFormatter object and pass it the 
			//DSACryptoServiceProvider to transfer the key information.
			DSASignatureFormatter DSAFormatter = new DSASignatureFormatter(DSA);

			//Set the hash algorithm to SHA1.
			DSAFormatter.SetHashAlgorithm("SHA1");

			//Create a signature for HashValue and return it.
			byte[] SignedHash = DSAFormatter.CreateSignature(Hash);

		}
		catch(CryptographicException e)
		{
			Console.WriteLine(e.Message);
		}
	}

}

.NET Framework
Available since 1.1
Return to top
Show: