# Web Bot Auth: identificare i bot con firme crittografiche
Table of Contents
Chi gestisce un sito riceve ogni giorno molte visite che non arrivano da persone, ma da programmi automatici. Alcuni sono utili - il crawler di un motore di ricerca, un aggregatore di feed, un monitoraggio dell’uptime - altri no, come chi copia i contenuti o cerca falle. A questi si aggiungono ora gli agenti AI, cioè assistenti che navigano il web al posto dell’utente per rispondere a una domanda o svolgere un compito. Il problema è vecchio ma sempre più pressante: come si distingue un bot legittimo da uno che finge di esserlo?
A metà maggio 2025 Cloudflare, uno dei maggiori operatori di rete e CDN al mondo, ha presentato una proposta per rispondere a questa domanda: si chiama Web Bot Auth. L’idea di fondo è semplice. Invece di indovinare chi c’è dietro una richiesta guardando indizi facili da falsificare, si chiede al bot di firmare le proprie richieste con una firma crittografica verificabile.
Il problema: riconoscere i bot oggi è fragile
Un “bot” è semplicemente un programma che invia richieste web senza una persona che clicca in tempo reale. Oggi chi vuole capire se un bot è affidabile ha a disposizione strumenti poco solidi.
-
Lo User-Agent. È una riga di testo che ogni richiesta porta con sé per dichiarare “chi sono” (per esempio il nome del browser o del crawler). Il problema è che è testo libero: chiunque può scriverci quello che vuole. Fingersi il crawler di un motore di ricerca è banale.
-
Gli intervalli di indirizzi IP. L’indirizzo IP è il “numero di telefono” da cui parte una richiesta. Alcuni operatori pubblicano gli intervalli di IP usati dai loro bot, così i siti possono creare delle allowlist (elenchi di indirizzi ammessi). Ma è un meccanismo fragile: gli IP cambiano, sono spesso condivisi tra servizi diversi, e molti strumenti passano da proxy o VPN che ne nascondono l’origine. Mantenere questi elenchi aggiornati è un lavoro continuo e imperfetto.
-
I token segreti. Si potrebbe dare a ogni bot una password da presentare al sito. Non regge su larga scala: servirebbe una credenziale diversa per ogni sito da visitare, e un accordo preventivo con ognuno.
Il risultato è che oggi bloccare i bot cattivi senza colpire quelli buoni è un esercizio di approssimazione.
Cos’è Web Bot Auth
Web Bot Auth ribalta l’approccio: non si prova a indovinare l’identità del bot, gli si chiede di dimostrarla con la crittografia.
Serve un breve richiamo su cos’è una firma digitale. Chi firma possiede due chiavi legate tra loro: una privata, tenuta segreta, e una pubblica, condivisa con tutti. Con la chiave privata si “sigilla” un messaggio; con quella pubblica chiunque può verificare che il sigillo sia autentico e che il messaggio non sia stato alterato. La cosa importante è che solo chi possiede la chiave privata può produrre una firma valida: non si può contraffare guardando quella pubblica, lo stesso principio delle coppie di chiavi che regge l’autenticazione di WireGuard al posto delle password.
Web Bot Auth applica questo principio alle richieste HTTP. Un bot legittimo genera una coppia di chiavi, pubblica quella pubblica in un punto noto e firma ogni richiesta con quella privata. Il sito che riceve la richiesta recupera la chiave pubblica e verifica la firma. Se torna, sa con certezza da quale operatore arriva quella richiesta.
Alla base c’è uno standard già pubblicato dall’IETF (l’organismo che cura gli standard tecnici di Internet): la RFC 9421, HTTP Message Signatures, del febbraio 2024. Definisce in modo generale come firmare pezzi di un messaggio HTTP e come allegare la firma tramite due intestazioni, Signature-Input e Signature. Web Bot Auth non reinventa nulla: è un modo specifico di usare quello standard per il caso dei bot.
Come funziona, in concreto
Prima di inviare una richiesta, il bot ne firma alcuni elementi con la propria chiave privata. In particolare firma l’autorità di destinazione, cioè il dominio del sito a cui sta scrivendo: così la firma vale solo per quel destinatario e non può essere riciclata altrove. La richiesta viaggia poi con tre intestazioni aggiuntive:
Signature-Input- descrive cosa è stato firmato e con quali parametri: una finestra di validità (i momenti di creazione e di scadenza), un identificativo della chiave usata e un’etichetta che segnala lo scopo,web-bot-auth.Signature- contiene la firma vera e propria.Signature-Agent- indica dove trovare le chiavi pubbliche del bot, in un formato standard, così il sito sa dove andare a verificare.
In forma semplificata, una richiesta firmata assomiglia a questa:
GET /articolo HTTP/1.1Host: www.esempio.itSignature-Agent: signer.esempio-bot.comSignature-Input: sig=("@authority" "signature-agent"); created=1700000000; expires=1700003600; keyid="ba3e64=="; tag="web-bot-auth"Signature: sig=:abc...==:La finestra di validità è importante: la firma scade in fretta, quindi anche se qualcuno la intercettasse non potrebbe riutilizzarla a lungo. E poiché è legata al dominio di destinazione, non funziona verso un sito diverso da quello previsto.
Per rendere la cosa adottabile, Cloudflare ha rilasciato esempi pratici già utilizzabili: un pacchetto npm (web-bot-auth) per generare le firme con chiavi Ed25519, un’estensione per il browser Chrome, un plugin per il web server Caddy che mostra la verifica lato server, e un server di prova pubblico per fare esperimenti.
Perché è più affidabile delle allowlist di IP
La differenza pratica è netta. Un elenco di IP dice al massimo “questa richiesta arriva da un indirizzo che di solito appartiene a un certo operatore” - un’informazione indiretta, che invecchia e che si può aggirare. Una firma crittografica dice invece “questa specifica richiesta, verso questo specifico dominio, in questa finestra di tempo, è stata prodotta da chi possiede quella chiave privata”.
Non serve più inseguire indirizzi che cambiano, né fidarsi di uno User-Agent che chiunque può scrivere. La verifica non dipende dal percorso di rete: funziona anche se il bot passa da proxy o infrastrutture condivise. E l’identità non va concordata sito per sito: il bot pubblica la sua chiave una volta, e chiunque può verificarla.
Cosa cambia per chi gestisce un sito
Per chi amministra un sito, l’orizzonte è poter decidere in modo più fine chi far entrare. Invece di ragionare per liste di indirizzi, si può ragionare per identità verificate: dare accesso al crawler di un motore di ricerca o a un agente AI a cui si vuole concedere spazio, e trattare diversamente il resto. Cloudflare ha dichiarato l’intenzione di integrare questo meccanismo nei propri strumenti di gestione dei bot e di analisi del traffico AI, sulla stessa linea di altre aperture recenti come l’OAuth self-managed.
Va detto con chiarezza che questa firma dimostra chi ha mandato la richiesta, non cosa poi ne farà. Un bot firmato resta soggetto alle regole del sito: l’autenticazione è la premessa per applicare permessi sensati, non un lasciapassare automatico.
A che punto è
Qui serve prudenza, perché non è ancora tutto stabile. Alla presentazione, Web Bot Auth è partito come beta chiusa, cioè una fase di prova ad accesso limitato.
Le specifiche che lo descrivono sono Internet-Draft dell’IETF (per esempio la bozza sull’architettura e quella sul formato della directory delle chiavi): documenti di lavoro, ancora in evoluzione e non approvati come standard. Vale la pena ricordare che un Internet-Draft, di per sé, non ha valore ufficiale nel processo IETF finché non completa l’iter. Lo standard che sta sotto, la RFC 9421, è invece già pubblicato e stabile.
Cloudflare ha anche descritto un’alternativa più sperimentale basata su mTLS (l’autenticazione reciproca a livello di TLS, con certificati sia lato client che server), ma indica le firme dei messaggi HTTP come via principale, perché più semplice da adottare senza toccare lo strato TLS.
In sintesi: è una proposta concreta e già sperimentabile, non un prodotto finito. L’idea di identificare i bot con una prova crittografica invece che con indizi falsificabili è solida, e arriva nel momento giusto, con gli agenti AI che moltiplicano il traffico automatico. Ma il suo valore reale dipenderà da quanti operatori di bot inizieranno a firmare e da quanti siti impareranno a verificare. Per ora conviene seguirla, capirne il funzionamento e considerarla un complemento alle difese esistenti, non ancora un loro sostituto.
