Sdílet prostřednictvím


DSA.TryCreateSignature Metoda

Definice

Přetížení

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

Pokusí se vytvořit podpis DSA pro zadanou hodnotu hash do poskytnuté vyrovnávací paměti.

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

Pokusí se vytvořit podpis DSA pro zadanou hodnotu hash v určeném formátu a umístit ho do poskytnuté vyrovnávací paměti.

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

Zdroj:
DSA.cs
Zdroj:
DSA.cs
Zdroj:
DSA.cs

Pokusí se vytvořit podpis DSA pro zadanou hodnotu hash do poskytnuté vyrovnávací paměti.

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

Parametry

hash
ReadOnlySpan<Byte>

Hodnota hash, která se má podepsat.

destination
Span<Byte>

Rozsah bajtů pro příjem podpisu.

bytesWritten
Int32

Když tato metoda vrátí, obsahuje hodnotu, která označuje počet bajtů zapsaných do destination.

Návraty

true pokud destination je dostatečně velká, aby získala výsledek, falsev opačném případě .

Výjimky

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

-nebo-

Typ implementace podporuje pouze starší verzi DSA (FIPS 186-2) a hash nejedná se o hodnotu 20 bajtů.

-nebo-

V opačném případě se nepodařilo vytvořit podpis.

Poznámky

Výchozí implementací této metody je volání CreateSignature(Byte[]) a zkopírování výsledku do destination. Odvozené typy by měly přepsat tuto metodu, aby se zabránilo vytvoření zprostředkujícího pole.

Platí pro

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

Zdroj:
DSA.cs
Zdroj:
DSA.cs
Zdroj:
DSA.cs

Pokusí se vytvořit podpis DSA pro zadanou hodnotu hash v určeném formátu a umístit ho do poskytnuté vyrovnávací paměti.

public:
 bool TryCreateSignature(ReadOnlySpan<System::Byte> hash, Span<System::Byte> destination, System::Security::Cryptography::DSASignatureFormat signatureFormat, [Runtime::InteropServices::Out] int % bytesWritten);
public bool TryCreateSignature (ReadOnlySpan<byte> hash, Span<byte> destination, System.Security.Cryptography.DSASignatureFormat signatureFormat, out int bytesWritten);
member this.TryCreateSignature : ReadOnlySpan<byte> * Span<byte> * System.Security.Cryptography.DSASignatureFormat * int -> bool
Public Function TryCreateSignature (hash As ReadOnlySpan(Of Byte), destination As Span(Of Byte), signatureFormat As DSASignatureFormat, ByRef bytesWritten As Integer) As Boolean

Parametry

hash
ReadOnlySpan<Byte>

Hodnota hash, která se má podepsat.

destination
Span<Byte>

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

signatureFormat
DSASignatureFormat

Formát kódování, který se má použít pro podpis.

bytesWritten
Int32

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

Návraty

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

Výjimky

signatureFormat není známý formát.

Při operaci podepisování došlo k chybě.

Platí pro