Studio e sviluppo di un’applicazione dtt-cliente/server per l’autenticazione tramite carta...

18
Studio e sviluppo di un’applicazione DTT client / server per l’autenticazione tramite Carta Nazionale dei Servizi Tesi di Laurea di Tesi di Laurea di Alberto Melani Alberto Melani Relatori: Relatori: Prof. Prof. Vito Cappellini Vito Cappellini Prof. Prof. Alessandro Piva Alessandro Piva Dr. Roberto Caldelli Dr. Roberto Caldelli Ing. Ing. Francesco Picchioni Francesco Picchioni Ing. Ing. Rudy Becarelli Rudy Becarelli 11 Aprile 2008 11 Aprile 2008 Università degli Studi di Firenze Media Integration and Communication Center

description

Studio e sviluppo di un’applicazione dtt-cliente/server per l’autenticazione tramite carta nazionale dei servizi - Alberto Melani - AA 2006-2007 Relatori: Prof. Vito Cappellini, Prof. Alessandro Piva, Dr. Roberto Caldelli, Ing. Francesco Picchioni, Ing. Rudy Becarelli

Transcript of Studio e sviluppo di un’applicazione dtt-cliente/server per l’autenticazione tramite carta...

Page 1: Studio e sviluppo di un’applicazione dtt-cliente/server per l’autenticazione tramite carta nazionale dei servizi

Studio e sviluppo di un’applicazione DTT client / server per l’autenticazione tramite

Carta Nazionale dei ServiziTesi di Laurea diTesi di Laurea di

Alberto Melani Alberto Melani

Relatori:Relatori:

Prof.Prof. Vito CappelliniVito CappelliniProf.Prof. Alessandro PivaAlessandro PivaDr. Roberto CaldelliDr. Roberto CaldelliIng.Ing. Francesco PicchioniFrancesco PicchioniIng.Ing. Rudy BecarelliRudy Becarelli

11 Aprile 200811 Aprile 2008

Università degli Studi di FirenzeMedia Integration and Communication Center

Page 2: Studio e sviluppo di un’applicazione dtt-cliente/server per l’autenticazione tramite carta nazionale dei servizi

Alberto MelaniAlberto MelaniStudio e sviluppo di unStudio e sviluppo di un’’applicazione DTT per lapplicazione DTT per l’’autenticazione tramite CNSautenticazione tramite CNS

Università degli Studi di Firenze Media Integration and Communication Center

2

SommarioSommario

•• ObiettivoObiettivo

•• Il contesto operativo: la TV Digitale TerrestreIl contesto operativo: la TV Digitale Terrestre

•• Le carte elettronicheLe carte elettroniche

•• La Carta Nazionale dei Servizi (CNS)La Carta Nazionale dei Servizi (CNS)

•• Interfacce di comunicazioneInterfacce di comunicazione

•• LL’’applicazione realizzataapplicazione realizzata

•• Conclusioni e sviluppi futuriConclusioni e sviluppi futuri

Page 3: Studio e sviluppo di un’applicazione dtt-cliente/server per l’autenticazione tramite carta nazionale dei servizi

Alberto MelaniAlberto MelaniStudio e sviluppo di unStudio e sviluppo di un’’applicazione DTT per lapplicazione DTT per l’’autenticazione tramite CNSautenticazione tramite CNS

Università degli Studi di Firenze Media Integration and Communication Center

3

ObiettivoObiettivoRealizzazione di unRealizzazione di un’’applicazione interattiva MHP applicazione interattiva MHP

per la TV Digitale Terrestre che implementi un per la TV Digitale Terrestre che implementi un servizio di autenticazione tramite CNSservizio di autenticazione tramite CNS

Segnale Segnale digitale TVdigitale TV

Connessione Connessione PSTNPSTN

BROADCASTER

TV & Set Top Box

Page 4: Studio e sviluppo di un’applicazione dtt-cliente/server per l’autenticazione tramite carta nazionale dei servizi

