TORNA ALL'INDICE GENERALE DELLE SMART CARD

VAI AL CAPITOLO 2 : STANDARD E SPECIFICAZIONI
 

CAPITOLO 1 : Introduzione
 

1.1 Scopo dell’elaborato

1.2 Introduzione alle Smart Card

Carte a memoria (Memory Card)
Carte a processore (Smart Card)
Carte a contatto (Contact Card) e senza contatto (Contactless Card)

1.3 Evoluzione delle Smart Card

1.4 Applicazione ed utilizzi

Identificazione biometrica
Transazioni finanziarie e moneta elettronica
Rilevazione automatica di pagamento
Accesso a risorse riservate
Servizi Sanitari
Telefonia e TV via satellite

1.5 Struttura Hardware delle Smart Card

CPU
RAM (Memoria volatile)
ROM (Memoria a sola lettura)
EEPROM (Memoria ROM Elettronicamente Riscrivibile)
FeRAM
Circuito di Sicurezza
Porta di I/O
Co-processori
 
 
 
 



 
 
 
 

CAPITOLO 1 : Introduzione

1.1 Scopo dell’elaborato

Il presente elaborato si pone come obiettivo l’analisi e la descrizione delle attuali soluzioni basate sulla tecnologia delle carte intelligenti, definite Smart Card, ponendo particolare attenzione agli ambienti operativi in cui sono inserite. Sono introdotti i concetti fondamentali per comprendere le problematiche, i vincoli e le potenzialità che questa tecnologia emergente presenta. La struttura dell’elaborato si basa sull’introduzione graduale a specifici aspetti quali: tipologia e struttura interna della carta, Standard e specificazioni esistenti, trasferimento e strutturazione interna dei dati, modello logico e Software di gestione della carta. Si è focalizzata l’attenzione sul Sistema Operativo presente sulla carta e sulle diverse modalità operative implementate (carte multi funzionali e multi applicazione). I concetti espressi nei vari capitoli hanno validità generale per gli ambienti in cui le carte operano. Esistono una moltitudine di soluzioni e realizzazioni differenti che presentano caratteristiche comuni. Durante tutto il testo si fa riferimento ad una generica tipologia di carta a contatto, ossia ad una carta definita come multi funzionale (carta che fornisce un insieme di funzionalità specifiche). Gli argomenti trattati forniscono un supporto per comprendere i dettagli implementatitivi di tutte le Smart Card attualmente presenti sul mercato.

Il capitolo 1 (Introduzione) introduce i concetti fondamentali per comprendere cosa sia una Smart Card, le differenti tipologie e le applicazioni in cui è utilizzata.

Il capitolo 2 (Standard e specificazioni)descrive standard e specificazioni cui la maggior parte delle Smart Card fanno riferimento, in particolare sono descritte specifiche relative all’interfacciamento tra applicazioni presenti sulla carta e su un dispositivo terminale (quale un elaboratore). Tali standard comprendono ISO 7816, PC/SC (Personal Computer/Smart Card), OCF (Open Card Framework).

Il Capitolo 3 (Comunicazioni ed organizzazione delle informazioni) tratta la comunicazione tra Smart Card e dispositivo lettore, la struttura ed il formato delle informazioni scambiate (APDU), l’organizzazione e la sicurezza dei dati interni (File System).

Il Capitolo 4 (Sistemi Operativi per smart card) descrive il Sistema Operativo SmarTEC OS, che presenta caratteristiche comuni ad un generico sistema Operativo per Smart Card.

I capitoli 5 e 6 (Javacard "carte multi applicazione", MASSC "architettura per Smart Card") sono dedicati a carte multi applicazione contenenti una macchina virtuale Java (JavaCard Virtual Machine) implementata sulla Smart Card. In particolare il capitolo 6 tratta un’architettura di nuova concezione (MASSC) recentemente proposta da alcune aziende leader nel settore.
 
 
 
 

TORNA ALL'INDICE DEL CAPITOLO ATTUALE  (CAP 1: INTRODUZIONE)
 
 
 
 

1.2 Introduzione alle Smart Card

Il termine Smart Card (carta intelligente) si riferisce generalmente ad una carta di plastica (figura 1), delle dimensioni di una normale carta di credito, che contiene un microprocessore ed una memoria integrati; poiché priva di batteria, tastiera e display per funzionare deve essere inserita in un dispositivo di lettura. Un uso tipico è quello di chiave elettronica, in cui il possesso della carta e la conoscenza di un codice permettono l’accesso a determinate risorse.


 

Le caratteristiche principali di una carta intelligente sono:

