Export (0) Print
Expand All

DSASignatureFormatter.CreateSignature Method (Byte[])

Creates the Digital Signature Algorithm (DSA) PKCS #1 signature for the specified data.

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

public override byte[] CreateSignature(
	byte[] rgbHash
)

Parameters

rgbHash
Type: System.Byte[]

The data to be signed.

Return Value

Type: System.Byte[]
The digital signature for the specified data.

ExceptionCondition
ArgumentNullException

rgbHash is null.

CryptographicUnexpectedOperationException

The OID is null.

-or-

The DSA key is null.

The resulting signature data can be verified by using VerifySignature.

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

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

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Show:
© 2014 Microsoft