Message authentication code: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica
Riga 3:
 
Il valore MAC protegge dunque sia l'[[integrità dei dati]] del messaggio sia la sua autenticità permettendo al destinatario dello stesso (che deve anch'egli possedere la chiave segreta) di rilevare qualsiasi modifica al messaggio: ecco perché dovrebbe essere chiamato ''Message Authentication and Integrity Code'', MAIC.
 
Come si desume quindi dalla descrizione, l'algoritmo MAC protegge solo da [[integrità dei dati]], [[autenticità]] del mittente del messaggio, ma non dalla [[confidenzialità]] delle informazioni contenute nello stesso.
Può però essere utilizzato insieme ad un [[algoritmo]] di [[crittografia simmetrica]] che crittografa tutto il messaggio M con una chiave K' , verrà effettuato quindi il MAC del messaggio M crittografato con K' usando la chiave K.
Verrà poi crittografato con un [[algoritmo]] di [[crittografia simmetrica]] (usando la chiave K') il messaggio M ed il suo MAC preparato con chiave K.
 
Verranno quindi inviati al destinatario:
E<sub>K'</sub>(M) , MAC(E<sub>K'</sub>(M),K) , E<sub>K'</sub>(M, MAC(M,K))
 
Le due chiavi K' (usata nella crittografia simmetrica) e K (usata nella creazione del MAC) non dovranno però essere uguali.
 
Gli algoritmi di MAC possono essere realizzati anche partendo da altre primitive crittografiche, come le [[hash|funzioni crittografiche di hash]] (vedi l'[[HMAC]]) od i [[cifrario a blocchi|cifrari a blocchi]] ([[OMAC (crittografia)|One-key MAC]], [[CBC-MAC]] e [[PMAC (crittografia)|PMAC]]).