PROGRAMMABILITÀ: la presenza di un microprocessore, generalmente a 8-bit, permette alla carta di assumere un ruolo attivo nel processo d’interazione con il mondo esterno.

SICUREZZA: possibilità di immagazzinare informazioni riservate accessibili solo alla carta stessa e modificabili dall’esterno solo con chiavi numeriche, ad esempio PIN (numero d’identificazione personale).

MOBILITÀ: la carta è facilmente trasportabile date le sue ridotte dimensioni.
Esistono diversi tipi di Carte con forma identica ma differenti caratteristiche funzionali.
 

Carte a memoria (Memory Card)

Questo tipo di carta, utilizzata per immagazzinare informazioni, contiene solo un circuito di lettura della memoria interna e la memoria stessa (EPROM o EEPROM). Nelle versioni più semplici può essere usata da chiunque né sia in possesso, come avviene per una normale carta telefonica prepagata, le più complesse prevedono una verifica di accessibilità alla carta. Sono utilizzate principalmente come carte a singola applicazione e tipicamente come carte “a scalare” in cui, dopo un’inizializzazione, il contenuto è decrementato fino ad esaurimento.
 

Carte a processore (Smart Card)

Le carte a microprocessore sono dei veri e propri microcalcolatori con Sistema Operativo ed interfacce applicative standardizzate; possono fornire funzioni complesse e supportare applicazioni flessibili ad alto grado di sicurezza basato su metodi crittografici, di validazione reciproca tra carta e terminale, suddivisione dei dati a più livelli di acceso.
 

Carte a contatto (Contact Card) e senza contatto (Contactless Card)

Le carte possono interagire con il lettore sfruttando due differenti tecnologie:
 



 
 
 
 

TORNA ALL'INDICE DEL CAPITOLO ATTUALE  (CAP 1: INTRODUZIONE)
 
 
 
 

1.3 Evoluzione delle Smart Card

Le ricerche relative alle Smart Card cominciarono nei primi anni settanta, ma solo nel 1976 Motorola e Bull svilupparono una tecnologia in grado di integrare un chip di silicio all’interno di un supporto plastico. Inizialmente furono prodotte carte con singole funzionalità (pagamento elettronico, carte d’identità, ecc) definite in fase di produzione e non modificabili dopo la distribuzione. Nel corso degli anni ottanta furono introdotte standardizzazioni fisiche, elettroniche ed architetturali che consentirono lo sviluppo di carte personalizzabili in grado di supportare più funzionalità. Questo tipo di Smart Card, chiamate multi-purpose o multi-funzione, presentavano ancora difficoltà di modifica ed aggiornamento delle funzioni esistenti. Negli ultimi anni le tecnologie costruttive hanno permesso di introdurre memorie più capaci (96 KB di ROM e 64 KB di EEPROM) e microprocessori da 16-bit, 32-bit su chip con area di 25 mm². Attualmente esistono Smart Card che supportano Sistemi Operativi complessi e macchine virtuali su cui possono essere sviluppate applicazioni multiple facilmente aggiornabili o sostituibili.
 
 
 
 

TORNA ALL'INDICE DEL CAPITOLO ATTUALE (CAP 1: INTRODUZIONE)
 
 
 
 

1.4 Applicazione ed utilizzi

Identificazione biometrica

Le Smart Card hanno un naturale inserimento nel mercato dell’identificazione personale e sono usate in applicazioni quali: Campus studenteschi, documenti governativi (carte d’identità e patenti di guida).Le informazioni risiedono sia all’interno della carta, in forma elettronica, che sul supporto di plastica (nome, firma, fotografia).
 

Transazioni finanziarie e moneta elettronica

Si possono gestire transazioni sia on-line (connessione tra le due parti durante la transazione), come avviene per le carte di credito, che off-line (transazione differita temporalmente). La Smart Card, oltre ai requisiti di sicurezza, ha il vantaggio di possedere una memoria interna su cui sono riportate le transazioni avvenute.
 

Rilevazione automatica di pagamento

Sono utilizzate per rilevare pagamenti di biglietti aerei, di bus, di tram ed ultimamente sono state studiate soluzioni per pedaggi autostradali utilizzando la tecnologia senza contatto. Le applicazioni sono indipendenti e possono essere inserite sulla stessa carta da organizzazioni diverse (governative o private) senza necessita di interazione tra esse.
 

Accesso a risorse riservate

La carta è usata come chiave elettronica per accedere a locali, software proprietari, informazioni riservate, connessioni ad Internet con autenticazione, ecc.
 

