共用方式為


RSA.TrySignHash 方法

定義

將簽章寫入提供的緩衝區,嘗試以目前的金鑰簽署雜湊。

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

參數

hash
ReadOnlySpan<Byte>

要簽署之資料的雜湊值。

destination
Span<Byte>

要接收 RSA 簽章的緩衝區。

hashAlgorithm
HashAlgorithmName

用來建立該資料雜湊值的雜湊演算法。

padding
RSASignaturePadding

填補。

bytesWritten
Int32

當這個方法傳回時,寫入 destination 的位元組總數。 這個參數會被視為未初始化。

傳回

如果 destination 的長度足以接收 RSA 簽章,則為 true;否則為 false

例外狀況

paddingnull

hashAlgorithm.NamenullEmpty

padding 未知,或不支援此實作。

-或-

這個執行個體只表示公開金鑰。

-或-

建立簽章時發生錯誤。

備註

此方法預設實作會呼叫 SignHash(Byte[], HashAlgorithmName, RSASignaturePadding) ,並將結果 destination複製到 。 衍生型別應該覆寫這個方法,以避免建立中繼陣列。

RSA 簽章演算法一律會產生等於位所需 KeySize 位元組數目的輸出。

適用於

另請參閱