SP800108HmacCounterKdf.DeriveBytes Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Перегрузки
DeriveBytes(Byte[], HashAlgorithmName, Byte[], Byte[], Int32) |
Наследует ключ указанной длины. |
DeriveBytes(Byte[], HashAlgorithmName, String, String, Int32) |
Наследует ключ указанной длины. |
DeriveBytes(ReadOnlySpan<Byte>, HashAlgorithmName, ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Int32) |
Наследует ключ указанной длины. |
DeriveBytes(ReadOnlySpan<Byte>, HashAlgorithmName, ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>) |
Заполняет буфер производным ключом. |
DeriveBytes(ReadOnlySpan<Byte>, HashAlgorithmName, ReadOnlySpan<Char>, ReadOnlySpan<Char>, Int32) |
Наследует ключ указанной длины. |
DeriveBytes(ReadOnlySpan<Byte>, HashAlgorithmName, ReadOnlySpan<Char>, ReadOnlySpan<Char>, Span<Byte>) |
Заполняет буфер производным ключом. |
DeriveBytes(Byte[], HashAlgorithmName, Byte[], Byte[], Int32)
- Исходный код:
- SP800108HmacCounterKdf.cs
- Исходный код:
- SP800108HmacCounterKdf.cs
Наследует ключ указанной длины.
public:
static cli::array <System::Byte> ^ DeriveBytes(cli::array <System::Byte> ^ key, System::Security::Cryptography::HashAlgorithmName hashAlgorithm, cli::array <System::Byte> ^ label, cli::array <System::Byte> ^ context, int derivedKeyLengthInBytes);
public static byte[] DeriveBytes (byte[] key, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, byte[] label, byte[] context, int derivedKeyLengthInBytes);
static member DeriveBytes : byte[] * System.Security.Cryptography.HashAlgorithmName * byte[] * byte[] * int -> byte[]
Public Shared Function DeriveBytes (key As Byte(), hashAlgorithm As HashAlgorithmName, label As Byte(), context As Byte(), derivedKeyLengthInBytes As Integer) As Byte()
Параметры
- key
- Byte[]
Ключ-производный ключ.
- hashAlgorithm
- HashAlgorithmName
Алгоритм HMAC.
- label
- Byte[]
Метка, определяющая назначение производного ключа.
- context
- Byte[]
Контекст, содержащий сведения, связанные с производным ключом.
- derivedKeyLengthInBytes
- Int32
Длина производного ключа в байтах.
Возвращаемое значение
Массив, содержащий производный ключ.
Исключения
hashAlgorithm
имеет Name пустой.
derivedKeyLengthInBytes
отрицательно или больше максимального числа байтов, которые могут быть производными.
hashAlgorithm
не является известным или поддерживаемым хэш-алгоритмом.
Текущая платформа не поддерживает реализацию HMAC.
Применяется к
DeriveBytes(Byte[], HashAlgorithmName, String, String, Int32)
- Исходный код:
- SP800108HmacCounterKdf.cs
- Исходный код:
- SP800108HmacCounterKdf.cs
Наследует ключ указанной длины.
public:
static cli::array <System::Byte> ^ DeriveBytes(cli::array <System::Byte> ^ key, System::Security::Cryptography::HashAlgorithmName hashAlgorithm, System::String ^ label, System::String ^ context, int derivedKeyLengthInBytes);
public static byte[] DeriveBytes (byte[] key, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, string label, string context, int derivedKeyLengthInBytes);
static member DeriveBytes : byte[] * System.Security.Cryptography.HashAlgorithmName * string * string * int -> byte[]
Public Shared Function DeriveBytes (key As Byte(), hashAlgorithm As HashAlgorithmName, label As String, context As String, derivedKeyLengthInBytes As Integer) As Byte()
Параметры
- key
- Byte[]
Ключ-производный ключ.
- hashAlgorithm
- HashAlgorithmName
Алгоритм HMAC.
- label
- String
Метка, определяющая назначение производного ключа.
- context
- String
Контекст, содержащий сведения, связанные с производным ключом.
- derivedKeyLengthInBytes
- Int32
Длина производного ключа в байтах.
Возвращаемое значение
Массив, содержащий производный ключ.
Исключения
hashAlgorithm
имеет Name пустой.
derivedKeyLengthInBytes
отрицательно или больше максимального числа байтов, которые могут быть производными.
hashAlgorithm
не является известным или поддерживаемым хэш-алгоритмом.
label
или context
содержит текст, который нельзя преобразовать в UTF-8.
Текущая платформа не поддерживает реализацию HMAC.
Комментарии
label
и context
будут преобразованы в байты с помощью кодировки UTF-8. для других кодировок выполните преобразование с помощью требуемой кодировки и используйте перегрузку, которая принимает метку и контекст в качестве последовательности байтов.
Применяется к
DeriveBytes(ReadOnlySpan<Byte>, HashAlgorithmName, ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Int32)
- Исходный код:
- SP800108HmacCounterKdf.cs
- Исходный код:
- SP800108HmacCounterKdf.cs
Наследует ключ указанной длины.
public:
static cli::array <System::Byte> ^ DeriveBytes(ReadOnlySpan<System::Byte> key, System::Security::Cryptography::HashAlgorithmName hashAlgorithm, ReadOnlySpan<System::Byte> label, ReadOnlySpan<System::Byte> context, int derivedKeyLengthInBytes);
public static byte[] DeriveBytes (ReadOnlySpan<byte> key, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, ReadOnlySpan<byte> label, ReadOnlySpan<byte> context, int derivedKeyLengthInBytes);
static member DeriveBytes : ReadOnlySpan<byte> * System.Security.Cryptography.HashAlgorithmName * ReadOnlySpan<byte> * ReadOnlySpan<byte> * int -> byte[]
Public Shared Function DeriveBytes (key As ReadOnlySpan(Of Byte), hashAlgorithm As HashAlgorithmName, label As ReadOnlySpan(Of Byte), context As ReadOnlySpan(Of Byte), derivedKeyLengthInBytes As Integer) As Byte()
Параметры
- key
- ReadOnlySpan<Byte>
Ключ-производный ключ.
- hashAlgorithm
- HashAlgorithmName
Алгоритм HMAC.
- label
- ReadOnlySpan<Byte>
Метка, определяющая назначение производного ключа.
- context
- ReadOnlySpan<Byte>
Контекст, содержащий сведения, связанные с производным ключом.
- derivedKeyLengthInBytes
- Int32
Длина производного ключа в байтах.
Возвращаемое значение
Массив, содержащий производный ключ.
Исключения
hashAlgorithm
имеет Name, null
.
hashAlgorithm
имеет Name пустой.
derivedKeyLengthInBytes
отрицательно или больше максимального числа байтов, которые могут быть производными.
hashAlgorithm
не является известным или поддерживаемым хэш-алгоритмом.
Текущая платформа не поддерживает реализацию HMAC.
Применяется к
DeriveBytes(ReadOnlySpan<Byte>, HashAlgorithmName, ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>)
- Исходный код:
- SP800108HmacCounterKdf.cs
- Исходный код:
- SP800108HmacCounterKdf.cs
Заполняет буфер производным ключом.
public:
static void DeriveBytes(ReadOnlySpan<System::Byte> key, System::Security::Cryptography::HashAlgorithmName hashAlgorithm, ReadOnlySpan<System::Byte> label, ReadOnlySpan<System::Byte> context, Span<System::Byte> destination);
public static void DeriveBytes (ReadOnlySpan<byte> key, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, ReadOnlySpan<byte> label, ReadOnlySpan<byte> context, Span<byte> destination);
static member DeriveBytes : ReadOnlySpan<byte> * System.Security.Cryptography.HashAlgorithmName * ReadOnlySpan<byte> * ReadOnlySpan<byte> * Span<byte> -> unit
Public Shared Sub DeriveBytes (key As ReadOnlySpan(Of Byte), hashAlgorithm As HashAlgorithmName, label As ReadOnlySpan(Of Byte), context As ReadOnlySpan(Of Byte), destination As Span(Of Byte))
Параметры
- key
- ReadOnlySpan<Byte>
Ключ-производный ключ.
- hashAlgorithm
- HashAlgorithmName
Алгоритм HMAC.
- label
- ReadOnlySpan<Byte>
Метка, определяющая назначение производного ключа.
- context
- ReadOnlySpan<Byte>
Контекст, содержащий сведения, связанные с производным ключом.
Исключения
hashAlgorithm
имеет Name, null
.
hashAlgorithm
имеет Name пустой.
destination
больше максимального числа байтов, которые могут быть производными.
hashAlgorithm
не является известным или поддерживаемым хэш-алгоритмом.
Текущая платформа не поддерживает реализацию HMAC.
Применяется к
DeriveBytes(ReadOnlySpan<Byte>, HashAlgorithmName, ReadOnlySpan<Char>, ReadOnlySpan<Char>, Int32)
- Исходный код:
- SP800108HmacCounterKdf.cs
- Исходный код:
- SP800108HmacCounterKdf.cs
Наследует ключ указанной длины.
public:
static cli::array <System::Byte> ^ DeriveBytes(ReadOnlySpan<System::Byte> key, System::Security::Cryptography::HashAlgorithmName hashAlgorithm, ReadOnlySpan<char> label, ReadOnlySpan<char> context, int derivedKeyLengthInBytes);
public static byte[] DeriveBytes (ReadOnlySpan<byte> key, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, ReadOnlySpan<char> label, ReadOnlySpan<char> context, int derivedKeyLengthInBytes);
static member DeriveBytes : ReadOnlySpan<byte> * System.Security.Cryptography.HashAlgorithmName * ReadOnlySpan<char> * ReadOnlySpan<char> * int -> byte[]
Public Shared Function DeriveBytes (key As ReadOnlySpan(Of Byte), hashAlgorithm As HashAlgorithmName, label As ReadOnlySpan(Of Char), context As ReadOnlySpan(Of Char), derivedKeyLengthInBytes As Integer) As Byte()
Параметры
- key
- ReadOnlySpan<Byte>
Ключ-производный ключ.
- hashAlgorithm
- HashAlgorithmName
Алгоритм HMAC.
- label
- ReadOnlySpan<Char>
Метка, определяющая назначение производного ключа.
- context
- ReadOnlySpan<Char>
Контекст, содержащий сведения, связанные с производным ключом.
- derivedKeyLengthInBytes
- Int32
Длина производного ключа в байтах.
Возвращаемое значение
Массив, содержащий производный ключ.
Исключения
hashAlgorithm
имеет Name, null
.
hashAlgorithm
имеет Name пустой.
derivedKeyLengthInBytes
отрицательно или больше максимального числа байтов, которые могут быть производными.
hashAlgorithm
не является известным или поддерживаемым хэш-алгоритмом.
label
или context
содержит текст, который нельзя преобразовать в UTF-8.
Текущая платформа не поддерживает реализацию HMAC.
Комментарии
label
и context
будут преобразованы в байты с помощью кодировки UTF-8. для других кодировок выполните преобразование с помощью требуемой кодировки и используйте перегрузку, которая принимает метку и контекст в качестве последовательности байтов.
Применяется к
DeriveBytes(ReadOnlySpan<Byte>, HashAlgorithmName, ReadOnlySpan<Char>, ReadOnlySpan<Char>, Span<Byte>)
- Исходный код:
- SP800108HmacCounterKdf.cs
- Исходный код:
- SP800108HmacCounterKdf.cs
Заполняет буфер производным ключом.
public:
static void DeriveBytes(ReadOnlySpan<System::Byte> key, System::Security::Cryptography::HashAlgorithmName hashAlgorithm, ReadOnlySpan<char> label, ReadOnlySpan<char> context, Span<System::Byte> destination);
public static void DeriveBytes (ReadOnlySpan<byte> key, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, ReadOnlySpan<char> label, ReadOnlySpan<char> context, Span<byte> destination);
static member DeriveBytes : ReadOnlySpan<byte> * System.Security.Cryptography.HashAlgorithmName * ReadOnlySpan<char> * ReadOnlySpan<char> * Span<byte> -> unit
Public Shared Sub DeriveBytes (key As ReadOnlySpan(Of Byte), hashAlgorithm As HashAlgorithmName, label As ReadOnlySpan(Of Char), context As ReadOnlySpan(Of Char), destination As Span(Of Byte))
Параметры
- key
- ReadOnlySpan<Byte>
Ключ-производный ключ.
- hashAlgorithm
- HashAlgorithmName
Алгоритм HMAC.
- label
- ReadOnlySpan<Char>
Метка, определяющая назначение производного ключа.
- context
- ReadOnlySpan<Char>
Контекст, содержащий сведения, связанные с производным ключом.
Исключения
hashAlgorithm
имеет Name, null
.
hashAlgorithm
имеет Name пустой.
destination
больше максимального числа байтов, которые могут быть производными.
hashAlgorithm
не является известным или поддерживаемым хэш-алгоритмом.
label
или context
содержит текст, который нельзя преобразовать в UTF-8.
Текущая платформа не поддерживает реализацию HMAC.
Комментарии
label
и context
будут преобразованы в байты с помощью кодировки UTF-8. для других кодировок выполните преобразование с помощью требуемой кодировки и используйте перегрузку, которая принимает метку и контекст в качестве последовательности байтов.