RSAPKCS1SignatureDeformatter Klas

Definitie

Hiermee wordt een RSA PKCS #1 versie 1.5-handtekening geverifieerd.

public ref class RSAPKCS1SignatureDeformatter : System::Security::Cryptography::AsymmetricSignatureDeformatter
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public class RSAPKCS1SignatureDeformatter : System.Security.Cryptography.AsymmetricSignatureDeformatter
public class RSAPKCS1SignatureDeformatter : System.Security.Cryptography.AsymmetricSignatureDeformatter
[System.Runtime.InteropServices.ComVisible(true)]
public class RSAPKCS1SignatureDeformatter : System.Security.Cryptography.AsymmetricSignatureDeformatter
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
type RSAPKCS1SignatureDeformatter = class
    inherit AsymmetricSignatureDeformatter
type RSAPKCS1SignatureDeformatter = class
    inherit AsymmetricSignatureDeformatter
[<System.Runtime.InteropServices.ComVisible(true)>]
type RSAPKCS1SignatureDeformatter = class
    inherit AsymmetricSignatureDeformatter
Public Class RSAPKCS1SignatureDeformatter
Inherits AsymmetricSignatureDeformatter
Overname
RSAPKCS1SignatureDeformatter
Kenmerken

Voorbeelden

In het volgende voorbeeld ziet u hoe u de VerifySignature methode gebruikt om een handtekening te verifiëren.

using System;
using System.Security.Cryptography;

class RSASample
{

    static void Main()
    {
        try
        {
            //Create a new instance of RSA.
            using (RSA rsa = RSA.Create())
            {
                //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 
                //RSA instance 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  
                //RSA instance 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);
        }
    }
}
Imports System.Security.Cryptography

Friend Class RSASample

    Shared Sub Main()
        Try
            'Create a new instance of RSA.
            Using rsa As RSA = RSA.Create()
                'The hash to sign.
                Dim hash() As Byte
                Using sha256 As SHA256 = SHA256.Create()
                    Dim data() As 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)
                End Using

                'Create an RSASignatureFormatter object and pass it the 
                'RSA instance to transfer the key information.
                Dim RSAFormatter As New RSAPKCS1SignatureFormatter(rsa)

                'Set the hash algorithm to SHA256.
                RSAFormatter.SetHashAlgorithm("SHA256")

                'Create a signature for HashValue and return it.
                Dim signedHash() As Byte = RSAFormatter.CreateSignature(hash)
                'Create an RSAPKCS1SignatureDeformatter object and pass it the  
                'RSA instance to transfer the key information.
                Dim RSADeformatter As New RSAPKCS1SignatureDeformatter(rsa)
                RSADeformatter.SetHashAlgorithm("SHA256")
                'Verify the hash and display the results to the console. 
                If RSADeformatter.VerifySignature(hash, signedHash) Then
                    Console.WriteLine("The signature was verified.")
                Else
                    Console.WriteLine("The signature was not verified.")
                End If
            End Using

        Catch e As CryptographicException
            Console.WriteLine(e.Message)
        End Try
    End Sub

End Class

Opmerkingen

Deze klasse wordt gebruikt om een digitale handtekening te verifiëren die is gemaakt met het RSA algoritme.

Gebruik RSAPKCS1SignatureFormatter dit om digitale handtekeningen te maken met het RSA algoritme.

Constructors

Name Description
RSAPKCS1SignatureDeformatter()

Initialiseert een nieuw exemplaar van de RSAPKCS1SignatureDeformatter klasse.

RSAPKCS1SignatureDeformatter(AsymmetricAlgorithm)

Initialiseert een nieuw exemplaar van de RSAPKCS1SignatureDeformatter klasse met de opgegeven sleutel.

Methoden

Name Description
Equals(Object)

Bepaalt of het opgegeven object gelijk is aan het huidige object.

(Overgenomen van Object)
GetHashCode()

Fungeert als de standaardhashfunctie.

(Overgenomen van Object)
GetType()

Hiermee haalt u de Type huidige instantie op.

(Overgenomen van Object)
MemberwiseClone()

Hiermee maakt u een ondiepe kopie van de huidige Object.

(Overgenomen van Object)
SetHashAlgorithm(String)

Hiermee stelt u het hash-algoritme in dat moet worden gebruikt voor het verifiëren van de handtekening.

SetKey(AsymmetricAlgorithm)

Hiermee stelt u de openbare sleutel in die moet worden gebruikt voor het verifiëren van de handtekening.

ToString()

Retourneert een tekenreeks die het huidige object vertegenwoordigt.

(Overgenomen van Object)
VerifySignature(Byte[], Byte[])

Controleert de RSA PKCS#1-handtekening voor de opgegeven gegevens.

VerifySignature(HashAlgorithm, Byte[])

Verifieert de handtekening van de opgegeven hashwaarde.

(Overgenomen van AsymmetricSignatureDeformatter)

Van toepassing op

Zie ook