Condividi tramite


HMAC.Key Proprietà

Definizione

Ottiene o imposta la chiave da usare nel calcolo del valore 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()

Valore della proprietà

Byte[]

Chiave da usare nel calcolo HMAC.

Eccezioni

Viene effettuato un tentativo di modificare la proprietà Key dopo l'inizio della generazione di un hash.

Commenti

Questa proprietà è la chiave per l'algoritmo hash con chiave.

Un codice HMAC (Hash-based Message Authentication Code) può essere usato per determinare se un messaggio inviato su un canale non sicuro è stato manomesso, a condizione che il mittente e il destinatario condividono una chiave privata. Il mittente calcola il valore hash per i dati originali e invia i dati originali e HMAC come singolo messaggio. Il ricevitore ricomputa il valore hash nel messaggio ricevuto e verifica che il valore hash calcolato corrisponda al valore hash trasmesso.

HMAC può essere usato con qualsiasi funzione hash crittografica iterativa, ad esempio MD5 o SHA-1, in combinazione con una chiave condivisa privata. Il livello di crittografia di HMAC dipende dalle proprietà della funzione hash sottostante.

Qualsiasi modifica apportata ai dati o al valore hash comporta una mancata corrispondenza, perché è necessario conoscere la chiave privata per modificare il messaggio e riprodurre il valore hash corretto. Pertanto, se i valori hash originali e calcolati corrispondono, il messaggio viene autenticato.

A causa di problemi di collisione con MD5 e SHA-1, Microsoft consiglia un modello di sicurezza basato su SHA-256 o superiore.

Si applica a

Vedi anche