Sblocco delle porte con codici QR univoci
CasaCasa > Blog > Sblocco delle porte con codici QR univoci

Sblocco delle porte con codici QR univoci

Aug 14, 2023

I codici QR hanno dimensioni comprese tra 21x21 (righe e colonne) e 177x177. Ogni quadrato della griglia rappresenta un bit, sottraendo i quadrati di posizione, allineamento e correzione degli errori. Ignorando queste sottrazioni, ciò significa che i codici QR possono memorizzare da 441 bit a 31.329 bit (circa 3,9 kB). Quindi anche il più piccolo codice QR può rappresentare una chiave di crittografia unica a 256 bit. Gli ingegneri di TheIoTProject hanno approfittato di questo fatto per costruire un sistema di chiusura delle porte unico che si basa sui codici QR.

In pratica, questo sistema funzionerebbe in modo molto simile agli scanner per carte RFID che molte persone utilizzano per entrare nei loro uffici. Il problema con questi sistemi è che l'ID univoco della carta RFID è statico e ciò introduce una vulnerabilità nella sicurezza. Se un malintenzionato riesce a clonare una carta RFID autorizzata, può aprire la porta. Questo sistema di codici QR è diverso, perché può generare un nuovo codice QR temporaneo per ogni utilizzo. Ogni volta che qualcuno ha bisogno di aprire la porta, utilizzerà un'app o un sito Web per generare il codice QR necessario. Questi potrebbero richiedere l’autenticazione a due fattori per ulteriore sicurezza. Dopo che l'utente ha sbloccato la porta con un codice QR o è trascorso un determinato periodo di tempo, il sistema invalida il codice QR in modo che non possa essere copiato e utilizzato da un utente malintenzionato.

Un codice QR valido rappresenterebbe un codice di accesso crittografato come SHA256, rendendo quasi impossibile la forza bruta o il reverse engineering attraverso tecniche crittografiche. Una possibile vulnerabilità è la trasmissione del codice dal server all'app dell'utente. Ma la crittografia wireless standard e le pratiche IT adeguate lo impedirebbero e la durata limitata di un codice QR valido limiterebbe l’utilità di un simile attacco.

Per dimostrare questo sistema, il team ha messo insieme una semplice implementazione composta da un computer a scheda singola Raspberry Pi, uno scanner di codici QR USB e un modulo relè in grado di attivare una serratura elettronica. Questo è un sistema open source, quindi puoi esplorare il codice e i dettagli sulla pagina GitHub di TheIoTProject.