Devo usare HMAC in questa situazione

0

Ho bisogno di memorizzare un grosso messaggio crittografato su un server. Quello che sto per fare è:

  1. Cripta il messaggio con un tasto AES;
  2. (Autenticazione) Hash il messaggio con SHA512 e crittografare l'hash con la chiave privata RSA (firma);
  3. Encrypt AES key, IV e item above con la chiave pubblica RSA di destinazione.

Dove HMAC può aiutare? Ho già l'autenticazione delle informazioni e la crittografia, quindi dovrei usarlo?

    
posta João Rodrigues 21.10.2014 - 20:21
fonte

2 risposte

2

HMAC è generalmente più applicabile alle situazioni in cui due entità desiderano comunicare in modo sicuro su Internet. Fornisce due elementi chiave, riservatezza e integrità. riservatezza dimostrando che il cliente remoto è in possesso dell'ingrediente "segreto", integrità, attraverso la convalida del digest del messaggio.

Nel tuo caso d'uso, la crittografia di archiviazione locale, la crittografia della chiave simmetrica con la chiave pubblica RSA dovrebbe funzionare bene, a condizione che tu stia proteggendo la chiave privata con forti meccanismi di protezione.

Un'altra cosa, nel passaggio 2, perché stai eseguendo l'hashing del messaggio con la chiave privata RSA ?, È preferibile utilizzare la chiave pubblica.

    
risposta data 24.10.2014 - 20:19
fonte
0

Prima di dare la mia risposta, esaminiamo innanzitutto l'argomento di HMAC.

Il codice di autenticazione dei messaggi basato su hash (o HMAC) è un meccanismo per calcolare un codice di autenticazione dei messaggi che coinvolge una funzione di hash in combinazione con una chiave segreta. Questo può essere usato per verificare l'integrità e l'autenticità di un messaggio.

Ora l'autenticazione HMAC garantisce l'autenticità della richiesta firmando le intestazioni, in particolare se content-md5 è firmato e controllato dal server E dal client. Nella maggior parte delle situazioni ho usato HMAC per avere un livello di sicurezza più robusto.

Ma sappi che l'utilizzo di HMAC ti apre a una comprensione più ampia di come funziona HTTP, che può rendere le cose più difficili per te o più facile a seconda della tua profondità di conoscenza.

HMAC al fianco di AES è un ottimo set da avere. Secondo me lo userei.

Tieni presente inoltre che se tendi a tenere queste informazioni crittografate su un server per lunghi periodi di tempo, dovresti tenere la chiave segreta mensilmente o forse ogni due mesi in sospeso su come strutturare la sicurezza.

    
risposta data 21.10.2014 - 21:26
fonte

Leggi altre domande sui tag