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. для других кодировок выполните преобразование с помощью требуемой кодировки и используйте перегрузку, которая принимает метку и контекст в качестве последовательности байтов.