HMAC e non ripudio

2

Questa era una domanda su un esame:

Due persone utilizzano un canale di comunicazione unidirezionale e la funzionalità HMAC (concretamente HMAC-SHA1). Scegli la frase corretta di seguito:

1) Possiamo dimostrare chi è il mittente, perché HMAC-SHA1 utilizza un segreto condiviso, che è noto a entrambi. Ancor più, il canale di comunicazione funziona solo in un modo.

2) Possiamo dimostrare chi è il mittente, perché HMAC-SHA1 utilizza un segreto condiviso, che è noto a entrambi.

3) Il mittente può negare di aver inviato il messaggio, poiché la riservatezza non è stata fornita.

4) Nulla di quanto sopra.

Le domande su questo esame sono note per essere difficili. Sto pensando che la risposta 3 o 4 sia corretta (hai bisogno di una firma digitale per fornire non ripudio e la riservatezza non ha nulla a che fare con il non ripudio), ma mi sto appoggiando alla quarta risposta.

Quale sceglieresti?

    
posta RunoTheDog 15.01.2015 - 10:09
fonte

2 risposte

3

La risposta 2 è priva di senso; dice letteralmente "possiamo dimostrare chi è il mittente perché due persone hanno la possibilità di creare il MAC". Con un MAC, uno partito potrebbe aver creato il messaggio MACed; ogni parte sa chi l'ha creata (sai se hai scritto qualcosa o no, e se non l'hai fatto l'altro), ma non possono provarlo a nessun altro, né possono provare non l'hanno creato dopo il fatto. Per fare ciò, dovrebbero essere in grado di provare che hai inviato il testo sul canale (inclusa la prova che non avrebbe potuto essere manomesso durante il trasporto, ad esempio da qualcuno che 2 ha dato la chiave HMAC), ma se loro potrebbe fare così tanto che potrebbero saltare l'HMAC e dire "l'ha inviato, ecco la prova che lo ha inviato".

Il canale a senso unico significherebbe che qualsiasi cosa inviata sul canale non proviene dalla persona 2. Tuttavia, dovresti provare che il messaggio che hai presentato è stato effettivamente inviato sul canale e che nessuno potrebbe inviare un messaggio messaggio falsificato sul canale (ad esempio, dopo che la persona 2 ha dato loro la chiave HMAC). Se qualcuno ti invia qualcosa su un canale in cui è verificabile che è andato su quel canale e solo loro potrebbero inviare qualcosa sul canale, ed entrambe queste cose possono essere provate, quel canale offre di nuovo non ripudio senza bisogno dell'HMAC.

L'elemento condiviso tra questi è che due parti possono creare HMAC validi, e uno sta cercando di dimostrare che l'altro ha creato uno specifico. È come avere due persone che hanno timbri identici, con uno che prova a dimostrare che l'altro è quello che ha timbrato qualcosa. Un MAC di per sé non può aiutare con il non-ripudio, perché ciascuna delle parti può crearli, lasciando che sia necessario dimostrare che qualcuno è in effetti colui che ha creato un determinato MAC, il che non è più semplice che mostrare che hanno fatto il messaggio nel primo posto. Quindi le risposte 1 e 2 non sono giuste; il segreto condiviso è perché HMAC non può fornire in modo efficace questo. (le firme digitali, al contrario, non coinvolgono entrambe le parti in grado di crearle, quindi sono più brave a fornire il non ripudio). (nota: il non disconoscimento non è in realtà un concetto tecnico, e spesso i tribunali accettano s/My Full Name/ come firma sui documenti elettronici; gli HMAC potrebbero infatti convincere qualcuno abbastanza da fidarsi della persona che afferma di aver scritto qualcosa, anche se non lo fanno tecnicamente impedisce loro di forgiarlo).

Risposta 3 è davvero sbagliata; la riservatezza non è necessaria per il non ripudio. Una delle migliori fonti di non ripudio è una dichiarazione in aperto; la non riservatezza è parte del motivo perché che fornisce il non ripudio (cioè chiunque può accedere ai record).

Per processo di eliminazione, la risposta è 4.

    
risposta data 15.01.2015 - 18:48
fonte
0

Direi 2.

Il motivo: Esistono 2 tipi di non ripudio: uno che puoi dimostrare agli altri e uno che non puoi.

Esistono schemi appositamente creati per impedire la possibilità di dimostrare a qualcun altro che X lo ha inviato. Si chiama firme PGP non trasferibili e procede in questo modo:

Hai cancellato il messaggio con un MAC, usando un k casuale. Quindi firmi il k casuale con la tua chiave privata, e lo cripti con la chiave pubblica dei destinatari.

Ciò significa che il ricevitore è in grado di dimostrare (a se stesso) che il mittente ha inviato il messaggio poiché il destinatario sa di non aver scritto il messaggio stesso, impedendo la falsificazione di man-in-the-middle. Ma dal momento che anche il ricevitore conosce il tasto MAC, e deve anche rivelare il codice MAC al verificatore, non può dimostrare agli altri ciò che il mittente ha inviato, perché potrebbe anche creare quel messaggio stesso.

In questo caso, entrambe le parti hanno già una chiave condivisa, quindi non è necessario uno scambio di chiavi usando una k casuale cifrata e firmata. Si potrebbe anche eseguire con HMAC direttamente sulla chiave condivisa. Ma si applica lo stesso principio: il ricevente può provare a se stesso che il mittente ha inviato il messaggio, ottenendo in questo modo non ripudio, ma non può dimostrare agli altri che ha inviato il messaggio.

Ma lo schema MAC menzionato non guadagna non ripudio per gli altri, non puoi dimostrare ad altre persone che qualcuno ha inviato qualcosa.

    
risposta data 16.01.2015 - 23:49
fonte

Leggi altre domande sui tag