SFTP (SSH File Transfer Protocol) funziona fornendo un metodo sicuro per trasferire file tra computer su una rete. Utilizza il protocollo SSH (Secure Shell) per stabilire una connessione sicura tra un client e un server. A differenza dell’FTP (File Transfer Protocol), che non è crittografato per impostazione predefinita, SFTP crittografa sia i comandi che i dati scambiati tra client e server, garantendo riservatezza e integrità dei trasferimenti di file.
SFTP opera sul protocollo SSH, in particolare utilizzando il livello di trasporto SSH per proteggere le comunicazioni tra client e server. SSH fornisce meccanismi per l’autenticazione, la crittografia e la verifica dell’integrità dei dati. Quando un client si connette a un server SFTP, stabilisce una connessione SSH utilizzando la chiave pubblica, basata su password o altri metodi di autenticazione supportati da SSH. Una volta autenticati, il client e il server possono scambiarsi comandi SFTP e trasferire file in modo sicuro.
La crittografia SFTP funziona crittografando sia i comandi che i dati trasferiti tra il client e il server utilizzando algoritmi di crittografia simmetrica negoziati durante l’handshake SSH. In genere, SFTP supporta algoritmi di crittografia come AES (Advanced Encryption Standard) per la crittografia dei dati e algoritmi HMAC (Hash-based Message Authentication Code) per la verifica dell’integrità dei dati. Questi algoritmi di crittografia garantiscono che i file trasferiti tramite SFTP non possano essere intercettati o modificati da soggetti non autorizzati durante la trasmissione in rete. Questo robusto meccanismo di crittografia è una caratteristica chiave di SFTP, che lo rende la scelta preferita per i trasferimenti sicuri di file in ambienti in cui la sicurezza dei dati è fondamentale.