Hardware Security Key

Indice dei contenuti

    Una hardware security key (chiave di sicurezza hardware) è un dispositivo fisico — tipicamente in formato USB, NFC o Bluetooth — che implementa protocolli di autenticazione a chiave pubblica (FIDO2/WebAuthn) per verificare l’identità dell’utente in modo crittograficamente robusto e resistente al phishing. A differenza dell’autenticazione a due fattori tramite SMS o app TOTP (Google Authenticator), una hardware security key non può essere compromessa da attacchi di phishing perché la risposta crittografica è legata all’origine del sito web — una key non risponde mai a un sito falso anche se l’utente non si accorge della differenza.

    Come funziona

    La security key contiene una o più coppie di chiavi asimmetriche generate internamente, la cui chiave privata non lascia mai il dispositivo. Durante la registrazione su un sito:

    1. Il sito invia una challenge casuale e il proprio origin (es. https://accounts.google.com)
    2. La key genera una nuova coppia di chiavi specifica per quell’origin (o usa una chiave derivata dall’origin tramite HMAC)
    3. La chiave pubblica viene registrata sul server insieme all’origin
    4. La chiave privata rimane nella key

    Durante l’autenticazione:

    1. Il server invia una challenge casuale
    2. La key firma la challenge insieme all’origin con la chiave privata
    3. Il server verifica la firma con la chiave pubblica registrata

    Il punto critico è il passo 2: la key include l’origin nella firma. Se l’utente è stato ingannato a navigare su https://accounts.goog1e.com (phishing), l’origin è diverso, la key usa una chiave privata diversa (o non ne ha una registrata), e l’autenticazione fallisce — automaticamente, senza che l’utente debba accorgersi del sito falso.

    Standard FIDO2 e WebAuthn

    Le hardware security key moderni implementano lo standard FIDO2, composto da:

    • WebAuthn (W3C): API browser per l’autenticazione passwordless o come secondo fattore
    • CTAP2 (Client-to-Authenticator Protocol 2): protocollo di comunicazione tra browser/OS e la key fisica

    Lo standard supporta sia l’uso come secondo fattore (dopo username/password) sia come fattore unico (passwordless) — l’utente tocca la key e il sito lo autentica senza password.

    Produttori e modelli principali

    YubiKey (Yubico): il produttore più diffuso. Modelli da base (YubiKey 5 NFC) a enterprise (YubiKey 5Ci con connettore Lightning per iOS). Supportano FIDO2, TOTP, OpenPGP, PIV smart card, OTP proprietario Yubico.

    Google Titan: prodotta da Google con chip di sicurezza certificato. Disponibile in versione USB-A, USB-C e NFC. Originariamente sviluppata per uso interno Google come risposta alle campagne di phishing contro i dipendenti — dopo il deployment obbligatorio delle key, le compromissioni di account da phishing sono scese a zero.

    SoloKeys: open source hardware e firmware. Verificabile indipendentemente.

    Resistenza agli attacchi

    Phishing: immune per design — l’origin binding crittografico impedisce la risposta a siti diversi da quello registrato.

    Man-in-the-Middle: il MitM può catturare le credenziali TOTP o SMS e riusarle in tempo reale. La key firma una challenge fresca per ogni autenticazione — la firma catturata è inutilizzabile su richieste diverse.

    Malware: un malware sul computer non può estrarre la chiave privata dalla security key (rimane nel chip). Può però intercettare la sessione dopo l’autenticazione. La protezione post-autenticazione richiede misure aggiuntive (session binding, Passkeys con device binding).

    Smarrimento: la perdita della key blocca l’accesso. Le organizzazioni devono prevedere procedure di recovery (chiave di backup, codici di recupero) e provisioning di chiavi di riserva per gli utenti.

    Passkeys

    Le Passkeys (Apple/Google/Microsoft, standard FIDO2) sono l’evoluzione consumer delle hardware security key: le coppie di chiavi sono generate e memorizzate nel Secure Enclave del dispositivo (iPhone, Android, laptop con TPM) invece che in una chiave fisica esterna, e sincronizzate cifrate nel cloud dell’account (iCloud Keychain, Google Password Manager). Offrono la stessa resistenza al phishing delle hardware security key con maggiore comodità — nessun dispositivo fisico aggiuntivo da portare — al costo di dipendere dalla sicurezza dell’account cloud di sincronizzazione.

    Ultimo aggiornamento: