Sdílet prostřednictvím


RSA.TrySignHash Metoda

Definice

Pokusí se podepsat hodnotu hash pomocí aktuálního klíče a zapíše podpis do poskytnuté vyrovnávací paměti.

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>

Hodnota hash dat, která mají být podepsána.

destination
Span<Byte>

Vyrovnávací paměť pro příjem podpisu RSA.

hashAlgorithm
HashAlgorithmName

Hashovací algoritmus použitý k vytvoření hodnoty hash dat.

padding
RSASignaturePadding

Odsazení.

bytesWritten
Int32

Když tato metoda vrátí, celkový počet bajtů zapsaných do destination. Tento parametr je považován za neinicializovaný.

Návraty

true pokud destination je dostatečně dlouhá na to, aby získala podpis RSA, falsev opačném případě .

Výjimky

padding je null.

hashAlgorithm.Name je null nebo Empty.

padding je neznámý nebo tato implementace nepodporuje.

-nebo-

Tato instance představuje pouze veřejný klíč.

-nebo-

Při vytváření podpisu došlo k chybě.

Poznámky

Výchozí implementace této metody zavolá SignHash(Byte[], HashAlgorithmName, RSASignaturePadding) a zkopíruje výsledek do destination. Odvozené typy by měly přepsat tuto metodu, aby se zabránilo vytvoření zprostředkujícího pole.

Algoritmus podpisu RSA vždy vytvoří výstup, který se rovná počtu bajtů požadovaných pro KeySize bity.

Platí pro

Viz také