La convalida degli algoritmi crittografici: quali soluzioni adottare
Le tecniche crittografiche sono da sempre alla base delle misure di sicurezza per la protezione dei dati, siano essi in transito che residenti. Lo sviluppo di tecniche di crittografia sempre più sofisticate e la loro adozione in tutti i settori tecnologici ha consentito l’introduzione di nuovi servizi sempre più evoluti (vedi firma digitale, blockchain, …) che richiedono algoritmi sempre più complessi e sicuri. Ed è proprio la sicurezza di tali algoritmi il maggiore punto di attenzione in tale ambito anche perché le minacce e gli exploit verso tali soluzioni hanno raggiunto dei livelli di sofisticazione mai registrati prima.
Risulta pertanto evidente che la convalida della sicurezza di tali algoritmi risulta un elemento essenziale per non vanificare la sicurezza offerta da tali soluzioni e il successo dei servizi che essi supportano.
Negli Stati Uniti, la Federal Information Processing Standard (FIPS) ha definito i requisiti di interoperabilità e di protezione per i sistemi ICT che vengono utilizzati dal governo federale degli Stati Uniti. Lo standard FIPS 140 ha infatti definito la lista degli algoritmi di crittografia che sono stati convalidati e approvati in accordo al programma di convalida denominato Cryptographic Module Validation Program (CMVP), promosso dal National Institute of Standards and Technology (NIST).
La sempre maggiore richiesta di algoritmi crittografici certificati, ha spinto il NIST a promuovere un protocollo di convalida crittografica automatizzata denominato Automated Cryptographic Validation Protocol (ACVP) che consente una convalida di tali algoritmi più veloce e automatizzata minimizzando il coinvolgimento umano nei test di crittografia.
Gli obiettivi principali del progetto ACVP erano quelli di collaborare con produttori commerciali o open source di soluzioni crittografiche e consumer di algoritmi validati FIPS 140 al fine di:
- migliorare l’efficienza e l’efficacia dell’algoritmo crittografico e dei test dei moduli adottando le migliori pratiche del settore;
- sviluppare procedure e tecniche di prova che garantiscano la correttezza dell’algoritmo crittografico e la conformità dei moduli allo standard FIPS 140 in modo automatizzato sulla base evidenze o prove leggibili da una macchina;
- identificare le tecniche e le procedure che forniscano una garanzia costante della conformità operativa a FIPS 140 per i moduli crittografici durante tutto il loro ciclo di vita.
Il progetto, avviato nel 2016, si è completato nel 2019 con lo sviluppo delle prime soluzioni conformi al protocollo ACVP.
Il tale ambito si colloca la soluzione sviluppata da atsec information security corp. (sede americana del Gruppo atsec information security) che ha sviluppato una prima soluzione ACVP che può essere utilizzata in maniera autonoma dai vari vendor o esternalizzata a laboratori certificati come atsec.
La soluzione sviluppata da atsec rende il passaggio all’ACVP il più semplice ed efficiente possibile attraverso l’utilizzo di un proxy ACVP e un parser ACVP così come illustrato in figura.
L’utilizzo di tali soluzioni di convalida, degli algoritmi crittografici, oltre a garantire una più veloce certificazione rispetto agli standard di riferimento (es. FIPS 140), consente di verificare la robustezza e la sicurezza degli algoritmi crittografici in ambiti dove essi sono massicciamente utilizzati quali, ad esempio, la blockchain.