Smart card
Da Wikipedia, l'enciclopedia libera.
La smart card è un dispositivo hardware delle dimensioni di una carta di credito che possiede potenzialità di elaborazione e memorizzazione dati ad alta sicurezza. Più in generale, il termine smart card sottintende un insieme di tecnologie, comprendenti circuiti integrati, microprocessori, memorie RAM, ROM, EEPROM, antenne, ecc., integrate nello stesso circuito elettrico per formare un microchip che è il “cuore” della smart card
La smart card è costituita da un supporto di plastica nel quale è incastonato un microchip connesso ad un’interfaccia di collegamento che può essere una contattiera o un antenna. Il microchip fornisce funzionalità di calcolo e memorizzazione dati; la contattiera o l’antenna consentono al microchip di dialogare con uno speciale terminale di lettura collegato solitamente ad un computer mediante porta seriale, parallela, USB, ecc.
Indice |
[modifica] La Storia
L’idea di incapsulare un circuito integrato in un supporto di plastica fu introdotta nel 1968 da due inventori tedeschi: Jürgen Dethloff e Helmut Grötrupp. Negli anni ’70 furono registrati i primi brevetti da parte di diverse aziende e gruppi di ricerca, ma solo alle soglie degli anni ’80 Bull (allora CII-Honeywell-Bull) mise in commercio il primo prototipo di smart card e introdusse le smart card a microprocessore.
Le prime applicazioni con smart card furono realizzate in Francia e Germania all’inizio degli anni ’80 dove le smart card furono adoperate come carte telefoniche prepagate e come carte bancarie di credito/debito ad alta sicurezza. Tali applicazioni mostrarono la grande capacita di resistenza ad attacchi e la considerevole flessibilità delle smart card e traghettarono la nuova e vincente tecnologia verso i recenti sviluppi in ambito GSM e Web.
Negli ultimi anni le nuove tecniche di miniaturizzazione, mediante le quali è stato possibile produrre microchip sempre più piccoli a costi sempre più bassi, hanno consentito di realizzare smart card più potenti dotate di coprocessore crittografico e di buone capacità di memoria a costi accessibili. Tale disponibilità ha avviato una fase di notevole e sorprendente sviluppo che è partita dall’implementazione delle SIM card in ambito GSM fino ad arrivare alla realizzazione della Carta d’Identità Elettronica e delle carte di credito “intelligenti”.
[modifica] Le specifiche tecniche standard
Lo standard internazionale ISO 7816, denominato "Identification Cards - Integrated circuit(s) cards with contact", definisce le caratteristiche fisiche, elettriche e operative delle smart card a microprocessore e a sola memoria con contatti elettrici (contact).
[modifica] Classificazione
Le smart card possono essere classificate in base a diversi criteri: - sulla base delle potenzialità e delle caratteristiche del microchip, si distinguono smart card a sola memoria (Memory Card) e smart card a microprocessore (Microprocessor Card); - sulla base del tipo di interfaccia di collegamento, si distinguono smart card con contattiera (Contact), smart card con antenna (Contacless Card) e smart card con antenna e contattiera (Dual Interface Card). Le caratteristiche del microchip determinano sia il costo della smart card, sia l’ambito di applicazione. Le smart card a sola memoria, tecnologicamente più semplici, sono più economiche ma offrono un livello di sicurezza più basso rispetto alle smart card a microprocessore e pertanto sono usate tipicamente per conservare dati che non necessitano di protezione “forte”. Le caratteristiche del supporto di plastica e dell’interfaccia di comunicazione determinano invece il ciclo di vita della smart card.
[modifica] Memory Card
La memory card, o smart card a sola memoria, offre unicamente funzionalità di memorizzazione sicura dei dati. Il microchip contiene una componente di memoria permanente nella quale si può leggere e scrivere attraverso un insieme di funzioni cablate in un circuito logico preprogrammato, stampato nel microchip durante la fase di produzione. Il circuito logico a sua volta comprende un meccanismo di protezione che salvaguarda l’accesso ai dati memorizzati basato tipicamente su un insieme di permessi di accesso. Tipicamente le memory card offrono circa da 1 a 4 Kbyte di memoria e sono usate principalmente per applicazioni semplici quali carte prepagate, carte per la raccolta punti, ecc. In questi casi, il meccanismo di protezione consente di evitare l’incremento fraudolento del credito. I comandi per la lettura e scrittura in memoria sono tipicamente sequenze di byte incapsulate in un protocollo seriale. Il vantaggio delle memory card sta loro nel basso costo dovuto alla semplicità della tecnologia adottata, tuttavia per applicazioni più complesse che richiedono un livello di sicurezza maggiore, si preferisce usare smart card a microprocessore.
[modifica] Microprocessor Card
La smart card a microprocessore, grazie alla potenza di calcolo fornita da un microprocessore incluso nel microchip, può essere paragonata ad un piccolo computer portatile altamente affidabile e inattaccabile in grado di elaborare e memorizzare informazioni salvaguardandone la riservatezza. Nella memoria del microchip è installato un sistema operativo che implementa la logica operativa della smart card. In particolare il sistema operativo si occupa della gestione interna della memoria e fornisce varie funzioni tra le quali lettura e scrittura in memoria, funzioni di programmazione dei permessi di accesso, funzioni crittografiche, ecc. La programmabilità del microchip conseguente alla presenza di un sistema operativo, consente di ottimizzare e personalizzare la smart card per una particolare applicazione o di integrare sullo stesso dispositivo più applicazioni (eventualmente interagenti tra loro). L’unico limite a tale flessibilità è rappresentato dalla disponibilità di risorse di memoria. Il set di comandi di una smart card a microprocessore è molto più vasto di quello di una smart card a sola memoria. Oltre ai comandi di lettura e scrittura, le smart card a microprocessore forniscono comandi di gestione dell'accesso alla memoria (es. comandi di verifica del PIN) e comandi di gestione del file system interno. Il singolo comando viene chiamato APDU (Application Protocol Data Unit). Grazie alla capacità di memorizzare informazioni in maniera estremamente sicura e inviolabile e alla possibilità di elaborare dati al suo interno, la smart card a microprocessore si propone in primo luogo come strumento informatico di identificazione sicura e certificata degli individui; in secondo luogo come dispositivo di elaborazione a supporto della crittografia in grado di memorizzare e proteggere le chiavi crittografiche private e di eseguire i principali algoritmi crittografici;
[modifica] Contact e Contactless Card
La differenza tra le smart card contact e contactless sta nel tipo di interfaccia di collegamento esistente tra il microchip e il mondo esterno. Le prime hanno una contattiera mediante la quale ricevono l'alimentazione e dialogano con l'esterno una volta inserite in un apposito dispositivo terminale detto lettore di smart card Le seconde hanno un'antenna che reagisce alla presenza di un campo elettromagnetico emesso da uno speciale dispositivo di lettura/scrittura nella banda delle radio-frequenze, consentendo al microchip di scambiare dati con l'esterno (purché l'antenna si trovi entro una distanza minima dal dispositivo di lettura/scrittura). Le smart card dual-interface, offrono entrambe le interfacce contact e contacless e pertanto la comunicazione con il microchip può avvenire indifferentemente mediante una o l'altra. Tale caratteristica consente di integrare sulla stessa smart card sia applicazioni complesse come quelle di firma digitale tipiche delle smart card contact, sia applicazioni più semplici e veloci, come quelle di controllo dell'accesso ad aree riservate, che richiedono esclusivamente accessi alla memoria wireless.
[modifica] La smart card a supporto della crittografia
La smart card a microprocessore, grazie alle caratteristiche di protezione dei dati intrinseche del microchip e alla presenza di un coprocessore crittografico che gli consente di eseguire le principali funzioni crittografiche on-board, si propone come il mezzo adeguato a proteggere le chiavi private rilanciando la crittografia come supporto tecnologico di base per lo sviluppo di sistemi informatici sicuri e riproponendo in maniera decisa la firma digitale come un sicuro e insostituibile strumento per l'autenticazione e l'identificazione degli individui, per la verifica dell'integrità di insiemi di dati e per il non ripudio delle transazioni.
[modifica] Le Applicazioni
Le applicazioni con smart card coprono numerosi campi che vanno dal settore pubblico, a quello privato e quello delle telecomunicazioni. In ogni caso le smart card sono usate principalmente per la memorizzazione sicura dei dati e per autenticare e proteggere le transazioni elettroniche Di seguito sono descritte le principali applicazioni implementate mediante smart card:
Telefonia fissa In questo ambito la smart card è usata principalmente come carta prepagata grazie alle sue caratteristiche di inviolabilità.
Telefonia mobile Lo standard GSM ha introdotto il concetto di SIM (Subscriber Identity Module) che rappresenta un dispositivo portabile di identificazione dell’utente. La SIM conserva le informazioni di identificazione degli utenti e genera le chiavi crittografiche usate per cifrare la trasmissione digitale della voce. Pertanto può essere inserita in cellulari diversi presentando al gestore telefonico sempre la stessa identità. I requisiti funzionali delle SIM corrispondono perfettamente con le funzionalità offerte dalle smart card e pertanto, l’implementazione su smart card (con supporto di plastica di dimensioni ridotte) è stata una scelta naturale. Analoghe considerazioni si applicano in ambito UMTS dove le USIM sono l’evoluzione delle SIM.
Bancario In ambito bancario le smart card sono state utilizzate soprattutto come borsellini elettronici, Denaro elettronico e in alcuni casi come carte di credito. Considerando che un borsellino elettronico deve consentire il caricamento, la memorizzazione e l’uso del credito evitando nello stesso tempo clonazioni e modifiche fraudolente del credito, le smart card rappresentano ancora una volta la soluzione ottimale che soddisfa tutti i requisiti. A conferma di ciò si ricordano le numerose implementazioni tra cui: VisaCash e Mondex in UK, Geldkarte in Germania, Minipay in Italia e Moneo in Francia
e-government In quest’ambito le smart card sono state utilizzate principalmente come strumento di identificazione e di memorizzazione di informazioni personali. Tra le numerose realizzazione si ricordano: Carta di identità elettronica, Carta Nazionale Servizi, Carte sanitarie elettroniche (health cards), Carte pensione (social security cards), Schede elettorali elettroniche, Carte di firma digitale a valore legale, ecc.
Trasporti Nei trasporti pubblici le smart card sostituiscono i biglietti e diventano a tutti gli effetti titoli di viaggio. Tipicamente sono utilizzate come biglietti prepagati o in sostituzione degli abbonamenti. Nei trasporti privati invece le smart card sono spesso utilizzate come carte di pagamento per i parcheggi pubblici
Militare In questo settore le smart card hanno consentito di realizzare la “carta del militare” che rappresenta sia un vero e proprio documento di riconoscimento del militare, sia un contenitore di informazioni personali tra cui informazioni sanitarie (estremamente utili in caso di ferimento durante un operazione di guerra), informazioni relative al grado e al corpo di appartenenza, ecc.
Settore privato In tale ambito, le principali necessità riguardano il controllo dell’accesso ad aree riservate, il controllo dell’accesso alle reti e ai sistemi di calcolo (autenticazione e firewalling) e la protezione delle postazioni di lavoro (tipicamente personal computer) mediante sistemi di login sicuro e cifratura dei dati sensibili.
[modifica] Bibliografia
"Programmazione delle Smart Card" Ugo Chirico, Gruppo Editoriale Infomedia, 2003