Un’azienda che paga per un modello di IA non dispone, per impostazione predefinita, di un metodo crittografico per verificare che sia stato proprio quel modello a produrre la risposta. Il fornitore potrebbe instradare la richiesta verso un modello più economico, oppure un aggressore potrebbe alterare il flusso di output. Anthropic propone di affrontare il problema con FlashProve, un prototipo open source che collega una risposta a pesi specifici senza rivelarli.
La proposta mira a qualcosa di più specifico che rilevare se un testo «sembra» scritto da una determinata IA: dimostra che l’output corrisponde a un modello definito in precedenza. Questa differenza potrebbe essere importante nei servizi di terze parti, negli audit e nei sistemi di inferenza compromessi. Ma la dimostrazione di Anthropic rende chiaro anche il prezzo di questa garanzia: produrre ogni prova richiede molta più potenza di calcolo rispetto alla normale generazione della risposta.
Un’impronta del modello prima di rispondere
FlashProve usa zkSNARK, una famiglia di prove crittografiche che consente di verificare l’esecuzione di un calcolo senza rivelare informazioni segrete sui suoi input. In questo caso, il fornitore pubblica prima un impegno crittografico, una sorta di impronta che identifica un insieme esatto di pesi. I pesi restano nascosti; la prova successiva è legata a quell’impegno, non semplicemente a un’affermazione del server.
Il processo si articola in due fasi. Nella fase preliminare, il fornitore fissa l’impegno del modello. Quando arriva una richiesta, genera una prova che attesta che i token della risposta sono stati ottenuti valutando quel modello con quell’input. Chi dispone dell’impegno, della richiesta e della risposta può verificare il risultato senza accedere ai pesi.
flowchart TD
A["Proveedor fija compromiso"] --> B["Usuario envía petición"]
B --> C["Modelo comprometido genera salida"]
C --> D["GPU produce prueba"]
D --> E["Usuario recibe salida y prueba"]
E --> F["Verificador comprueba compromiso y respuesta"]La condizione di fiducia non scompare: l’impegno deve provenire da una fonte di cui il verificatore si fida. Il repository di FlashProve avverte che l’identificatore dell’impegno deve essere ottenuto da una parte affidabile, non dal server sottoposto a verifica né dai file forniti insieme alla prova. Se il fornitore può sostituire sia la risposta sia l’identità del modello accettata, la verifica perde il suo scopo.
La tecnica nasconde i pesi, ma non mira a nascondere l’architettura del modello. Non certifica nemmeno che il modello sia sicuro, che la sua risposta sia corretta o che il servizio abbia usato esclusivamente determinate risorse. Certifica un’affermazione più circoscritta: che l’output verificato corrisponde al modello associato all’impegno, nei limiti di ciò che FlashProve è in grado di dimostrare.
Il miglioramento rispetto alle prove precedenti ha un costo
Anthropic ha testato il sistema con Llama 4 Maverick, un modello a miscela di esperti da 400 miliardi di parametri, quantizzato a 4 bit. Su una GPU Nvidia H100, FlashProve ha elaborato circa 110 token al secondo durante la generazione delle prove. Ogni certificato occupa circa 19 megabyte per una richiesta di 1.024 token.
Il collo di bottiglia non è tanto la verifica del certificato quanto la sua produzione. The New Stack stima la verifica in circa 21 secondi con un singolo thread della CPU; The Decoder riporta 17 secondi su una CPU standard. Anthropic confronta il tempo GPU del sistema con vLLM e stima un sovraccarico da 70 a 95 volte. Sono dati relativi a un test specifico, non una misurazione generale valida per qualsiasi modello o carico di lavoro.
La distanza rispetto al lavoro precedente è notevole. Anthropic afferma che VerInf impiegava 14,3 ore per generare una prova di 1.000 token, che occupava 93,6 GB e richiedeva quasi un giorno per essere verificata. FlashProve riduce le dimensioni a circa 19 MB e porta la verifica a pochi secondi, ma la generazione resta costosa per un’API che dovrebbe allegare una prova a ogni risposta.
Inoltre, le prove vengono generate in batch dopo il completamento delle richieste. I token non vengono verificati man mano che appaiono sullo schermo. Per i prodotti che devono mostrare subito una risposta, significa che la verifica può arrivare dopo il testo. Il fornitore dovrebbe inoltre sostenere l’uso aggiuntivo della GPU, mentre chi verifica deve conservare la risposta, la richiesta, l’impegno e il certificato.
Cosa potrebbe cambiare per fornitori e clienti
In un servizio che distribuisce le richieste tra più modelli, una prova verificabile permetterebbe al cliente di controllare se ha ricevuto la risposta del modello acquistato. Lo stesso meccanismo potrebbe fornire a un’azienda la prova che un’analisi è stata eseguita con uno specifico modello di sicurezza, anziché con una versione più economica o depotenziata. In entrambi i casi, i soli registri delle conversazioni non offrono questa garanzia crittografica.
Anthropic prospetta anche possibili usi per auditor e autorità di regolamentazione. Un’autorità potrebbe chiedere certificati per verificare che un fornitore abbia utilizzato un modello approvato, oppure raccogliere prove che il calcolo dichiarato sia stato destinato all’inferenza. La società avverte, tuttavia, che verificare l’inferenza non dimostra che lo stesso hardware non stesse addestrando contemporaneamente un altro modello. La prova delimita ciò che si può attestare; non rende trasparente l’intero sistema del fornitore.
In ambito di sicurezza interna, il collegamento a pesi specifici potrebbe aiutare a rilevare se un server compromesso risponde con un altro modello o se un agente non autorizzato si è inserito nel processo di generazione. Anthropic descrive anche uno scenario in cui un modello più avanzato si spaccia per uno meno capace per eludere i controlli. Perché il rilevamento funzioni, il server dovrebbe produrre una prova valida per l’impegno atteso; non basterebbe più sostituire soltanto il testo.
L’idea è in linea con un obiettivo annunciato in precedenza da Anthropic, anche se non si tratta dello stesso progetto. L’azienda afferma di aver raggiunto l’obiettivo di creare un prototipo di inferenza verificabile tramite un altro sistema, che firma il traffico e riesegue l’inferenza su un server fidato. FlashProve persegue lo stesso fine con la crittografia e senza dipendere da hardware fidato.
“We will develop a prototype by September 30, 2026 of provable inference, a technique for reliably, provably ‘signing’ AI model outputs in a way that makes them attributable to a specific set of model weights.”
— Anthropic
Le limitazioni incidono sull’uso reale
La prova attuale copre contesti fino a 1.024 token. Usa inoltre aritmetica intera e decodifica greedy: a ogni passaggio sceglie il token successivo più probabile. The Decoder osserva che questo non copre la normale generazione casuale dei chatbot. Pertanto, una dimostrazione valida per il prototipo non equivale a certificare senza modifiche qualsiasi risposta prodotta da un servizio di conversazione in produzione.
Il metodo comporta inoltre un notevole carico operativo. Il repository indica che la prova su vasta scala richiede una H100 e una quantità elevata di memoria; per eseguire l’esempio con i pesi reali di Maverick, specifica requisiti di 330 GB di RAM e 245 GB di spazio su disco, oltre a un download di 232 GB. Si tratta dei requisiti della procedura descritta nel repository, non dei requisiti minimi per verificare una prova ricevuta: il verificatore può essere eseguito su una normale CPU.
Anthropic ha cercato di separare la fiducia matematica dall’ottimizzazione del software. Claude ha contribuito allo sviluppo di FlashProve e all’accelerazione del sistema; il team ha formalizzato in Lean proprietà quali l’accettazione di prove valide, il rifiuto di quelle falsificate con probabilità schiacciante e la mancata rivelazione dei pesi oltre a quanto implicato dalla risposta. Il progetto include un verificatore in Lean supportato da queste prove e un altro, più veloce, in C++. Quest’ultimo e il generatore GPU sono stati confrontati con il protocollo formale, ma non offrono le stesse garanzie di verifica formale.
Questa distinzione è importante per un’azienda che stia valutando l’adozione del sistema: non basta che il progetto crittografico abbia proprietà dimostrate; contano anche le implementazioni concrete che generano e verificano i certificati. Il codice, le prove Lean e la documentazione sono pubblicati con licenza Apache 2.0, ma GitHub identifica il repository come un artefatto di ricerca, non mantenuto e che non accetta contributi. FlashProve non fa inoltre parte dell’API di Claude e Anthropic non ha indicato se verrà integrato.
Per ora, FlashProve dimostra che è possibile associare crittograficamente una risposta a pesi privati e verificare tale associazione su una CPU. Per trasformarlo in una garanzia di routine, dovrebbe ancora risolvere il costo di generazione delle prove, ampliare le condizioni di inferenza supportate e adattarsi ai tempi di risposta dei servizi che intende rendere verificabili.
Fonti: The New Stack, The Decoder, Anthropic, GitHub