HMAC.Key Свойство

Определение

Возвращает или задает ключ, используемый при вычислении HMAC.

public:
 virtual property cli::array <System::Byte> ^ Key { cli::array <System::Byte> ^ get(); void set(cli::array <System::Byte> ^ value); };
public override byte[] Key { get; set; }
member this.Key : byte[] with get, set
Public Overrides Property Key As Byte()

Значение свойства

Byte[]

Ключ, используемый при вычислении HMAC.

Исключения

Предпринята попытка изменения свойства Key после начала хэширования.

Комментарии

Это свойство является ключом для хэш-алгоритма с ключом.

Код проверки подлинности сообщений на основе хэша (HMAC) можно использовать для определения того, было ли изменено сообщение, отправленное по небезопасным каналам, при условии, что отправитель и получатель совместно используют секретный ключ. Отправитель вычисляет хэш-значение для исходных данных и отправляет исходные данные и HMAC в виде одного сообщения. Получатель повторно вычисляет хэш-значение для полученного сообщения и проверяет, соответствует ли вычисленное хэш-значение переданного хэш-значения.

HMAC можно использовать с любой итеративной криптографической хэш-функцией, например MD5 или SHA-1, в сочетании с общим секретным ключом. Криптографическая надежность HMAC зависит от свойств базовой хэш-функции.

Любое изменение данных или хэш-значения приводит к несоответствию, так как для изменения сообщения и воспроизведения правильного хэш-значения требуется знание секретного ключа. Таким образом, если исходные и вычисляемые хэш-значения совпадают, сообщение проходит проверку подлинности.

Из-за проблем с конфликтами с MD5 и SHA-1 Майкрософт рекомендует модель безопасности на основе SHA-256 или более поздней версии.

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

См. также раздел