DSA.TryCreateSignature Метод

Определение

Пытается создать подпись DSA для указанного хэша в предоставленный буфер.

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>

Хэш для подписывания.

destination
Span<Byte>

Диапазон байтов для получения подписи.

bytesWritten
Int32

При возврате этого метода содержит значение, указывающее количество байтов, записанных destinationв .

Возвращаемое значение

true Значение , если destination достаточно большое, чтобы получить результат; в противном случае false.

Исключения

Этот экземпляр представляет только открытый ключ.

–или–

Тип реализации поддерживает только устаревшую DSA (FIPS 186-2), а hash не 20-байтовое значение.

–или–

Создание подписи в противном случае завершилось ошибкой.

Комментарии

Реализация этого метода по умолчанию заключается в вызове CreateSignature(Byte[]) и копировании результата destinationв . Производные типы должны переопределить этот метод, чтобы избежать создания промежуточного массива.

Применяется к