RSA.TrySignHash Método

Definición

Intenta firmar el hash con la clave actual, escribiendo la firma en un búfer proporcionado.

C#
public virtual bool TrySignHash(ReadOnlySpan<byte> hash, Span<byte> destination, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, System.Security.Cryptography.RSASignaturePadding padding, out int bytesWritten);

Parámetros

hash
ReadOnlySpan<Byte>

Valor hash de los datos que se van a firmar.

destination
Span<Byte>

Búfer que va a recibir la firma RSA.

hashAlgorithm
HashAlgorithmName

Algoritmo hash usado para crear el valor hash de los datos.

padding
RSASignaturePadding

Relleno.

bytesWritten
Int32

Cuando este método devuelve un valor, el número total de bytes escritos en destination. Este parámetro se trata como sin inicializar.

Devoluciones

Es true si destination es lo suficientemente largo como para recibir la firma RSA; de lo contrario, es false.

Excepciones

padding es null.

hashAlgorithm.Name es null o Empty.

padding es un valor desconocido o no se admite para esta implementación.

O bien

Esta instancia representa solo una clave pública.

O bien

Error al crear la firma.

Comentarios

La implementación predeterminada de este método llama SignHash(Byte[], HashAlgorithmName, RSASignaturePadding) a y copia el resultado en destination. Los tipos derivados deben invalidar este método para evitar la creación de la matriz intermedia.

El algoritmo de firma RSA siempre generará una salida igual al número de bytes necesarios para KeySize bits.

Se aplica a

Producto Versiones
.NET Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Standard 2.1

Consulte también