A cura:
OK. Poiché esiste una richiesta di "risposta breve", qui è "riepilogo esecutivo":
Domanda: "Quindi tutti i dispositivi di lettura devono conoscere anche la chiave segreta. Ma ci possono essere molti lettori di molti venditori (ad esempio macchine per il caffè, piccoli lettori USB ai registratori di cassa, pannelli di controllo degli accessi ...), tutti hanno davvero la chiave segreta? C'è uno standard su come la chiave deve essere archiviata? "
Risposta: "Sì. Oltre alla comunicazione avviata da remoto / server con la scheda DESFire, tutti i lettori devono conoscere anche le chiavi segrete.
E sì - c'è standard su come la chiave deve essere immagazzinata - uso del modulo Secure Access - MIFARE SAM (attualmente modello AV2).
Tutti i contenuti sottostanti possono essere dimenticati se non interessati;)
Ci sono fondamentalmente due famiglie di carte MIFARE: MIFARE Classic e DESFire (e derivati simili).
Inoltre c'è MIFARE Plus, che è stato inizialmente preso di mira dai mercati MIFARE Classic (che supporta pienamente, se configurato per farlo), ha due ulteriori modalità di sicurezza, che aggiungono maggiore sicurezza alle infrastrutture MIFARE Classic fino a un livello simile a DESFire.
Ci sono molti protocolli di autenticazione usati da quelle famiglie MIFARE, alcuni sono abbastanza simili ma a volte differiscono in piccoli dettagli, il che può portare a leggere le infrastrutture NON essere in grado di gestire un altro protocollo anche se sembrano molto simili all'inizio ...
Ciò che è più importante per la tua domanda su DESFire EV1: l'approccio di base per la sicurezza del lettore è l'uso dei cosiddetti "Secure Access Modules" (SAM), che sono smart card specializzate, fornendo funzionalità di sicurezza ai lettori / terminali. Il SAM contiene tutte le chiavi e ha anche un motore per condurre i protocolli di sicurezza, utilizzati all'interno della comunicazione sicura tra la scheda e il lettore. Questo è l'ancoraggio della sicurezza del lettore in termini di utilizzo di DESFire EV1. Le chiavi potrebbero anche essere derivate individualmente per ogni carta, quindi NON usano la stessa chiave per tutti i protocolli di autenticazione e crittografia della carta. La chiave in un modulo SAM può essere caricata in modo sicuro sul SAM in campo utilizzando protocolli crittografati aggiuntivi dall'host O da un caricamento batch offline (da una chiavetta USB, ad esempio).
Alcuni protocolli basati su RSA sono anche supportati per la firma / verifica per garantire che alcune azioni siano autenticate senza l'uso di protocolli a chiave condivisa.
Il SAM è progettato in modo intelligente e abbastanza solido in termini di sicurezza, quindi mettere un modulo SAM in un distributore automatico supporta tutta la sicurezza richiesta. Anche una modifica della scheda DESFire, avviata da un host remoto, può essere stabilita in modo sicuro poiché il SAM può fungere da "proxy sicuro" stabilendo un canale sicuro verso l'host e un altro verso la carta, fornendo un "proxy di re-crittografia" nel mezzo. Ovviamente SAM è una scheda standard che è "client" e qualsiasi scambio di comandi, quindi il lettore deve supportare tali protocolli inviando, ricevendo, inoltrando APDU tra le parti partecipanti.
Il SAM supporta anche connessioni dirette al chip del lettore, fungendo da proxy trasparente.
Supporta 2DES, 3DES, AES, CRYPTO1, RSA e alcune varianti proprietarie di algoritmi standard.
SAM ha un concetto ancora più intelligente di "contatori di operazioni", che aiuta ad affrontare la minaccia alla sicurezza di essere rubato e usato frequentemente: ogni operazione diminuisce un contatore. I contatori devono essere periodicamente incrementati da un'azione avviata dall'host, online o offline. Gli "script" cifrati e firmati devono essere portati nel SAM in un modo (ad esempio, una chiavetta USB). Le chiavi possono anche essere versionate per supportare il rollover sicuro delle chiavi durante la vita del sistema.
Lo stesso SAM ha una logica di controllo dell'accesso, basata su crittografia avanzata, per applicare il modello di sicurezza progettato. Uno schema di gestione delle chiavi attentamente pianificato e progettato, supporta la distribuzione sicura delle chiavi tra i molti giocatori del sistema. Di solito, il contenuto SAM iniziale viene distribuito da una personalizzazione SAM sicura e da una consegna controllata al partecipante designato (come il distributore automatico), che ha già alcune chiavi di autenticazione per ottenere l'accesso iniziale alle operazioni SAM / DESFire consentite. Una delle operazioni tipiche può essere lo scambio di chiavi di autenticazione SE queste chiavi sono assegnate solo a giocatori in particolare.
Un altro commento all'UID, la sua clonazione e così via: i moderni prodotti MIFARE supportano comandi separati per accedere a un RandomUID, da utilizzare nei protocolli anti-collisione, e un UID statico per identificare la carta (opzionalmente protetta anche da autenticazione e crittografia protocolli che forniscono un "canale sicuro"). Ciò offre ai progettisti del sistema gli strumenti adeguati per migliorare la protezione contro la clonazione o l'emulazione UID. Ma molti "progettisti della sicurezza" sono piuttosto pigri e non usano queste possibilità anche se esistono ...