Servizi Sanitari

 Un particolare utilizzo prevede la gestione dei dati sanitari del possessore in cui le informazioni contenute nella carta sono accessibili a diversi livelli (informazioni generali, riservate, ecc). In caso d’emergenza si ottiene un quadro dettagliato ed aggiornato sullo stato del paziente.
 

Telefonia e TV via satellite

Le schede di telefonia mobile ed i dispositivi di ricezione TV satellitare contengono una Smart Card che consente l’identificazione dell’apparecchio e l’aggiornamento delle funzionalità offerte, anche dopo l’installazione. La carta permette l’utilizzo di dati crittografati per la comunicazione su reti poco sicure e rende quindi difficile attuare frodi.
 
 
 
 

TORNA ALL'INDICE DEL CAPITOLO ATTUALE (CAP 1: INTRODUZIONE)
 
 
 
 

1.5 Struttura Hardware delle Smart Card


 
 

Una tipica architettura del chip incorporato nella carta (figura 4) contiene CPU, RAM, ROM, EEPROM, un circuito di sicurezza ed una porta di I/O. Nella versione Contactless sono presenti un modulo di comunicazione a radio frequenza (Modem) ed un circuito induttivo d’alimentazione.
Di seguito sono discusse in dettaglio le funzioni svolte dai singoli componenti.
 

CPU

Generalmente si tratta di un microprocessore ad 8-bit (6805 o 8051) con bus d’indirizzamento a 16-bit, ma nuove soluzioni basate su processori a 16-bit (Javacard) o RISC a 32-bit sono attualmente disponibili.
 

RAM (Memoria volatile)

Fornisce un supporto veloce per immagazzinare dati frequentemente utilizzati durante la comunicazione con il lettore e l’elaborazione delle applicazioni. Valori tipici variano da poche centinaia ad una o due migliaia di byte, poiché le dimensioni del chip non possono superare valori imposti da limiti meccanici (rottura per flessione della carta).
 

ROM (Memoria a sola lettura)

Questa memoria contiene il Sistema Operativo e viene caricata in fase di produzione della carta. Il software caricato e detto ROM-mask e non può essere modificato in fasi successive. Le dimensioni di questa memoria variano da 2 K-byte a 96 K-byte in funzione delle applicazioni per cui la carta è stata sviluppata.
 

EEPROM (Memoria ROM Elettronicamente Riscrivibile)

Questa memoria non volatile, che contiene i dati statici utilizzati dal Sistema Operativo, può essere modificata durante il normale funzionamento della carta. Nuove applicazioni o aggiornamenti di funzioni del Sistema Operativo possono essere caricate fornendo una notevole flessibilità nello sviluppo di soluzioni basate su Smart Card. I dati riservati sono conservati sotto forma di file e sono accessibili o aggiornabili solo se la carta lo permette. Le dimensioni variano da 2 a 64 K-Byte.
 

FeRAM

Nelle carte di ultima generazione sono state studiate soluzioni alternative basate su banchi di memoria a RAM ferro elettriche, che sostituiscono RAM ed EEPROM. I vantaggi offerti da questa tecnologia sono: notevole velocità di accesso alla memoria (mille volte più alta), capacità di memoria per unità di superficie maggiore e possibilità di variare le porzioni di memoria dedicate ai dati dinamici.
 

Circuito di Sicurezza

Una modalità di elusione delle misure di sicurezza della carta si basa sul funzionamento a valori non nominali di alimentazione e frequenza di clock che consente la lettura dei dati contenuti nella EEPROM. Questo dispositivo controlla le condizioni di funzionamento della carta, e ne abilita l’uso (in particolare della memoria EEPROM) solo se queste corrispondono a specifici valori predefiniti.
 

Porta di I/O

La carta comunica con l’esterno tramite un’uscita seriale ad un solo bit, con velocità che variano secondo il tipo e le necessità delle specifiche applicazioni. Valori usuali sono 9600 bit/secondo, ma per le carte contactless (in cui il tempo di interazione con il lettore è ridotto), sono richieste velocità superiori.
 

Co-processori

Alcune carte sono dotate di co-processori dedicati all’elaborazione di operazioni esponenziali su interi (richiesta da algoritmi crittografici), che risulterebbe troppo lenta se implementata sul processore tradizionale.
 
 

TORNA ALL'INIZIO DEL CAPITOLO ATTUALE (CAP 1: INTRODUZIONE)

VAI AL CAPITOLO 2 : STANDARD E SPECIFICAZIONI

TORNA ALL'INDICE GENERALE DELLE SMART CARD