Una firma MAC è un output crittografico utilizzato per verificare l'integrità e l'autenticità dei dati. Un algoritmo di firma MAC consente di eseguire due operazioni distinte:
Un'operazione di firma che utilizza una chiave di firma per produrre una firma MAC utilizzando dati non elaborati.
Un'operazione di verifica in cui l'autenticità del messaggio può essere convalidata in base alla chiave di firma e al tag MAC da verificare.
Una firma MAC ha due scopi principali:
- Verificare l'integrità dei dati firmati.
- Verifica l'autenticità del messaggio.
Sebbene lo scopo delle firme MAC sia simile a quello delle firme digitali, le firme MAC si basano sulla crittografia simmetrica. I tag MAC vengono generati e verificati utilizzando la stessa chiave segreta. Il mittente e il destinatario di un messaggio devono avere la stessa chiave per utilizzare le firme MAC.
Esempio di utilizzo per una firma MAC
Grazie alla loro efficienza, gli algoritmi MAC, come il codice HMAC (Keyed-Hash Message Authentication Code), sono un ottimo meccanismo di controllo dell'integrità dei trasferimenti di file. Le funzioni hash possono assumere un messaggio di lunghezza arbitraria e trasformarlo in un digest a lunghezza fissa, massimizzando così l'utilizzo della larghezza di banda.
Flusso di lavoro della firma MAC
Di seguito è descritto il flusso per la creazione e la convalida di una firma. I due partecipanti in questo flusso di lavoro sono costituiti dal firmatario dei dati e dal destinatario dei dati.
Il firmatario e il destinatario accettano di utilizzare una chiave MAC specifica e condivisa.
Entrambe possono utilizzare questa chiave per creare o verificare le firme MAC.
Il firmatario esegue un'operazione di firma sui dati per calcolare un tag MAC.
Il firmatario fornisce i dati e il tag MAC al destinatario.
Il destinatario utilizza la chiave MAC condivisa per verificare la firma MAC. Se la verifica non va a buon fine, i dati sono stati modificati.
Algoritmi di firma
Cloud Key Management Service supporta solo gli algoritmi HMAC (Keyed-Hash Message Authentication Code) per la firma MAC. Gli algoritmi HMAC utilizzano funzioni hash crittografiche, come SHA-2 o SHA-3, per calcolare il tag MAC. La potenza della funzione HMAC dipende dalla forza della funzione hash, dalle dimensioni dell'output hash e dalle dimensioni della chiave. Per ulteriori informazioni sugli algoritmi di firma HMAC, consulta gli algoritmi di firma HMAC.
Limitazioni
Quando utilizzi Cloud KMS per creare o verificare le firme MAC, si applicano le seguenti limitazioni:
Quando utilizzi le chiavi Cloud HSM, la dimensione massima del file da firmare è 16 KiB.
Per tutte le altre chiavi, la dimensione massima del file da firmare è 64 KiB.
Passaggi successivi
- Scopri di più sugli algoritmi di firma HMAC.
- Crea una chiave con lo scopo della chiave
MAC
e un algoritmo di firma HMAC. - Crea una firma MAC utilizzando una chiave
MAC
esistente con un messaggio. - Verifica una firma MAC utilizzando una chiave
MAC
esistente con un messaggio e la relativa firma.