TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384ECDHEkey exchangeRSAauthAES-256-GCMencryptionSHA384hasheach piece is a separate algorithm choiceTLS 1.3 simplified by separating key exchange from cipher

Suite di crittografia TLS

11 minimo lettoCrittografia

Ogni connessione TLS negozia una suite di crittografia, ovvero la combinazione specifica di algoritmi utilizzati per lo scambio di chiavi, l'autenticazione, la crittografia e l'integrità. I nomi sembrano una zuppa alfabetica (TLS_AES_256_GCM_SHA384, ECDHE-ECDSA-CHACHA20-POLY1305) ma codificano le proprietà di sicurezza della connessione. Leggerli chiarisce cosa sta realmente accadendo quando il tuo browser mostra un lucchetto.

Il corpo completo dell'articolo è fornito in inglese di seguito.

A TLS suite di crittografia è una combinazione denominata di algoritmi crittografici utilizzati per proteggere una connessione TLS. Durante l'handshake TLS, client e server negoziano quale suite di crittografia utilizzare in base a ciò che ciascuno supporta. La scelta determina lo scambio di chiavi, l'autenticazione, la crittografia e l'integrità per il resto della connessione.

Lettura dei nomi della suite di crittografia TLS 1.2

Lil formato è: TLS_KEXAUTH_WITH_CIPHER_MAC o nella convenzione OpenSSL KEX-AUTH-CIPHER-MAC.

Esempio: TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 si scompone come:

  • ECDHE: usi dello scambio di chiavi Effimero Diffie-Hellman a curva ellittica (fornisce segretezza in avanti)
  • RSA: il server esegue l'autenticazione utilizzando un certificato RSA
  • AES_256_GCM: la crittografia di massa utilizza AES con chiavi a 256 bit in modalità GCM (autenticata crittografia)
  • SHA384: handshake MAC e KDF utilizzano SHA-384

TLS 1.3 semplificazione

TLS 1.3 ha ripulito in modo significativo la denominazione della suite di crittografia. Le suite di crittografia ora specificano solo la crittografia simmetrica e l'hash. Lo scambio di chiavi e l'autenticazione vengono negoziati separatamente. I nomi sono:

  • TLS_AES_256_GCM_SHA384 — AES-256-GCM con SHA-384
  • TLS_AES_128_GCM_SHA256 — AES-128-GCM con SHA-256
  • TLS_CHACHA20_POLY1305_SHA256 — ChaCha20-Poly1305 con SHA-256
  • TLS_AES_128_CCM_SHA256 — AES-128 in modalità CCM con SHA-256
  • TLS_AES_128_CCM_8_SHA256: lo stesso con MAC a 8 byte, principalmente per dispositivi vincolati

TLS 1.3 ha solo cinque suite di crittografia standard in totale. TLS 1.2 aveva centinaia di combinazioni possibili.

Che cosa significa ogni pezzo

Scambio di chiavi:

  • RSA: la chiave RSA del server autentica e scambia la chiave. Nessun segreto in avanti. Rimosso in TLS 1.3.
  • DHE: effimero Diffie-Hellman. Segretezza in avanti sì. Utilizzato in TLS 1.2; integrato nell'handshake in TLS 1.3.
  • ECDHE — curva ellittica effimera Diffie-Hellman. Segretezza in avanti sì. Veloce. L'impostazione predefinita moderna.

Authentication (TLS 1.2):

  • RSA: il server ha un certificato RSA
  • ECDSA: il server ha un certificato con curva ellittica
  • DSS: certificato DSA (principalmente storico)
  • PSK: chiave precondivisa (rara; per IoT e alcuni scenari VPN)

Cifratura in blocco:

  • AES_128_GCM, AES_256_GCM: AES-GCM con 128 o 256 bit chiave, crittografia autenticata
  • CHACHA20_POLY1305 — cifratura a flusso ChaCha20 con Poly1305 MAC, l'alternativa moderna a AES
  • AES_128_CBC, AES_256_CBC — AES-CBC con HMAC separato, il modello più vecchio (pian piano in fase di introduzione out)
  • 3DES_EDE_CBC — Triple DES, deprecato
  • RC4 — cifrario a flusso non funzionante, non più presente in nessuna suite moderna

