La crypto-agility è la capacità di cambiare gli algoritmi crittografici senza riscrivere il sistema. Suona banale finché non serve davvero: molti sistemi hanno algoritmi, dimensioni di chiave e protocolli cablati in profondità nel codice e nelle configurazioni – e quando un algoritmo diventa debole (è già successo con MD5, SHA-1, RC4, DES), sostituirlo è un progetto doloroso invece di un cambio di configurazione.
È diventata urgente per la transizione post-quantistica: non sappiamo con precisione quando servirà passare agli algoritmi resistenti, quindi i sistemi vanno progettati per poterci passare facilmente quando sarà il momento. I principi di un'architettura crypto-agile:
- astrazione: la crittografia dietro interfacce, non chiamate hardcoded sparse ovunque – cambi l'implementazione in un posto
- inventario crittografico (CBOM, Cryptography Bill of Materials): sapere dove usi cosa – non puoi migrare ciò che non sai di avere. È l'equivalente dell'SBOM per la crittografia
- negoziazione dei parametri (come fa TLS) invece di valori fissi, e supporto agli schemi ibridi (classico + PQC insieme)
Per chi ha dati con segretezza a lunghissimo termine, la crypto-agility è la preparazione da fare ora, prima ancora di adottare gli algoritmi PQC: prima rendi il sistema capace di cambiare, poi cambierai quando serve. È lungimiranza architetturale – costa poco progettarla all'inizio, tantissimo aggiungerla dopo.