Alberto MelaniAlberto MelaniStudio e sviluppo di unStudio e sviluppo di un’’applicazione DTT per lapplicazione DTT per l’’autenticazione tramite CNSautenticazione tramite CNS

Università degli Studi di Firenze Media Integration and Communication Center

4

Il contesto: la TV digitale terrestreIl contesto: la TV digitale terrestre

DVBDVB--TT

Specifiche di Specifiche di livello logicolivello logico

Specifiche di Specifiche di livello fisicolivello fisico

MHPMHP

Gestione delle Gestione delle applicazioniapplicazioni

MPEG MPEG -- 22XLETXLET

Page 5: Studio e sviluppo di un’applicazione dtt-cliente/server per l’autenticazione tramite carta nazionale dei servizi

Alberto MelaniAlberto MelaniStudio e sviluppo di unStudio e sviluppo di un’’applicazione DTT per lapplicazione DTT per l’’autenticazione tramite CNSautenticazione tramite CNS

Università degli Studi di Firenze Media Integration and Communication Center

5

Le Smart CardLe Smart Card

•• Telefonia Telefonia •• BancarioBancario•• Trasporti Trasporti •• EE--governmentgovernment•• MilitareMilitare•• Pay per ViewPay per View

ClassificazioneClassificazione

•• Carte a contattoCarte a contatto•• Carte contactlessCarte contactless•• Carte comboCarte combo•• Token UsbToken Usb

•• Carte a Carte a memoria liberamemoria libera•• Carte a Carte a microprocessoremicroprocessore

INPUT OUTPUT

Impieghi comuni: Impieghi comuni:

Page 6: Studio e sviluppo di un’applicazione dtt-cliente/server per l’autenticazione tramite carta nazionale dei servizi

Alberto MelaniAlberto MelaniStudio e sviluppo di unStudio e sviluppo di un’’applicazione DTT per lapplicazione DTT per l’’autenticazione tramite CNSautenticazione tramite CNS

Università degli Studi di Firenze Media Integration and Communication Center

6

La struttura fisica di una smart cardLa struttura fisica di una smart card

•• ROMROM•• EEPROMEEPROM•• Flash EEPROMFlash EEPROM•• RAMRAM•• MICROPROCESSORIMICROPROCESSORI•• Contatti o antenne; Contatti o antenne;

busbus

ROM : 32-96 KBEEPROM : 128 KBRAM : 1 KBMicroprocessore Cisc 8 bit, 400 KIPBus indirizzamento 16 bitCoprocessore crittografico

Il principale standard di riferimento è l’ISO7816. Esso è diviso in 11 sezioni, ognuna delle quali si occupa di un particolare aspetto di una smart card.

Page 7: Studio e sviluppo di un’applicazione dtt-cliente/server per l’autenticazione tramite carta nazionale dei servizi

Alberto MelaniAlberto MelaniStudio e sviluppo di unStudio e sviluppo di un’’applicazione DTT per lapplicazione DTT per l’’autenticazione tramite CNSautenticazione tramite CNS

Università degli Studi di Firenze Media Integration and Communication Center

7

ISO 7816/1 : Contatti esterniISO 7816/1 : Contatti esterni

Alimentazione della smart card (normalmente 5V o 3V)

Linea di reset per l’inizializzazione della carta

Linea utilizzata per fornire il clock ai circuiti interni

Massa

Tensione di programmazione

Linea bidirezionale per lo scambio dei dati tra smart card e CAD

Riservata per usi futuri

Page 8: Studio e sviluppo di un’applicazione dtt-cliente/server per l’autenticazione tramite carta nazionale dei servizi

Alberto MelaniAlberto MelaniStudio e sviluppo di unStudio e sviluppo di un’’applicazione DTT per lapplicazione DTT per l’’autenticazione tramite CNSautenticazione tramite CNS

Università degli Studi di Firenze Media Integration and Communication Center

8

