Udostępnij za pośrednictwem


RSA.TrySignHash Metoda

Definicja

Próbuje podpisać skrót przy użyciu bieżącego klucza, pisząc podpis w podanym buforze.

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

Parametry

hash
ReadOnlySpan<Byte>

Wartość skrótu danych do podpisania.

destination
Span<Byte>

Bufor do odbierania podpisu RSA.

hashAlgorithm
HashAlgorithmName

Algorytm skrótu używany do tworzenia wartości skrótu danych.

padding
RSASignaturePadding

Dopełnienie.

bytesWritten
Int32

Gdy ta metoda zwróci wartość , całkowita liczba bajtów zapisanych w destinationpliku . Ten parametr jest traktowany jako niezainicjowany.

Zwraca

truejeśli destination jest wystarczająco długi, aby otrzymać podpis RSA; w przeciwnym razie . false

Wyjątki

padding to null.

hashAlgorithm.Name jest lub nullEmpty.

padding jest nieznany lub nie jest obsługiwany przez tę implementację.

-lub-

To wystąpienie reprezentuje tylko klucz publiczny.

-lub-

Wystąpił błąd podczas tworzenia podpisu.

Uwagi

Domyślna implementacja tej metody wywołuje SignHash(Byte[], HashAlgorithmName, RSASignaturePadding) i kopiuje wynik do destination. Typy pochodne powinny zastąpić tę metodę, aby uniknąć tworzenia tablicy pośredniej.

Algorytm podpisu RSA zawsze generuje dane wyjściowe równe liczbie bajtów wymaganych dla KeySize bitów.

Dotyczy

Zobacz też