Leer en inglés

Compartir a través de


DSASignatureDeformatter Clase

Definición

Comprueba una firma PKCS#1 v1.5 del algoritmo de firma digital (DSA).

C#
public class DSASignatureDeformatter : System.Security.Cryptography.AsymmetricSignatureDeformatter
C#
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public class DSASignatureDeformatter : System.Security.Cryptography.AsymmetricSignatureDeformatter
C#
[System.Runtime.InteropServices.ComVisible(true)]
public class DSASignatureDeformatter : System.Security.Cryptography.AsymmetricSignatureDeformatter
Herencia
DSASignatureDeformatter
Atributos

Ejemplos

C#
using System;
using System.Security.Cryptography;

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

            //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 
            //DSA instance 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);

            //Create an DSASignatureDeformatter object and pass it the 
            //DSA instance to transfer the key information.
            DSASignatureDeformatter DSADeformatter = new DSASignatureDeformatter(DSA);

            //Verify the hash and display the results to the console.
            if(DSADeformatter.VerifySignature(Hash, SignedHash))
            {
                Console.WriteLine("The signature was verified.");
            }
            else
            {
                Console.WriteLine("The signature was not verified.");
            }
        }
        catch(CryptographicException e)
        {
            Console.WriteLine(e.Message);
        }
    }
}

Comentarios

Importante

Los creadores del algoritmo DSA han retirado su compatibilidad con él. Considere la posibilidad de usar la RSA clase o la ECDsa clase en lugar de la DSA clase . Use DSA solo para la compatibilidad con los datos y las aplicaciones heredadas.

Constructores

DSASignatureDeformatter()

Inicializa una nueva instancia de la clase DSASignatureDeformatter.

DSASignatureDeformatter(AsymmetricAlgorithm)

Inicializa una nueva instancia de la clase DSASignatureDeformatter con la clave especificada.

Métodos

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
SetHashAlgorithm(String)

Especifica el algoritmo hash para el desformateador de firmas del algoritmo de firma digital (DSA).

SetKey(AsymmetricAlgorithm)

Especifica la clave que se va a utilizar para el desformateador de firmas del algoritmo de firma digital (DSA).

ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)
VerifySignature(Byte[], Byte[])

Comprueba la firma del algoritmo de firma digital (DSA) de los datos.

VerifySignature(HashAlgorithm, Byte[])

Crea la signatura a partir del valor hash especificado.

(Heredado de AsymmetricSignatureDeformatter)

Se aplica a

Producto Versiones
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

Consulte también