Obiettivo
Voglio che Alice e Bob comunichino un messaggio senza che le loro risposte si influenzino a vicenda. Più formalmente:
- Alice vuole inviare un messaggio a Bob,
a. - Bob vuole inviare un messaggio ad Alice,
b. - Ma Alice non deve sapere
bprima di inviarea - E Bob non deve sapere
aprima di inviareb.
Tentativo
Stavo pensando che potrei avere:
- Alice invia un messaggio crittografato,
f(a, p1) = a'e un hash con il messaggio originale e la chiave privata,h(a, p1). - Bob invia anche un messaggio crittografato,
f(b, p2) = b'e hash,h(b, p2). - Alice e Bob si scambiano le chiavi private dopo aver ricevuto i loro messaggi
- Decodificano i messaggi ricevuti e verificano le corrispondenze hash
C'è qualche problema con questo metodo? Sarebbe possibile per Alice costruire un p' che fa sì che il messaggio venga decodificato come qualcosa diverso da a e tuttavia soddisfi ancora la funzione di hashing? (supponendo crittograficamente sicuro f e h )
Esistono metodi più comunemente accettati per farlo?