Lo scambio di chiavi simmetriche tramite la crittografia asimmetrica deve essere eseguito in modo asimmetrico?

0

Per comunicare su un canale pubblico, sembra che spesso 2 parti utilizzino un po 'di asymmetric-encryption per scambiare una chiave symmetric . E quindi utilizzare la chiave simmetrica per la successiva comunicazione. I dettagli sono:

  1. Bob genera una coppia di chiavi pubblica / privata.
  2. Carica la sua chiave pubblica su un server delle chiavi.
  3. Alice scarica la chiave pubblica di Bob dal server delle chiavi.
  4. Alice sceglie una chiave simmetrica, utilizza la chiave pubblica di Bob per crittografare la chiave simmetrica e la invia a Bob.
  5. Bob decrittografa la chiave simmetrica di Alice.
  6. Bob e Alice comunicano con la chiave simmetrica.

Al punto 4, sembra che solo Alice possa decidere la chiave simmetrica. E deve essere Alice a spedirlo a Bob. Perché se Bob ha scelto e inviato la chiave simmetrica ad Alice, qualsiasi intercettatore può decrittografarlo.

È giusto?

    
posta smwikipedia 05.09.2018 - 05:44
fonte

2 risposte

2

Nel tuo scenario molto specifico questo è vero. La crittografia asimmetrica viene utilizzata in molti casi principalmente per proteggere un trasferimento di chiave poiché è molto lento rispetto alla crittografia simmetrica.

Il problema con la crittografia simmetrica d'altra parte è che lo scambio di chiavi non può essere protetto in modo automatico quando si utilizza solo la crittografia simmetrica. Nel tuo caso l'unica persona con una coppia di chiavi assimetrica è bob, quindi se si desidera inviare una chiave in modo sicuro, l'unico destinatario può essere bob.

    
risposta data 05.09.2018 - 06:35
fonte
2

La risposta breve è sì.

Nel tuo scenario, Alice è colui che sta iniziando la comunicazione usando la chiave pubblica dell'altra parte. Nel caso in cui bob voglia avviare la comunicazione, può utilizzare la chiave pubblica di Alice per condividere una chiave simmetrica scelta.

Per la maggior parte dei casi, una delle parti agirebbe come client e l'altra come server. Generalmente il client utilizza la chiave pubblica del server per verificarne l'autenticità e avviare la comunicazione. Suggerisco di leggere su come funziona SSL per capire meglio come viene utilizzato questo flusso di lavoro per scopi pratici. SSL / TLS è l'applicazione più comunemente trovata di questo flusso di lavoro.

Lettura consigliata:

Come funziona SSL / TLS?

    
risposta data 05.09.2018 - 07:30
fonte

Leggi altre domande sui tag