RSAPKCS1SignatureDeformatter Class
Verifies an RSA PKCS #1 version 1.5 signature.
System.Security.Cryptography.AsymmetricSignatureDeformatter
System.Security.Cryptography.RSAPKCS1SignatureDeformatter
Namespace: System.Security.Cryptography
Assembly: mscorlib (in mscorlib.dll)
The RSAPKCS1SignatureDeformatter type exposes the following members.
| Name | Description | |
|---|---|---|
![]() | RSAPKCS1SignatureDeformatter() | Initializes a new instance of the RSAPKCS1SignatureDeformatter class. |
![]() | RSAPKCS1SignatureDeformatter(AsymmetricAlgorithm) | Initializes a new instance of the RSAPKCS1SignatureDeformatter class with the specified key. |
| Name | Description | |
|---|---|---|
![]() | Equals(Object) | Determines whether the specified object is equal to the current object. (Inherited from Object.) |
![]() | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) |
![]() | GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) |
![]() | GetType | Gets the Type of the current instance. (Inherited from Object.) |
![]() | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) |
![]() | SetHashAlgorithm | Sets the hash algorithm to use for verifying the signature. (Overrides AsymmetricSignatureDeformatter.SetHashAlgorithm(String).) |
![]() | SetKey | Sets the public key to use for verifying the signature. (Overrides AsymmetricSignatureDeformatter.SetKey(AsymmetricAlgorithm).) |
![]() | ToString | Returns a string that represents the current object. (Inherited from Object.) |
![]() | VerifySignature(Byte[], Byte[]) | Verifies the RSA PKCS#1 signature for the specified data. (Overrides AsymmetricSignatureDeformatter.VerifySignature(Byte[], Byte[]).) |
![]() | VerifySignature(HashAlgorithm, Byte[]) | Verifies the signature from the specified hash value. (Inherited from AsymmetricSignatureDeformatter.) |
This class is used to verify a digital signature made with the RSA algorithm.
Use RSAPKCS1SignatureFormatter to create digital signatures with the RSA algorithm.
The following example demonstrates how to use the VerifySignature method to verify a signature.
using System; using System.Security.Cryptography; class RSASample { static void Main() { try { //Create a new instance of RSACryptoServiceProvider. using (RSACryptoServiceProvider rsa = new RSACryptoServiceProvider()) { //The hash to sign. byte[] hash; using (SHA256 sha256 = SHA256.Create()) { byte[] data = new byte[] { 59, 4, 248, 102, 77, 97, 142, 201, 210, 12, 224, 93, 25, 41, 100, 197, 213, 134, 130, 135 }; hash = sha256.ComputeHash(data); } //Create an RSASignatureFormatter object and pass it the //RSACryptoServiceProvider to transfer the key information. RSAPKCS1SignatureFormatter RSAFormatter = new RSAPKCS1SignatureFormatter(rsa); //Set the hash algorithm to SHA256. RSAFormatter.SetHashAlgorithm("SHA256"); //Create a signature for HashValue and return it. byte[] signedHash = RSAFormatter.CreateSignature(hash); //Create an RSAPKCS1SignatureDeformatter object and pass it the //RSACryptoServiceProvider to transfer the key information. RSAPKCS1SignatureDeformatter RSADeformatter = new RSAPKCS1SignatureDeformatter(rsa); RSADeformatter.SetHashAlgorithm("SHA256"); //Verify the hash and display the results to the console. if (RSADeformatter.VerifySignature(hash, signedHash)) { Console.WriteLine("The signature was verified."); } else { Console.WriteLine("The signature was not verified."); } } } catch (CryptographicException e) { Console.WriteLine(e.Message); } } }
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.
