Gli algoritmi di crittografia asimmetrica vengono utilizzati per supportare in modo efficiente la crittografia simmetrica, che è generalmente più veloce.

Esistono due approcci principali:

Questi metodi consentono di condividere in modo sicuro una chiave segreta, che può poi essere utilizzata per la crittografia simmetrica, migliorando la velocità e l’efficienza complessiva.


Distribuzioni della chiave segreta con RSA

La crittografia RSA può essere usata per distribuire una chiave segreta, combinando i benefici della crittografia asimmetrica e simmetrica.

Ecco come funziona:

Processo di cifratura

Per crittografare un messaggio $m$ con la chiave pubblica $(e, n)$:

  1. Si sceglie una chiave segreta $k$ in modo casuale.
  2. Si genera il testo cifrato $c = (k^e \\mod n, E_k(m))$, dove:
    1. $c_1= K^e \\mod n$ → rappresenta la chiave segreta $k$ cifrata con la chiave pubblica $(e,n)$ del destinatario.
    2. $c_2=E_k(m)$ → rappresenta il messaggio $m$ cifrato con la chiave segreta $k$.

Processo di decifratura

Per decifrare il testo cifrato con la chiave privata $(d, n)$:

  1. Si divide $c$ in $(c_1, c_2)$.
  2. Si calcola la chiave segreta $k$ usando la propria chiave privata $(d,n)$$k = c_1^d \\mod n$.
  3. Infine, si ottiene il messaggio originale $m = D_k(c_2)$, dove $D_k$ è l'operazione di decifratura con la chiave segreta $k$.

Esempio Pratico: SSL (extra)