DSA.TryCreateSignature(ReadOnlySpan<Byte>, Span<Byte>, Int32) メソッド

定義

指定されたハッシュの DSA 署名を、指定されたバッファーに作成しようとします。Attempts to create the DSA signature for the specified hash into the provided buffer.

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

パラメーター

hash
ReadOnlySpan<Byte>

署名するハッシュ。The hash to sign.

destination
Span<Byte>

署名を受け取るバイト スパン。The byte span to receive the signature.

bytesWritten
Int32

このメソッドから制御が戻ったときに、destination に書き込まれたバイト数を示す値が含まれます。When this method returns, contains a value that indicates the number of bytes written to destination.

戻り値

true が結果を受け入れるだけの十分な大きさの場合は destination。それ以外の場合は falsetrue if destination is large enough to receive the result; otherwise, false.

例外

このインスタンスでは公開キーのみ表されます。This instance represents only a public key.

または-or-

この実装の種類では従来の DSA (FIPS 186-2) のみがサポートされます。また、hash は 20 バイトの値ではありません。The implementation type only supports legacy DSA (FIPS 186-2), and hash is not a 20-byte value.

または-or-

それ以外の場合は署名の作成が失敗しました。Creating the signature otherwise failed.

注釈

このメソッドの既定の実装では、CreateSignature(Byte[]) を呼び出し、結果を destinationにコピーします。The default implementation of this method is to call CreateSignature(Byte[]) and copy the result to destination. 派生型では、このメソッドをオーバーライドして、中間の配列を作成しないようにする必要があります。Derived types should override this method to avoid the intermediate array creation.

適用対象