Luca Annunziata

Project Wycheproof, Google per la sicurezza crittografica

Moutain View mette in piedi uno strumento che supporterà gli sviluppatori nel creare piattaforme sicure. Intercettando errori e configurazioni deboli dei protocolli di cifratura applicati

Milano - Il nome, spiegano da Mountain View, è evocativo: Wycheproof è la montagna più piccola della Terra, ma questo non significa che sia facile da scalare. E lo stesso vale per la crittografia: sembra semplice applicare tecnologie e algoritmi consolidati, ma troppo spesso per un errore veniale o una impostazione troppo blanda si mette a rischio la sicurezza di un intero progetto. Per questo Google ha messo in piedi un sistema automatizzato di test in grado di valutare gli errori più comuni, e l'ha donato alla comunità.

Project Wycheproof è una suite di test che mette alla prova le librerie dedicate alla crittografia di un progetto software, verificand alcune debolezze comuni e accertate di alcuni protocolli e i più classici errori di implementazione. Con i circa 80 tipi di test compresi nel progetto, dice Google, sono stati già individuati 40 bug diversi che sono stati comunicati ai produttori del software in questione e sono stati risolti o sono in via di risoluzione: lo strumento fornito da BigG è scritto in Java, e può essere eseguito per verificare codice scritto col linguaggio di Oracle e non solo.

I tipi di cifratura che Wycheproof è in grado di vagliare sono tutti molto diffusi: dal celeberrimo RSA a AES-EAX, AES-GCM, DH, DHIES, DSA, ECDH, ECDSA, ECIES. Non solo è in grado di valutare se ci sono problemi evidenti, ma anche se gli algoritmi sono stati applicati in modo approssimativo, magari introducendo un vizio di forma che se individuato da un hacker possa rendere praticamente inutile la cifratura rendendo possibile decodificare i dati con semplicità. Naturalmente si tratta di uno strumento creato da uno sviluppatore per uno sviluppatore: superare i test di Google non mette al sicuro rispetto alla qualità e alla sicurezza assoluta del software, ma è senz'altro un buon banco di test per il codice.
L'impiego di Project Wycheproof è consigliabile nelle fasi di sviluppo del software, prima di metterlo a disposizione del pubblico: in questo modo dovrebbe essere possibile escludere a priori alcuni dei problemi più comuni che affliggono le app, e ridurre la necessità di produrre complesse patch a posteriori che non sempre arrivano tempestive a risolvere i problemi. Inoltre il codice di Wycheproof è rilasciato sotto licenza Apache 2.0, dunque è a tutti gli effetti free software a disposizione su GitHub.

Luca Annunziata