Hash per handshake:

  • SHA256, SHA384: famiglia SHA-2, standard moderno
  • SHA: SHA-1, deprecato
  • MD5: deprecato da tempo

Suite consigliate in La guida alla configurazione TLS di 2026

Mozilla è il riferimento standard del settore. L'attuale profilo moderno suggerisce:

  • TLS solo 1.3. Se la base client lo supporta (essenzialmente tutto ciò che è moderno), nessun fallback TLS 1.2.
  • Cipher suite: TLS_AES_128_GCM_SHA256, TLS_AES_256_GCM_SHA384, TLS_CHACHA20_POLY1305_SHA256.
  • Se TLS 1.2 deve essere supportato: Suite ECDHE+AES-GCM e ECDHE+ChaCha20 only.

Per la compatibilità con i client precedenti, sono necessarie più suite, incluse alcune senza segretezza in avanti. Il profilo "intermedio" di Mozilla copre circa il 95% dei client mantenendo una sicurezza ragionevole.

Cosa viene rimosso e perché

La configurazione TLS moderna viene rimossa:

  • Scambio di chiavi non temporaneo (RSA semplice, DH statico). Nessuna segretezza in avanti.
  • CBC in modalità (in TLS 1.2 con rinegoziazione). Cronologia degli attacchi (BEAST, Lucky 13).
  • 3DES, RC4. Crittografia danneggiata o troppo lenta.
  • MD5, SHA-1 per handshake. Attacchi di collisione.
  • Suite anonime. Nessuna autenticazione del server, vulnerabile a MITM.
  • EXPORT-grade Suites. Artefatto storico dei controlli sulle esportazioni di criptovalute; debole in base alla progettazione.

LGli attacchi FREAK e Logjam del 2015 hanno sfruttato i browser che stavano ancora negoziando la compatibilità delle suite di livello EXPORT. Successivamente i server mainstream li hanno rimossi; alcuni siti a coda lunga li avevano ancora anni dopo.

Verifica del supporto di crittografia del server

Strumenti:

  • SSL Labs SSL Server Test (ssllabs.com): analisi completa del TLS di un sito pubblico configurazione.
  • testssl.sh — scanner da riga di comando.
  • nmap --script ssl-enum-ciphers — enumerazione rapida.
  • OpenSSL s_client con vari flag per il manuale testing.

Per il tuo server, eseguili periodicamente; le configurazioni variano nel tempo man mano che i pacchetti aggiornano.

Domande frequenti

Dovrei preoccuparmi delle suite di crittografia come utente?
I browser moderni gestiscono la negoziazione. La suite di crittografia scelta viene visualizzata quando si fa clic sul lucchetto e si controlla il certificato. Per la maggior parte degli utenti è dietro le quinte.
Perché TLS 1.3 ha così poche suite di crittografia?
Le centinaia di combinazioni di TLS 1.2 hanno reso facili le configurazioni errate vulnerabili. TLS 1.3 deliberatamente ridotto a un piccolo insieme di combinazioni ben comprese, tutte con segretezza diretta e crittografia autenticata.
Qual è la differenza tra AES-128-GCM e AES-256-GCM?
Lunghezza chiave. AES a 128 bit è veloce e considerato sicuro a tempo indeterminato contro gli avversari classici; La tecnologia a 256 bit fornisce un margine contro i futuri progressi della crittografia e contro gli avversari sensibili ai dati quantistici. Entrambi vanno bene per l'uso corrente.
Quando dovrei utilizzare ChaCha20-Poly1305 rispetto a AES-GCM?
ChaCha20 è più veloce su hardware senza accelerazione AES-NI (dispositivi mobili più vecchi, IoT). AES-GCM è più veloce sull'hardware moderno con AES-NI. I browser negoziano la soluzione migliore; i server dovrebbero offrire entrambi.
La suite di crittografia influisce sulle prestazioni?
Modestamente. AES-GCM con accelerazione hardware è essenzialmente gratuito sulle CPU moderne. L'overhead dell'handshake (scambio di chiavi) prevale sulla crittografia di massa per connessioni brevi. Per le connessioni ad alto volume e di lunga durata, la scelta della crittografia di massa è leggermente importante.
Spiegazione delle suite di crittografia TLS: lettura del menu crittografico