I canali bidirezionali in TLS (Transport Layer Security) e SSH (Secure Shell) gestiscono la crittografia e la decrittografia dei dati come segue:
TLS (sicurezza del livello di trasporto)
1. Scambio di chiavi: TLS utilizza un protocollo di scambio di chiavi per scambiare in modo sicuro le chiavi crittografiche tra il client e il server. Questo scambio di chiavi è bidirezionale, poiché entrambe le parti inviano e ricevono chiavi.
2. Crittografia dei dati: una volta completato lo scambio di chiavi, il client e il server utilizzano le chiavi crittografiche stabilite per crittografare e decrittografare i dati. Anche questo processo di crittografia e decrittografia è bidirezionale, poiché entrambe le parti inviano e ricevono dati crittografati.
3. Handshake: l'handshake TLS è un processo in cui il client e il server stabiliscono una connessione sicura. Durante questo processo, si scambiano messaggi che includono il numero di versione, numeri casuali e chiavi crittografiche. Questa stretta di mano è un processo bidirezionale, in cui entrambe le parti inviano e ricevono dati.
SSH (Secure Shell)
1. Scambio di chiavi: SSH utilizza un protocollo di scambio di chiavi per scambiare in modo sicuro le chiavi crittografiche tra il client e il server. Questo scambio di chiavi è bidirezionale, poiché entrambe le parti inviano e ricevono chiavi.
2. Crittografia dei dati: una volta completato lo scambio di chiavi, il client e il server utilizzano le chiavi crittografiche stabilite per crittografare e decrittografare i dati. Anche questo processo di crittografia e decrittografia è bidirezionale, poiché entrambe le parti inviano e ricevono dati crittografati.
3. Autenticazione: SSH utilizza la crittografia a chiave pubblica per l'autenticazione. Il client e il server si scambiano le chiavi pubbliche e le utilizzano per autenticarsi a vicenda. Anche questo processo di autenticazione è bidirezionale, poiché entrambe le parti inviano e ricevono messaggi di autenticazione.
4. Creazione del canale: SSH stabilisce più canali per diversi tipi di dati, come sessione, X11, forwarded-tcpip e direct-tcpip. Ogni canale viene crittografato e decrittografato separatamente, garantendo la protezione dei dati durante la trasmissione.
Punti chiave
- Sia TLS che SSH utilizzano canali bidirezionali per comunicazioni sicure.
- I processi di scambio di chiavi, crittografia dei dati e decrittografia sono tutti bidirezionali in entrambi i protocolli.
- Anche i processi di handshake e autenticazione in TLS e SSH sono bidirezionali.
- SSH stabilisce più canali per diversi tipi di dati, che vengono crittografati e decrittografati separatamente.
[1] https://eprint.iacr.org/2017/161.pdf
[2] https://tosc.iacr.org/index.php/ToSC/article/view/602/543
[3] https://www.researchgate.net/publication/346707122_Security_Notions_for_Bidirection_Channels
[4] https://www.karlin.mff.cuni.cz/~tuma/Vaudenay/prague-ssl_prt.pdf
[5] https://docs.paloaltonetworks.com/pan-os/11-0/pan-os-admin/decryption/decryption-concepts/ssh-proxy