Comunicazione tra smart card e lettoreComunicazione tra smart card e lettoreOgni comunicazione inizia con un segnale di Reset inviato alla sc. Questa risponde con un Answer to Reset (ATR), così formato:

Esempio: 3B 85 00 87 25 01 39 00

byte di sincronismo byte di formato

byte di interfaccia byte storici

byte controllore di integrità

Page 9: Studio e sviluppo di un’applicazione dtt-cliente/server per l’autenticazione tramite carta nazionale dei servizi

Alberto MelaniAlberto MelaniStudio e sviluppo di unStudio e sviluppo di un’’applicazione DTT per lapplicazione DTT per l’’autenticazione tramite CNSautenticazione tramite CNS

Università degli Studi di Firenze Media Integration and Communication Center

9

Comandi e Risposte APDUComandi e Risposte APDU ((Application Protocol Data UnitApplication Protocol Data Unit))

APDU di comando APDU di risposta

C-APDU

R-APDU

CLA INS P1 P2 LC DATI

00 A4 08 0C 02 3F01

Page 10: Studio e sviluppo di un’applicazione dtt-cliente/server per l’autenticazione tramite carta nazionale dei servizi

Alberto MelaniAlberto MelaniStudio e sviluppo di unStudio e sviluppo di un’’applicazione DTT per lapplicazione DTT per l’’autenticazione tramite CNSautenticazione tramite CNS

Università degli Studi di Firenze Media Integration and Communication Center

10

Le specifiche della CNSLe specifiche della CNS• Alimentazione: 5 volt• Protocollo: T=1 (asincrono a blocchi)• Velocità: fino a 115200 kbps • ATR: da registrare a cura dell’emettitore (solo i byte storici sono definiti nelle specifiche)

Strutture dati

La Cns mantiene i dati all’interno di:

• file : sono organizzati in un file system gerarchico; per accedervi necessitano del comando di selezione.

• oggetti (BSO) : contengono dati da mantenere riservati; non necessitano di selezione (vengono referenziati da comandi specifici)

Page 11: Studio e sviluppo di un’applicazione dtt-cliente/server per l’autenticazione tramite carta nazionale dei servizi

Alberto MelaniAlberto MelaniStudio e sviluppo di unStudio e sviluppo di un’’applicazione DTT per lapplicazione DTT per l’’autenticazione tramite CNSautenticazione tramite CNS

Università degli Studi di Firenze Media Integration and Communication Center

11

OrganizzazioneOrganizzazione deldel filefile systemsystem delladella CNSCNS

Page 12: Studio e sviluppo di un’applicazione dtt-cliente/server per l’autenticazione tramite carta nazionale dei servizi

Alberto MelaniAlberto MelaniStudio e sviluppo di unStudio e sviluppo di un’’applicazione DTT per lapplicazione DTT per l’’autenticazione tramite CNSautenticazione tramite CNS

Università degli Studi di Firenze Media Integration and Communication Center

12

Interfacce di comunicazioneInterfacce di comunicazione

•• PC/SCPC/SC

•• OpenCard Framework OpenCard Framework

•• DTT CA APIDTT CA API

•• SATSASATSA

Page 13: Studio e sviluppo di un’applicazione dtt-cliente/server per l’autenticazione tramite carta nazionale dei servizi

Alberto MelaniAlberto MelaniStudio e sviluppo di unStudio e sviluppo di un’’applicazione DTT per lapplicazione DTT per l’’autenticazione tramite CNSautenticazione tramite CNS

Università degli Studi di Firenze Media Integration and Communication Center

13

SATSASATSA (Security and Trusted Service API)(Security and Trusted Service API)

Costituisce un package che fornisce i servizi di sicurezza ai profili Java già implementati su un dispositivo MID (Micro Information Device)

SECURITY ENVIROMENT

Page 14: Studio e sviluppo di un’applicazione dtt-cliente/server per l’autenticazione tramite carta nazionale dei servizi

Alberto MelaniAlberto MelaniStudio e sviluppo di unStudio e sviluppo di un’’applicazione DTT per lapplicazione DTT per l’’autenticazione tramite CNSautenticazione tramite CNS

