Din ceea ce am citit până acum, nonce-urile sunt valori aleatorii unice, care sunt trimise în text simplu în plus față de textul cifrat pentru a verifica identitatea expeditorului/destinatorului. Teoretic, dacă nonce este aleatoriu, un atacator E poate intercepta mesajul lui Alice care i-a fost desemnat lui Bob și să se uite drept Bob generând un nonce aleatoriu, fără a comunica vreodată cu Bob.
Deci, dacă protocolul cerere-răspuns este:
A â B : nA
B â A : {nA, nB}K
A â B : nB
cu nA,nB fiind noncele și K fiind o cheie partajată simetrică între Alice și Bob.
- Poate atacatorul să facă un atac reflectat înapoi la Alice doar schimbând nonce?
În acest fel, A este păcălită crezând că B inițiază comunicarea cu A și apoi le-ar împărtăși ambele non-uri criptate cu cheia,
în acest caz (modificarea a doua linie a protocolului):
B â A : {nA, nE}K
conducând la un atac cunoscut în text clar. Atacatorul cunoaște atât textul simplu, cât și textul cifrat în acest scenariu, astfel încât să poată obține cheia secretă.
- Acest defect al protocolului poate fi remediat prin:
- aplicând k la nonces?
- inclusiv identificatorul lui B (receptor) în al doilea text cifrat?
Remediați propunerea
A â B : {nA}k
B â A : {B, nA}k
A â B : {nB}k