DSA.TryCreateSignature 方法

定義

多載

TryCreateSignature(ReadOnlySpan<Byte>, Span<Byte>, Int32)

嘗試在所提供緩衝區中為指定的雜湊建立 DSA 簽章。

TryCreateSignature(ReadOnlySpan<Byte>, Span<Byte>, DSASignatureFormat, Int32)

嘗試以指定的格式,建立指定雜湊值的 DSA 簽章,並放至提供的緩衝區。

TryCreateSignature(ReadOnlySpan<Byte>, Span<Byte>, Int32)

來源:
DSA.cs
來源:
DSA.cs
來源:
DSA.cs

嘗試在所提供緩衝區中為指定的雜湊建立 DSA 簽章。

public virtual bool TryCreateSignature (ReadOnlySpan<byte> hash, Span<byte> destination, out int bytesWritten);

參數

hash
ReadOnlySpan<Byte>

要簽署的雜湊。

destination
Span<Byte>

要接收簽章的位元組範圍。

bytesWritten
Int32

當此方法傳回時,會包含一個值,指出寫入 destination 的位元組數。

傳回

destination 夠大可接收結果,則為 true;否則為 false

例外狀況

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

-或-

實作類型只支援舊版 DSA (FIPS 186-2),且 hash 值不是 20 個位元組。

-或-

建立簽章失敗。

備註

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

適用於

.NET 9 及其他版本
產品 版本
.NET Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Standard 2.1

TryCreateSignature(ReadOnlySpan<Byte>, Span<Byte>, DSASignatureFormat, Int32)

來源:
DSA.cs
來源:
DSA.cs
來源:
DSA.cs

嘗試以指定的格式,建立指定雜湊值的 DSA 簽章,並放至提供的緩衝區。

public bool TryCreateSignature (ReadOnlySpan<byte> hash, Span<byte> destination, System.Security.Cryptography.DSASignatureFormat signatureFormat, out int bytesWritten);

參數

hash
ReadOnlySpan<Byte>

要簽署的哈希值。

destination
Span<Byte>

要接收簽章的緩衝區。

signatureFormat
DSASignatureFormat

用於簽章的編碼格式。

bytesWritten
Int32

當此方法傳回時,會包含一個值,指出寫入 destination 的位元組數。 這個參數會被視為未初始化。

傳回

destination 夠大可接收輸出,則為 true;否則為 false

例外狀況

signatureFormat 不是已知的格式。

簽署作業發生錯誤。

適用於

.NET 9 及其他版本
產品 版本
.NET 5, 6, 7, 8, 9