HMAC.Initialize Metodo

Definizione

Inizializza un'istanza dell'implementazione predefinita di HMAC.

public:
 override void Initialize();
public override void Initialize ();
override this.Initialize : unit -> unit
Public Overrides Sub Initialize ()

Commenti

Un codice di autenticazione dei messaggi basato su hash (HMAC) può essere usato per determinare se un messaggio inviato su un canale non sicuro è stato manomesso, a condizione che il mittente e il ricevitore condividono una chiave privata. Il mittente calcola il valore hash per i dati originali e invia sia i dati originali che HMAC come singolo messaggio. Il ricevitore ricompila 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. La forza crittografica di HMAC dipende dalle proprietà della funzione hash sottostante.

Qualsiasi modifica ai dati o al valore hash comporterà 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 meglio.

Si applica a