Nota: sono un ricercatore in rete, ma un principiante della sicurezza. Quindi, questo post potrebbe contenere una comprensione errata della sicurezza tra cui DH e RSA. Se lo fa, fammelo sapere.
Ho progettato una determinata estensione del protocollo di rete, che genera chiavi segrete condivise tra due terminali, Alice e Bob. A tal fine, ho usato per la prima volta un ECDH semplice. (I parametri della curva ellittica sono negoziati in modalità wireless tramite altri messaggi, ma i messaggi sono omessi nella figura seguente.)
Tuttavia,nonhoconsideratol'aggressoremalintenzionato,Mallory.PerprevenireilMITMeconsentireaentrambidiverificarecheimessaggi3e4provenganodallacontropartevalida,nondaMallory,hoadottatolafirmaelaverificadellachiavepubblicaRSA.
Nota:
- Il messaggio 1 viene periodicamente trasmesso in modo che chiunque possa catturarlo.
- Il messaggio 2 viene inviato se Alice vuole condividere una chiave segreta con Bob.
-
sign(data, priv)
everify(data, pub)
sono firma e verifica RSA. - Il segreto condiviso risultante verrà utilizzato per generare un altro segreto condiviso (che viene utilizzato nel protocollo esistente) e verrà eliminato immediatamente.
Questa è una corretta implementazione di DH su RSA in modalità wireless? O c'è qualcosa che mi manca?