Quando si è connessi a un altro computer tramite SSH, tutti i dati trasferiti tra i due computer sono crittografati? Oppure i dati sono inviati in testo semplice o in qualsiasi altro formato "facile da intercettare"?
Per qualsiasi protocollo, potresti fornire una definizione di "tutti i dati" che implicherebbe necessariamente che qualcosa non venga inviato crittografato.
Ad esempio, durante l'inizializzazione e lo scambio di chiavi, la selezione dell'algoritmo è pubblica. Il tuo crittografo medio ti darà poco più di un sopracciglio alzato se ti lamenti su questo fatto, dato che ovviamente non può essere crittografato poiché non hai ancora selezionato un algoritmo.
Ovviamente qualcosa deve essere inviato non criptato se non altro per configurare la crittografia. Ma una volta che la connessione è sicura, tutto è sicuro. Una volta che hai un canale criptato, nulla da quel punto in poi viene inviato al di fuori di quel canale. Inoltre, il protocollo è estremamente cauto per evitare l'invio di dati sensibili prima che sia disponibile la crittografia. Nessun nome utente, nessuna password, nessuna identificazione di alcun tipo, nessuna indicazione di scopo o altro.
Il poco che c'è da decodificare è facilmente decodificabile grazie a strumenti gratuiti comuni come wireshark. Accendi l'acquisizione di pacchetti, avvia una sessione SSH ed esamina tu stesso lo scambio. Vedrai immediatamente cosa può essere visto e cosa non può. Wireshark fa un ottimo lavoro nel decodificare il protocollo per permetterti di visualizzare l'interno di come funziona .... nella misura in cui è visibile a chi guarda il traffico di rete.
Il flusso tipico ha questo aspetto:
Leggi altre domande sui tag encryption ssh