Compartilhar via


HMAC.Key Propriedade

Definição

Obtém ou define a chave a ser usada no algoritmo 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()

Valor da propriedade

Byte[]

A chave a ser usada no cálculo do HMAC.

Exceções

É feita uma tentativa de alterar a propriedade Key após o início do hash.

Comentários

Essa propriedade é a chave para o algoritmo de hash com chave.

Um HMAC (Código de Autenticação de Mensagem) baseado em hash pode ser usado para determinar se uma mensagem enviada por um canal inseguro foi adulterada, desde que o remetente e o receptor compartilhem uma chave secreta. O remetente calcula o valor de hash para os dados originais e envia os dados originais e o HMAC como uma única mensagem. O receptor recompõe o valor de hash na mensagem recebida e verifica se o valor de hash computado corresponde ao valor de hash transmitido.

O HMAC pode ser usado com qualquer função de hash criptográfica iterativa, como MD5 ou SHA-1, em combinação com uma chave compartilhada secreta. A força criptográfica do HMAC depende das propriedades da função de hash subjacente.

Qualquer alteração nos dados ou no valor de hash resulta em uma incompatibilidade, pois o conhecimento da chave secreta é necessário para alterar a mensagem e reproduzir o valor de hash correto. Portanto, se os valores de hash originais e computados corresponderem, a mensagem será autenticada.

Devido a problemas de colisão com MD5 e SHA-1, a Microsoft recomenda um modelo de segurança baseado no SHA-256 ou superior.

Aplica-se a

Confira também