Let's Encrypt: la CA gratuita che ha portato HTTPS ovunque

Let's Encrypt (GA aprile 2016) dell'Internet Security Research Group: certificate authority gratuita, protocollo ACME automatico, certificati a 90 giorni, backing di EFF/Mozilla/Cisco. La trasformazione dell'HTTPS da privilegio a default del web.

Cyber SecurityOpen SourceWeb Let's EncryptISRGACMEHTTPSTLSCyber SecurityEFFOpen Source

HTTPS era un privilegio

Fino al 2015 attivare HTTPS richiedeva di acquistare un certificato da una Certificate Authority commerciale (DigiCert, Comodo, GlobalSign, Symantec) — tipicamente tra 50 e 500 euro annui per un dominio singolo, con processo manuale di generazione CSR, validazione proprietà dominio, installazione. Per piccoli siti, blog personali, portali no-profit il costo era sproporzionato; il risultato è che la maggioranza del web operava in HTTP chiaro.

Post-rivelazioni Snowden (giugno 2013), la pressione per generalizzare HTTPS cresce. Mozilla e EFF lanciano HTTPS Everywhere come estensione; Google annuncia HTTPS come ranking signal; ma manca un pezzo infrastrutturale: una CA gratuita, automatizzata, accessibile.

L’Internet Security Research Group

Nel novembre 2014 viene annunciata la Internet Security Research Group (ISRG) — organizzazione no-profit californiana fondata da Electronic Frontier Foundation, Mozilla, Cisco, University of Michigan, Akamai. Obiettivo: lanciare Let’s Encrypt, Certificate Authority di nuova generazione con caratteristiche dichiarate:

  • Certificati gratuiti per chiunque
  • Automazione totale — no intervento umano
  • Durata breve (90 giorni) con rinnovo automatico
  • Audit trasparente del processo operativo
  • Open source di tutto il software

ACME — Automated Certificate Management Environment

Il cuore tecnico di Let’s Encrypt è il protocollo ACME (Automated Certificate Management Environment), standardizzato come RFC 8555 nel 2019. ACME automatizza:

  1. Account registration — il client genera una chiave, si registra presso ACME server
  2. Domain validation — sfide crittografiche per provare controllo del dominio:
    • HTTP-01 — il client pubblica un file token su http://dominio/.well-known/acme-challenge/
    • DNS-01 — il client pubblica un record TXT su _acme-challenge.dominio
    • TLS-ALPN-01 — challenge via estensione TLS
  3. Certificate issuance — una volta validato, la CA emette certificato firmato
  4. Renewal — il processo è ripetibile, tipicamente ogni 60-80 giorni

Lo standard è open: chiunque può implementare un client ACME o un server ACME.

Il GA di Aprile 2016

Let’s Encrypt è entrato in beta limitata a settembre 2015 e ha raggiunto General Availability il 12 aprile 2016. Il primo anno operativo:

  • Nel 2016 Let’s Encrypt emette oltre 20 milioni di certificati
  • Entro fine 2017 supera cento milioni di certificati attivi
  • Entro 2020: HTTPS supera il 90% del traffico web misurato (Firefox Telemetry)

La curva di adozione di HTTPS si è trasformata da crescita lineare (~60% verso fine 2015) a crescita accelerata; Let’s Encrypt è riconosciuto come fattore determinante.

Client ACME

L’ecosistema di client ACME si sviluppa rapidamente:

  • Certbot (EFF) — client ufficiale Python, il più diffuso, con plugin per Apache, Nginx, DNS providers
  • acme.sh — shell script, zero dipendenze, popolarissimo per configurazioni minimali
  • lego — libreria Go + CLI, usata da Traefik, Caddy
  • Caddy (web server) — integra ACME nativamente, HTTPS automatico
  • dehydrated — Bash, alternativa leggera
  • Moduli/plugin integrati in Nginx, HAProxy, cert-manager (Kubernetes)

La diversità dei client dimostra la salute del protocollo: ACME è veramente un open standard, non controllato da Let’s Encrypt.

Limiti volontari

Let’s Encrypt emette solo certificati DV (Domain Validation) — non OV (Organization Validation) né EV (Extended Validation). La scelta è esplicita: DV è sufficiente per certificare l’autenticità del trasporto (il server parla per quel dominio), mentre OV/EV sono nicchie di valore discutibile nel web moderno.

Non emette wildcard fino al marzo 2018, quando l’adozione di DNS-01 renderà sicura l’emissione di wildcard per domini con dimostrazione di controllo DNS.

Governance e trasparenza

ISRG pubblica regolarmente:

  • CPS (Certification Practice Statement) — documento formale delle pratiche operative
  • Audit annuale WebTrust per includere la root CA nei trust store di browser
  • Transparency logs — tutti i certificati Let’s Encrypt sono pubblicati in Certificate Transparency log (RFC 6962)

La root CA è inclusa nei trust store di Chrome, Firefox, Edge, Safari entro il 2016-2018 (prima operando via intermediate cross-signed da IdenTrust).

Impatto su PA e aziende

Per PA e PMI italiane, Let’s Encrypt è stato un abilitatore concreto:

  • Siti pubblici possono attivare HTTPS senza budget dedicato
  • Automazione elimina il rischio di certificati scaduti (ricorrente prima del 2016)
  • Agid linee guida sulla sicurezza siti pubblici integrano ACME come opzione
  • Provider hosting italiani (Aruba, Register.it, TOPhost, OVH IT) offrono integrazione nativa

Traguardi strutturali

Il successo di Let’s Encrypt ha conseguenze oltre l’HTTPS ubiquo:

  • Modello replicabile — ISRG lancia poi Let’s Encrypt Root ISRG Root X2 (2020, ECDSA) per algoritmi moderni
  • Estensione del modello ad altri problemi: Divvi Up (prio privato distribuito), Prossimo — ISRG espande il modello no-profit a infrastrutture critiche
  • Modelli analoghiZeroSSL (2018), Buypass (Norvegia) adottano ACME

Riferimenti: Let’s Encrypt GA (12 aprile 2016). Internet Security Research Group (ISRG). ACME RFC 8555 (marzo 2019). Fondatori sponsor: EFF, Mozilla, Cisco, Akamai, University of Michigan. Certbot (EFF). Certificate Transparency RFC 6962. Strumenti: acme.sh, lego, cert-manager.

Vuoi supporto? Sei sotto attacco? Stato dei servizi
Vuoi supporto? Sei sotto attacco? Stato dei servizi