RSA.TrySignHash Metodo

Definizione

Tenta di firmare l'hash con la chiave corrente, scrivendo la firma in un buffer fornito.

public:
 virtual bool TrySignHash(ReadOnlySpan<System::Byte> hash, Span<System::Byte> destination, System::Security::Cryptography::HashAlgorithmName hashAlgorithm, System::Security::Cryptography::RSASignaturePadding ^ padding, [Runtime::InteropServices::Out] int % bytesWritten);
public virtual bool TrySignHash(ReadOnlySpan<byte> hash, Span<byte> destination, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, System.Security.Cryptography.RSASignaturePadding padding, out int bytesWritten);
abstract member TrySignHash : ReadOnlySpan<byte> * Span<byte> * System.Security.Cryptography.HashAlgorithmName * System.Security.Cryptography.RSASignaturePadding * int -> bool
override this.TrySignHash : ReadOnlySpan<byte> * Span<byte> * System.Security.Cryptography.HashAlgorithmName * System.Security.Cryptography.RSASignaturePadding * int -> bool
Public Overridable Function TrySignHash (hash As ReadOnlySpan(Of Byte), destination As Span(Of Byte), hashAlgorithm As HashAlgorithmName, padding As RSASignaturePadding, ByRef bytesWritten As Integer) As Boolean

Parametri

hash
ReadOnlySpan<Byte>

Valore hash dei dati da firmare.

destination
Span<Byte>

Buffer per ricevere la firma RSA.

hashAlgorithm
HashAlgorithmName

Algoritmo hash usato per creare il valore hash dei dati.

padding
RSASignaturePadding

Spaziatura interna.

bytesWritten
Int32

Quando termina, questo metodo contiene il numero totale di byte scritti in destination. Questo parametro viene considerato non inizializzato.

Valori restituiti

true se destination è sufficiente per ricevere la firma RSA; in caso contrario, false.

Eccezioni

padding è null.

hashAlgorithm.Name è null o Empty.

padding è sconosciuto o non supportato da questa implementazione.

oppure

Questa istanza rappresenta solo una chiave pubblica.

oppure

Errore durante la creazione della firma.

Commenti

L'implementazione predefinita di questo metodo chiama SignHash(Byte[], HashAlgorithmName, RSASignaturePadding) e copia il risultato in destination. I tipi derivati devono eseguire l'override di questo metodo per evitare la creazione della matrice intermedia.

L'algoritmo di firma RSA produrrà sempre un output uguale al numero di byte necessari per KeySize i bit.

Si applica a

Vedi anche