Università degli Studi di Firenze Media Integration and Communication Center

14

Componenti e applicazioni sviluppateComponenti e applicazioni sviluppate

XLETXLET SERVLETSERVLET

Tale applicazione è contenuta in un web server TomCat

SET-TOP-BOX BROADCASTER

Impiega le classi del package Java Security

Page 15: Studio e sviluppo di un’applicazione dtt-cliente/server per l’autenticazione tramite carta nazionale dei servizi

Alberto MelaniAlberto MelaniStudio e sviluppo di unStudio e sviluppo di un’’applicazione DTT per lapplicazione DTT per l’’autenticazione tramite CNSautenticazione tramite CNS

Università degli Studi di Firenze Media Integration and Communication Center

15

LL’’applicazione: Cupapplicazione: Cup--DTTDTT

• INSERIMENTOINSERIMENTO DELLA CARTACARTA NEL STB

• DIGITAZIONE DEL PINPIN

• NOTIFICA DEI DATI PERSONALIDATI PERSONALI A VIDEO

FASE FASE INIZIALEINIZIALE

Page 16: Studio e sviluppo di un’applicazione dtt-cliente/server per l’autenticazione tramite carta nazionale dei servizi

Alberto MelaniAlberto MelaniStudio e sviluppo di unStudio e sviluppo di un’’applicazione DTT per lapplicazione DTT per l’’autenticazione tramite CNSautenticazione tramite CNS

Università degli Studi di Firenze Media Integration and Communication Center

16

LL’’applicazione: Cupapplicazione: Cup--DTTDTT

X509 Chiave pubblicapubblicaChallengeChallenge cifrato

Chiave privataprivata Stringa di

autenticazioneInvio della

prenotazioneConferma del

server

FASE DI AUTENTICAZIONEFASE DI AUTENTICAZIONE

Page 17: Studio e sviluppo di un’applicazione dtt-cliente/server per l’autenticazione tramite carta nazionale dei servizi

Alberto MelaniAlberto MelaniStudio e sviluppo di unStudio e sviluppo di un’’applicazione DTT per lapplicazione DTT per l’’autenticazione tramite CNSautenticazione tramite CNS

Università degli Studi di Firenze Media Integration and Communication Center

17

Conclusioni e sviluppi futuriConclusioni e sviluppi futuri

•• Studio e realizzazione di un componente Studio e realizzazione di un componente JavaBeanJavaBean per lper l’’autenticazione tramite CNSautenticazione tramite CNS

•• Integrazione del componente allIntegrazione del componente all’’interno di interno di unun’’applicazione MHP di servizio (CUPapplicazione MHP di servizio (CUP--DTT) DTT)

•• Applicazione dei risultati ottenuti alla Carta Applicazione dei risultati ottenuti alla Carta dd’’IdentitIdentitàà Elettronica (CIE)Elettronica (CIE)

•• Utilizzazione del processo di autenticazione per Utilizzazione del processo di autenticazione per altre tipologie di servizio (pagamenti, altre tipologie di servizio (pagamenti, consultazione dati sensibili).consultazione dati sensibili).

Page 18: Studio e sviluppo di un’applicazione dtt-cliente/server per l’autenticazione tramite carta nazionale dei servizi

Studio e sviluppo di un’applicazione DTT client / server per l’autenticazione tramite

Carta Nazionale dei ServiziTesi di Laurea diTesi di Laurea di

Alberto Melani Alberto Melani

Relatori:Relatori:

Prof. Vito CappelliniProf. Vito CappelliniProf. Alessandro PivaProf. Alessandro PivaDr. Roberto CaldelliDr. Roberto CaldelliIng. Francesco PicchioniIng. Francesco PicchioniIng. Rudy BecarelliIng. Rudy Becarelli

11 Aprile 200811 Aprile 2008

Università degli Studi di FirenzeMedia Integration and Communication Center