È necessario crittografare il digest del messaggio?

0

Nelle impostazioni delle chiavi simmetriche, al fine di fornire l'integrità del messaggio, calcoliamo l'hash del messaggio. Il messaggio insieme al digest del messaggio viene quindi crittografato. È necessario crittografare l'hash del messaggio? Non possiamo inviare il messaggio crittografato insieme al digest del messaggio non criptato?

    
posta Curious 26.09.2014 - 11:59
fonte

3 risposte

1

"È necessario crittografare il digest del messaggio?" e
"È necessario crittografare l'hash del messaggio?"

Sì, poiché altrimenti:
Un intercettatore potrebbe determinare, con una precisione schiacciante, quali coppie di coppie [core ciphertext + hash] sono per lo stesso messaggio. (Le seguenti tre frasi non si applicano se hai usato un MAC invece di un hash.) Un intercettatore potrebbe testare qualsiasi ipotesi al messaggio per conto proprio. Se usi la modalità CTR , allora un avversario che conosce il testo in chiaro potrebbe modificare un [testo cifrato core + hash] coppia per fornire qualsiasi testo in chiaro di loro scelta. Se esiste uno schema di crittografia sicuro, ce n'è uno per il quale
approccio permetterebbe ad un avversario di generare coppie [core ciphertext + hash] che decodificheranno
su testi in chiaro arbitrari, anche senza aver visto coppie legittime [core ciphertext + hash].
"Non possiamo inviare il messaggio crittografato insieme al digest del messaggio non criptato?"

potresti "inviare il messaggio crittografato insieme al digest del messaggio non criptato";
tuttavia, ciò sarebbe ancora meno sicuro di quello che stai facendo.


Il tuo approccio non è sicuro.

Vedi Crittografia autenticata contro checksum / hash contenuti e crittografati ?
e Dovremmo MAC-then-encrypt o encrypt-then -MAC? .

    
risposta data 26.09.2014 - 17:25
fonte
0

No, non è necessario crittografare il digest, poiché è ancora possibile convalidare l'integrità del messaggio.    se decifriamo il messaggio e quindi calcoliamo l'hash e la corrispondenza con l'hash ricevuto non criptato e se corrisponde, il messaggio non viene falsificato

se qualcuno intercetta e cambia il messaggio, non decodificherà il messaggio originale e se qualcuno cambia l'hash non lo farà con l'hash calcolato alla fine del destinatario.

Comunque Hash è molto piccolo, quindi possiamo crittografarlo.

    
risposta data 26.09.2014 - 12:24
fonte
-1

Definirei definitivamente il digest. Se qualcuno annusa i tuoi messaggi sarà in grado di indovinare molte informazioni su di loro:

  1. Può precomputare i digesti per frasi comuni come "iniziare la guerra!" e così "decrittografarli" no-line.

  2. In futuro, può provare che un messaggio è stato inviato o non inviato.

  3. È in grado di riconoscere che un messaggio è stato inviato ripetutamente.

Una regola di crittografia di base è che lo sniffer dovrebbe vedere solo dati casuali, incapace di indovinare nulla su di essi.

Ti consiglierei di aggiungere sale a ogni messaggio e calcolare il digest da tutto anche il sale. Se sei paranoico, puoi di volta in volta inviare dati casuali per impedire allo sniffer di riconoscere quando e quanto comunichi. La Statistologia ti aiuterà a decidere quando e quanti dati casuali dovresti inviare per confonderli al massimo. Inoltre, puoi aggiungere una quantità casuale di dati casuali alla fine di ogni messaggio per confondere lo sniffer sulla lunghezza dei messaggi.

    
risposta data 26.09.2014 - 20:08
fonte

Leggi altre domande sui tag