Sei sulla pagina 1di 21

Progetto integrativo di Crittografia : Sicurezza in DVB-T

Universit degli studi di Milano Dipartimento di tecnologie per l'informazione.

Progetto realizzato da : Falcone Fabio matricola 723332 Docende del corso : Stelvio Cimato

Introduzione.
Oggi la sicurezza di qualsiasi sistema di comunicazione diventata una esigenza importante per garantire servizi e funzionalit promesse . Le persone che operano nel settore della sicurezza cercano costantemente soluzioni per prevenire, dove questo possibile, arginare e rimediare ai danni degli attacchi conosciuti e immaginare le nuove minacce che possono un giorno presentarsi allorizzonte.In questo documento si descrivono i meccanismi di sicurezza finora previsti per la televisione digitale terrestre (DVB-T).

Cos' la televisione digitale terrestre ?


La televisione digitale terrestre la televisione terrestre rappresentata in forma digitale . Da un punto di vista tecnico infatti, il segnale televisivo un' informazione elettronica e, in quanto tale, pu essere rappresentato in forma analogica oppure in forma digitale. La televisione digitale terrestre sembra esser ormai lulteriore passo obbligatorio verso la completa digitalizzazione dellinformazione. La convergenza di informatica e telecomunicazioni consente di trasformare lapparecchio televisivo in una piattaforma per lo sviluppo dei servizi interattivi, che si aggiungono cos alla funzione tradizionale di diffusione circolare dei segnali. All'origine delle attivit europee in questo campo il progetto Digital Video Broadcasting (DVB) promosso dalla Commissione europea allo scopo di definire standard comuni. DVB stato sviluppato nel 1993 in una grande famiglia di livelli che abbracciano quasi ogni aspetto di radiodiffusione digitale. Questi sono stati pubblicati e adottati da organismi internazionali quali ETSI European Telecommunications Standards Institute e CENELEC. Numerosi servizi DVB type sono stati introdotti da allora in Europa :DVB-S (Satellite), DVB-T (Terrestrial), DVB-C (Cable). Il progetto, cui hanno partecipato 170 societ coinvolte nei diversi settori dell'industria televisiva, ha raggiunto l'obiettivo di stabilire un unico standard condiviso su scala europea per le trasmissioni televisive digitali via satellite (DVB-S), via cavo (DVB-C) e via terra (DVB-T).Questi standard sono stati ora adottati anche dal Giappone e da altri paesi non europei.

I vantaggi dello standard digitale si riassumono in tre principali ordini di fattori:


Il potenziamento del servizio televisivo in termini di quantit e di qualit. A parit di frequenze utilizzate per le reti televisive analogiche, il numero dei programmi digitali irradiabili potrebbe quadruplicarsi o quintuplicarsi, utilizzando la codifica di sorgente MPEG 2. Vengono infatti poste le condizioni per un uso pi efficiente dello spettro hertziano, con la liberazione di una parte delle frequenze da destinare, secondo le scelte, a ulteriori

canali televisivi terrestri, ad altri servizi diffusivi (data broadcasting) o di telecomunicazione (servizi interattivi mobili) o da ripartire tra le diverse funzioni. Lofferta di una serie di servizi aggiuntivi di tipo interattivo accessibili tramite il televisore. Il decoder digitale (STB set-top box) da applicare al normale televisore, o il televisore digitale integrato nelle versioni pi evolute, ha capacit di memoria e di elaborazione tali da trattare e immagazzinare le informazioni: equipaggiato con piattaforma multimediale MHP. Questa piattaforma permette lesecuzione di applicazioni web e interattive.Lutente le pu acquisire semplicemente collegando l'apparecchio alla lineatelefonica domestica. Ci significa che anche nelle case prive di personal computer sar possibile accedere all'insieme dei servizi associati a Internet. La progressiva sostituzione degli attuali mezzi analogici di produzione, trasmissione e ricezione televisiva con una nuova generazione di mezzi digitali. lecito supporre che nell'arco dei prossimi 10-15 anni, nella maggior parte dei paesi europei, le reti di trasmissione televisiva, via terra, via cavo o via satellite, saranno completamente digitali.

2. MPEG-2 e DVB-SI.
Lo standard MPEG-2 declinazione della famiglia di standard del gruppo MPEG (Moving Picture Experts Group), approvato definitivamente nel novembre 1994 definisce i criteri della codifica delle informazioni (audio/video e dati), della loro sincronizzazione, dei formati di trasporto dei bit streams,sintassi esemantica delle tabelle ad essi associate. Le sue caratteristiche lo hanno reso, in breve tempo, lo standard per la trasmissione su grandi network,l'archiviazione e la memorizzazione di flussi multimediali. MPEG-2 in grado di operare con differenti bit-rate e canali di trasmissione, formati di immagazzinamento, sistemi a ritardo costante o variabile, compensando la complessit con una grande flessibilit. In MPEG-2, infatti, non vengono specificati i metodi di codifica da utilizzare,i processi di codifica,i dettagli del codificatore o del decodificatore, bens solo i formati di rappresentazione dei dati allingresso del decodificatore, le regole ed i processi di decodifica.Questa scelta stata dettata dal fatto che differenti codificatori possono avere complessit diverse in base alle applicazioni a cui sono destinati, con un conseguente, continuo, miglioramento dei sistemi di codifica. Per riassumere, le motivazioni che hanno portato questa codifica audio e video ad essere scelta come base per i sistemi di broadcasting e storaging sono: l'efficienza del codificatore, l'alta scalabilit e la definizione di flussi di bits multiprogramma. Pi in dettaglio: Codec molto efficiente - Un segnale TV PAL pu essere codificato con un bit-rate compresso di 4-5 Mbit/s. Alta scalabilit, definita da una matrice di livelli e profili - Risoluzioni da 360x288 fino a 1920x1152 (HDTV wide screen) con vari gradi di libert nella scelta della tecnica di codifica (in Europa le trasmissioni TV sono nella fascia MP@ML (Main Profile at Main Level) che corrisponde allutilizzo di frames IPB, a un campionamento 4:2:0 e ad una risoluzione di 720x576 a 25 Hz). Creazione di flussi multiprogramma MPEG-2, denominati Transport Streams.

2.1 Codifica Audio.


Le tecniche di compressione audio sono basate principalmente sull'eliminazione di quella parte del segnale che non viene percepita dall'orecchio umano. In questo modo, ad esempio, un bit-rate di 1,4 Mbit/s, tipico di due canali audio in qualit CD, pu essere ridotto a 200 Kbps senza pregiudicarne la qualit. La selezione di quanto percepito dallorecchio umano viene applicata alle frequenze comprese tra 0Hz e 22 Khz, opportunamente suddivise in 32 sottobande. La compressione audio ottenuta con lo standard MPEG-2 permette, ad esempio, di inviare fino a cinque canali audio per la riproduzione di un suono avvolgente e fino a sette canali monofonici per le applicazioni multi-lingua.

2.2 Codifica Video.


Le specifiche MPEG-2 Video partono dal segnale video digitale secondo il formato che stato stabilito con la raccomandazione ITU-R601: a seconda dell'applicazione, il formato pu essere 4:2:2 o 4:2:0. Il data rate necessario per la trasmissione di tali formati di 270 Mbit/s per il 4:2:2 e di 162 Mbit/s per il 4:2:0. Un data rate cos elevato ha necessariamente portato alla ricerca di un sistema di compressione tale da ridurre il bit-rate. Come per la compressione audio, la compressione video si basa sulle caratteristiche dell'occhio umano che,per sua natura, incapace di percepire le variazioni ad alta frequenza dei segnali a colori. La compressione video cerca perci di ridurre al minimo la presenza nel segnale di ridondanza spaziale, statistica e temporale. La riduzione della ridondanza spaziale e statistica avviene con lutilizzo congiunto di: trasformata discreta coseno (DCT), matrice di quantizzazione, zig-zag scan, codifica RLC e codifica di Huffman (VLC).Il risultato di questo processo sono le immagini Intra-frames (I-frames), compresse tramite predizione dei valori dei pixel a partire dai valori di quelli adiacenti. La minimizzazione, invece, della ridondanza temporale, avviene attraverso metodi di compressione e compensazione del movimento che riescono a predire il valore di un insieme di pixel di un determinato frame, a partire dalle informazioni relative ai frames adiacenti. Il risultato ottenuto dalla minimizzazione dei tre tipi di ridondanza, sono le immagini Predicted-frames (P-frames) e Bidirectional-frames (B-frames).

2.3 Elementary Stream (ES).


Il risultato della codifica audio e video un pacchetto contenente, oltre al segnale codificato, tutte le informazioni riguardanti il processo di codifica utilizzato.Tale pacchetto, che prende il nome di Elementary Stream (ES), ha quindi la funzione di fornire i dati strutturati sempre secondo la medesima sintassi, accompagnati dalle informazioni necessarie al decodificatore per ricostruire i frame in maniera corretta.LElementary Stream quindi un flusso di bit contenente le informazioni destinate al decoder audio o video per la ricostruzione fedele del segnale e costituisce loutput di ciascuno dei due blocchi di codifica. Non contiene per le informazioni relative n alla temporizzazione, n al sincronismo, non consentendo cos di fatto una ricostruzione correttamente temporizzata. Per questo motivo lMPEG-2 Systems definisce, a partire dallElementary Stream, nuove strutture pi adatte alla trasmissione e allarchiviazione.

2.4 Packetized Elementary Stream (PES).


Il primo passo suddividere la struttura continua dellES in pacchetti che prendono il nome di Packetized Elementary Stream (PES), composti da una intestazione, la PES header, seguita da un campo di dati, il payload. La dimensione di questi pacchetti variabile, dipendente dallapplicazione. Il campo di dati formato da un numero variabile di bytes provenienti da un solo ES e collocato nello stesso ordine che aveva nella sequenza originale. Nel PES header incluso un campo chiamato Stream_id, necessario per identificare lES a cui appartengono i dati contenuti nel PES packet. Lo Stream_id un numero rappresentato in 16 bit e viene associato ad ogni ES in modo univoco allinterno del programma di cui fa parte lES. sufficiente perci analizzare lintestazione di un PES packet per scegliere tutti e soli quelli destinati alla ricostruzione di uno stesso ES. Lo Stream_id acquisisce valori differenti a seconda del tipo di ES a cui si riferisce (dati,audio,video). Lintestazione di un PES packet ha una lunghezza variabile e contiene le informazioni sulla temporizzazione e su altre caratteristiche degli ES che gli ES stessi non forniscono.

2.5 Transport (TS) e Program (PS) Streams.


Per potere generare programmi, MPEG-2 Systems definisce come si debbano combinare uno o pi ES video, audio e dati, in uno o pi stream adatti alla memorizzazione e alla trasmissione. Lo standard stabilisce pertanto un metodo di multiplexing e la sintassi dello stream risultante. Tale metodo chiamato multiplexing per pacchetti: i pacchetti PES provenienti da differenti elementary streams video, audio o dati, sono multiplexati luno dietro laltro in un solo flusso (multiplexed stream).

Questo tipo di multiplexing fa in modo che gli ES possano essere trasmessi sia ad un bit-rate costante (CBR) sia ad un bit-rate variabile (VBR) semplicemente variando appropriatamente la lunghezza o la frequenza dei pacchetti. Al termine del processo di multiplexing si ottiene uno stream continuo, senza restrizioni di bit-rate, variabile o costante, ma sempre uguale o superiore al totale dei bit-rate degli ES che lo costituiscono. MPEG-2 Systems definisce due stream differenti come risultato del processo di multiplexing: il Transport Stream (TS) e il Program Stream (PS), ciascuno ottimizzato per un preciso contesto. Il Transport Stream pu contenere uno o pi programmi TV, ognuno con la propria base temporale indipendente. Il risultato il multiplexing degli ES che costituiscono i differenti programmi attraverso lutilizzo di pacchetti (TS packet) a lunghezza fissa di 188 byte. La lunghezza di questi pacchetti infatti adatta ai processi basati su hardware e permette inoltre di ottenere la solidit necessaria per la trasmissione di video e audio compresso attraverso canali disturbati e soggetti all'introduzione di errori. Attualmente il TS progettato per supportare molte funzionalit come il multiplexing asincrono di programmi, un accesso rapido al programma desiderato quando si cambia canale, una corretta sincronizzazione degli ES durante la riproduzione e il controllo dei buffers del decodificatore durante linizializzazione e la riproduzione, sia dei programmi con bit-rate costante che di quelli con bit-rate variabile. Poich le strutture del PS e del TS non seguono strettamente un modello a livelli, ragionevolmente possibile convertire luno nellaltro grazie allutilizzo comune dei pacchetti PES. Non tutti i campi necessari in un PS sono per contenuti in un TS e viceversa, pertanto quelli mancanti devono essere derivati durante il processo di conversione.

2.6 Multiplexing.
Come visto, con il multiplexing vengono combinati e allineati tutti i pacchetti TS, compresi quelli contenenti dati privati o specifici al programma, ottenendo come risultato un unico flusso TS. Lunica restrizione definita dallo standard per lordine di ricombinazione che sia preservato lordine sequenziale tra pacchetti di uno stesso ES. Il bit-rate di un TS pu essere variabile o costante ed ha un valore minimo pari alla somma dei bit-rate di tutti gli ES contribuenti. A loro volta, gli ES possono avere un bit-rate variabile, anche se il TS risultante ha un bit-rate costante. Questa caratteristica permette di realizzare quello che definito multiplexing statistico, ovvero la possibilit, da parte degli ES che in un determinato istante non richiedono un bit-rate elevato, di cedere la propria porzione di banda a quelli a pi alto bit-rate. Questo espediente porta allinserimento di pacchetti vuoti (null packets) per mantenere costante il bit-rate nel caso in cui si debbano comprimere immagini non particolarmente complicate o se il bit-rate richiesto inferiore a quello del TS. Un Transport Stream MPEG-2 richiede un canale di trasmissione con una capacit di 38 Mbit/s utili e conterr dai quattro ai sette programmi, ciascuno composto da un video, due o tre canali audio e talvolta altri dati in formato di sottotitoli, teletext o altro. Ogni Elementary Stream video avr normalmente un bit-rate tra 4 e 5 Mbit/s, ogni ES audio tra i 128 e 256 Kbps. Non esistendo apparecchi con 20-30 ingressi audio e video che possano generare Transport Stream con pi programmi, si ricorre di solito alla tecnica del re-multiplexing. Con questa procedura possibile suddividere in due stadi il multiplexing, cos da generare un Transport Stream contenente pi programmi. Le specifiche del MPEG-2 Systems terminano nel Transport Stream. Ci comporta che da questo punto ogni TS viene adattato alla rete e al canale di trasmissione su cui viene trasmesso. Ad esempio, nel caso di network a diffusione broadcast, lo standard DVB in Europa e il ASTC in USA a prendersi carico del TS.

2.7 Program Specific Information (PSI).


Come visto in precedenza, il multiplex di trasporto MPEG-2 pu veicolare pi di un programma, e ciascun programma contiene uno o pi PES. Dato un TS, tutti i TS packet che appartengono ad un ES hanno uno stesso PID, mentre i pacchetti di un altro ES avranno un PID differente. Il demultiplexer pu selezionare un determinato ES semplicemente accettando soltanto i pacchetti col PID corrispondente e pu selezionare tutto un programma se conosce quali sono i PID del video, audio e dati che lo compongono. Affinch il decodificatore sappia quali PID formano ogni programma e riesca a selezionarli correttamente necessario linvio di informazioni aggiuntive che consentano questa precisa identificazione. Queste informazioni

costituiscono la PSI o Program Specific Information, un insieme di dati strutturati in quattro tabelle: Program Association Table (PAT): stabilisce la corrispondenza tra un programma e il PID dei pacchetti TS che trasportano la definizione di tale programma (PMT). Ogni stream TS deve contenere una PAT valida e completa, e mai criptata. Program Map Table (PMT): stabilisce una mappa di relazioni tra il programma e gli elementi (audio video, dati) che lo compongono. Network Information Table (NIT): i contenuti della NIT sono privati, e non gestiti da MPEG-2 che li lascia a disposizione dell'utente. In generale conterranno le mappe dei servizi messe in relazione agli PID dei TS, frequenze di canale, numeri di transponder del satellite, caratteristiche di modulazione ecc. Conditional Acces Table (CAT): stabilisce lassociazione fra uno o pi sistemi daccesso condizionato, i relativi EMM stream e qualsiasi altro parametro speciale associato ad essi.

Le tabelle vengono trasmesse tramite sezioni MPEG 2 private allinterno di pacchetti TS aventi un PID particolare e fissato, ciclicamente e con una frequenza di ripetizione piuttosto elevata (20 50 volte al secondo), per consentire al decodificatore di accedere rapidamente al programma richiesto.

2.8 DVB-Service Information (DVB-SI).


Per consentire ad un utente di navigare tra canali e altri servizi, si reso necessario aggiungere funzionalit e informazioni a quanto fornito dalle tabelle PSI. Il gruppo di progetto DVB ha perci definito un nuovo insieme di tabelle informative come estensione alle tabelle PSI di MPEG-2, che costituiscono lo standard DVB-Service Information (DVBSI). A differenza delle tabelle PSI, che hanno visibilit solo sul proprio Transport Stream, le tabelle DVB-SI possono fornire informazioni anche sui servizi contenuti in altri TS, o anche di quelli di altri broadcaster.

3 Set TopBox.
Il Set Top Box (STB) l'apparato domestico di ricezione a cui affidato il compito di convertire il segnale digitale in un formato compatibile con le televisioni analogiche comunemente utilizzate : la sua configurazione hardware ed il software installato determinano i servizi di cui un telespettatore pu usufruire ed anche con quale grado di soddisfazione. In altre parole, a parit di standard di trasmissione digitale, le performance del decoder risultano decisive per il successo o meno di un qualunque servizio. Non pi distintiva una buona resa audio e video, ormai requisito minimo. Lo diventano, invece, sia i servizi disponibili, che le performance del STB, come ad esempio il tempo impiegato per sintonizzarsi su un diverso canale, o per fornire informazioni su un evento. Alcuni dei paesi che hanno aderito allo standard DVB hanno pubblicato documenti di specifiche tecniche riguardanti il ricevitore in cui, partendo dai requisiti minimi richiesti dallo standard, si definiscono I profili adatti allo specifico mercato nazionale. In Italia, un consorzio di aziende formato dai tre principali broadcasters italiani, RAI, Mediaset e TV Internazionale (Telecom) e dalla Fondazione Ugo Bordoni (incaricata di coordinare le sperimentazioni relative al T-Government) ha fondato DGTVi, con lo scopo di indirizzare il processo di sviluppo della TV digitale.

3.1 Architettura del Set Top Box.


Il STB un apparato esterno ed indipendente rispetto al televisore, al quale si collega per mezzo di cavi di connessione SCART. L'alternativa al STB esterno, integrarne le funzionalit in televisori di nuova concezione, nel qual caso si parla in modo pi appropriato di Integrated Receiver Decoder (IRD). Le differenze tra le due specifiche non sono sostanziali e quelle evidenziate riguardano principalmente l'obbligatoriet o meno di qualche requisito. Il Set Top Box oggetto della presente analisi, dotato di piattaforma DVB MHP per l'area applicativa, di un canale di ritorno per l'interattivit avanzata, di un sistema modulare di controllo dell'accesso ai servizi (Conditional Access System) e di un lettore di Smart Card per generici servizi interattivi. La sua architettura generale, vista ad un livello alto di astrazione, evidenzia i principali blocchi funzionali e le interfacce . Nello schema, indicata la suddivisione delle architetture hardware e software che saranno sviluppate successivamente.

Software Applicativo ( EPG, Teletext avanzato, ecc. ) API Software Residenti ( Sistema Operativo, Navigatore SI, Java,browser XML ed HTML, ecc. ) Hardware e Firmware (microprocessore, memorie RAM e Flash, bootloader, componenti di codifica, decodifica e interfacce esterne ) Architettura Set Top Box Al livello pi basso dello stack troviamo la composizione hardware e firmware del STB. Questo livello comprende il Microprocessore, i differenti tipi di memoria, il bootloader, gli apparati di decodifica e le interfacce con l'esterno, sia in input che in output. Al livello superiore si colloca il software residente, come quello del Sistema Operativo, solitamente proprietario, i software di servizio, come ad esempio quello di gestione della navigazione, ed il middleware. Il soprastante strato di interfacciamento, l'Application Programming Interface (API), fornisce infine al livello Applicativo la capacit di interagire con il software residente e con le risorse del sistema. Architettura Hardware Architettura Software

3.2 Architettura Hardware.


Le principali funzionalit richieste ad un STB, svolte sotto il controllo del microprocessore, sono: 1) convertire il segnale ricevuto attraverso l'antenna in un formato MPEG-2 transport bit-stream, 2) se necessario, verificare i diritti dell'utente con il sistema di Accesso Condizionato e decodificare il flusso di bits dopo aver decrittografato le chiavi di protezione, 3) estrarre dal transport bit-stream i flussi audio, video e dati, 4) ricodificarli per renderli compatibili con il sistema analogico in uso.

In base alla descrizione funzionale, possiamo distinguere nell'architettura hardware di un STB, i seguenti principali componenti: il Front-end, composto da un Sintonizzatore, un Convertitore Analogico/Digitale, un Demodulatore, un modulo per il controllo dell'errore (FEC) il Demultiplexer il Descrambler, opzionale, interagente col Demultiplexer i Decodificatori per Video, Audio e Dati l'Unit di controllo, composta da un Microprocessore, un Bootloader, le memorie ROM, RAM e Flash un Processore Grafico, opzionale, con memoria RAM Video i Codificatori Audio e Video per l'output dei segnali le interfacce standard, come ad esempio SCART e PAL le interfacce opzionali, come la Common Interface per l'accesso condizionato, il lettore di Smart Card, il Modem o un'interfaccia Ethernet.

3.3 Architettura Software.


L'architettura software di un Set Top Box pu essere rappresentata con uno stack a livelli, i cui elementi principali sono: 1) i drivers dei dispositivi hardware, 2) il software di sistema operativo, 3) le applicazioni residenti ed il middleware di supporto alle applicazioni, 4) le applicazioni esterne Tutti i livelli pi bassi sono concettualmente accorpabili in un unico blocco, rappresentante il software residente del sistema al momento del set-up del STB, mentre il livello superiore rappresenta l'insieme delle applicazioni esterne caricate su di esso successivamente al set-up.

Applicazioni di servizio (scaricabili e aggiornabili) Livello API del Middleware Applicazioni residenti

Middleware

Livello API del Sistema Operativo Sistema Operativo (Realtime) Livello di astrazione hardware Drivers dei dispositivi hardware

Architettura Software del Set Top Box

4 Multimedia Home Platform. 4.1 Profili MHP.


I profili definiti da MHP definiscono in crescendo le funzionalit utilizzabili dalle applicazioni ; questa suddivisione fa s che chi sviluppa soluzioni software possa indicare esattamente a quale classe di STB siano rivolte. previsto che il numero di profili oggi esistenti possano aumentare e che degli stessi possano essere rilasciate versioni superiori. Il criterio di fondo, da tenere ben presente nelle valutazioni di un STB, che ogni profilo superiore, od ogni suo nuovo livello dello s, rimangano compatibili con i precedenti, mantenendone le funzionalit originarie.

Aree Applicative e Livelli dei Profili MHP Le caratteristiche di interattivit del primo profilo definito, l'Enhanced Broadcast [28], risultano limitate alle applicazioni residenti ed a quelle ricevute secondo le modalit di trasporto broadcast, con una comunicazione, quindi, di tipo unidirezionale. L'interattivit perci solo locale e si concretizza prevalentemente attraverso l'uso di un telecomando (o altro apparato analogo). L'utente pu cos attivare programmi accessori, come l'EPG, il Teletext avanzato, servizi di news e giochi, navigare sullo schermo TV ed interrogarli, ottenendo risposte in forma di immagini, video ed informazioni. I protocolli di trasporto disponibili per la trasmissione broadcast, sono le Sezioni MPEG-2 ed il DSM-CC User-to-User Object Carousel, mentre considerato opzionale lo stack IP Multicast. I protocolli di trasporto saranno descritti pi avanti, in questo stesso capitolo. Poich la prima realizzazione di MHP aveva tra i suoi principali obiettivi anche quello di fornire un supporto alle applicazioni software non native, gi nel primo profilo fu prevista la possibilit di impiego di specifici plug-in. Il profilo Interactive Broadcast mantiene inalterato l'insieme dei protocolli di trasporto broadcast del profilo precedente, ma viene consigliata l'adozione del supporto Java allo stack IP Multicast. La differenza sostanziale riguarda invece l'interattivit, che questa volta prevede un canale di ritorno bidirezionale per la comunicazione tra l'utente ed il broadcaster. Tra i protocolli da utilizzare troviamo HTTP, lo stack TCP/IP ed un ibrido tra la trasmissione broadcast ed il canale interattivo, DSM-CC e HTTP. Viene aggiunto, anche se in forma opzionale, un insieme di protocolli della famiglia DSM-CC, cos come vengono inseriti anche i packages delle API Java necessari all'impiego del canale di ritorno ed alla sua sicurezza. Per quanto riguarda le applicazioni, viene introdotto un nuovo standard, DVB-HTML, con l'obiettivo di aumentare l'affinit tra il mondo Web e la TV interattiva, in grado di realizzare un'interfaccia ipertestuale paragonabile ad un super teletext. In tal senso viene specificato un supporto Java in grado di inserire Xlets in pagine DVB-HTML di applicazioni DVB-HTML, valido per tutti e tre i profili. Il profilo Internet Access fornisce un'interattivit completa con il mondo Internet grazie alla definizione delle interfacce dalla piattaforma DVB-Java alle applicazioni client Internet. Nei protocolli broadcast diventa

mandataria la presenza dello stack IP Multicast, cos come, sul lato del STB, quella dei packages di API Java corrispondenti, che si sommano a quelli gi presenti per la gestione della comunicazione sul canale di ritorno e la sua sicurezza. Viene inoltre inserito un supporto Java e DVB HTML specifico per l'accesso a Internet, che permette ora di accedere a diversi servizi: navigare con un browser Web, inviare posta elettronica, partecipare a newsgroup tramite Usenet. Il lettore di smart card diventa, con questo profilo e la versione 1.1.2 di MHP, non ancora rilasciata, ma comunemente accettata, uno strumento adatto a lanciare i primi servizi di T-Government ed i futuri servizi bancari e di commercio elettronico, sfruttando appieno l'esperienza maturata nel campo della sicurezza su Internet. Non solo, l'uso del canale internet pu offrire la possibilit di scaricare nuove applicazioni, giochi, informazioni, non solo dal broadcaster televisivo, ma anche da un Interactive Service Provider (ISP), non esattamente un Internet Service Provider, anche se i ruoli sono destinati a coincidere. L'ISP cui si fa riferimento in questo contesto l'interfaccia verso il broadcaster ed uno dei nuovi attori in gioco in questo contesto.

4.2 Architettura.
L'architettura MHP rappresentabile con uno stack a tre livelli, composto dalle risorse, dal software di sistema e dalle applicazioni . Riprendendo il discorso sull'architettura di un generico Set Top Box ricordiamo, tra le risorse, gli apparati per il processo di stream MPEG-2, i devices di I/O, la CPU e le memorie.

Architettura MHP Il software di sistema fornisce una visione astratta delle risorse alle applicazioni, isolandole dall'hardware e garantendone in questo modo la portabilit. Sempre nel software di sistema troviamo la Java Virtual Machine (JVM), il cui compito primario la traduzione delle istruzioni dal formato Java bytecode al codice macchina. I bytecodes possono anche non risiedere in modo permanente nel STB ma, grazie alle loro ridotte dimensioni, possono essere scaricati quando necessario e rimossi al termine dell'esecuzione dal meccanismo di garbage collection della JVM. La gestione del ciclo di vita di tutte le applicazioni MHP, non solo quelle DVB-J, demandata all'Application Manager, sulla base delle informazioni di segnalazione contenute nei Transport Streams MPEG-2. L'Application Manager definito anche Navigatore.

4.3 Protocolli di trasporto e comunicazione.


Poich insieme ai normali servizi audio/video possono essere inviate dal fornitore dei servizi anche altre informazioni, di qualunque natura, necessario che vi siano dei protocolli di trasporto e comunicazione che lo consentano e con la massima sicurezza possibile. Per lo stesso principio, laddove venga realizzata un'interazione tra l'utente ed il provider, devono essere forniti protocolli che realizzino la comunicazione indipendentemente dalla natura del mezzo trasmissivo con cui viene realizzata. I protocolli utilizzati dalla piattaforma MHP sono stati definiti sulla base dei meccanismi e protocolli standard ISO MPEG2, opportunamente integrati da API DVB. Grazie al sistema di incapsulamento di pacchetti di protocolli in apposite strutture dati, noto come Multiprotocol Encapsulation (MPE), sono in grado di fornire supporto ad Internet Protocol (IP), sia sul canale di interazione che broadcast. Le configurazioni che la rete di comunicazione pu assumere sono due: un canale di downstream dal service provider allutente finale, o la combinazione di un canale di downstream con un canale di ritorno. Le due configurazioni corrispondono ad un sistema di soli servizi broadcast ad interattivit locale e ad un sistema di servizi broadcast interattivi che si appoggiano ad un canale di ritorno per comunicare con il fornitore del servizio.

5 Requisiti di sicurezza. 5.1 Introduzione.


Per stabile in modo efficace le esigenze di sicurezza di un sistema e per scegliere le politiche da adottare si deve adottare un modo sistematico per definire i requisiti di sicurezza e per descrivere gli approcci utili a garantirne la soddisfazione.

Un approccio consiste nel considerare tre aspetti della sicurezza delle informazioni :
Attacco alla sicurezza : ogni azione che compromette le informazioni di un sistema. Meccanismo di sicurezza : un meccanismo progettato per rilevare, prevenire o riparare i danni prodotti da un attacco. Servizio di sicurezza : un servizio che migliora la sicurezza del trasferimento dei dati. I servizi intendono proteggere il sistema contro gli attacchi alla sicurezza sfruttando uno o pi meccanismi di sicurezza.

5.2 Larchitettura di sicurezza OSI.


Il documento ITU-T Recommendation X .800 Security Architecture for OSI definisce in modo sistematico questo approccio. Larchitettura di sicurezza OSI utile per organizzare le operazioni necessarie per garantire la sicurezza; inoltre di vasta applicabilit essendo il modello OSI utilizzato universalmente.

5.2.1 Servizi di sicurezza.


X .800 definisce un servizio di sicurezza come un servizio che garantisce una adeguata sicurezza del sistema o del trasferimento dei dati. I servizi di sicurezza implementano le politiche di sicurezza e sono implementati dai meccanismi di sicurezza. X .800 suddivide questi servizi in differenti categorie.

5.2.2 Autenticazione.
Il servizio di autenticazione cerca di assicurare che una comunicazione sia autentica : necessario che il destinatario sia certo della sorgente del messaggio. Innanzitutto il servizio garantisce che le due entit siano autentiche; in secondo luogo il servizio deve garantire che il canale di comunicazione non abbia interferenze, ovvero che non sia possibile per un terzo individuo fingersi una delle due parti legittime. Due servizi specifici di autenticazione sono definiti. Autenticazione dellentit peer : garantisce lidentit di unentit. Autenticazione dei dati dorigine : garantisce lorigine di ununit di dati.

5.2.3 Controllo degli accessi.


Il controllo degli accessi la capacit di limitare e controllare gli accessi a una sistema di host e alle applicazioni che interagiscono con il sistema. Per ottenere ci, ciascuna entit che tenta lingresso al sistema deve autenticarsi, in modo da consentire anche la personalizzazione dei diritti daccesso.

5.2.4 Segretezza dei dati.


Il servizio di segretezza consta nella protezione dei dati trasmessi contro attacchi passivi, cio attacchi in cui lentit malintenzionata rimane allascolto della comunicazione,

estraendone i dati a cui interessata. Laltro aspetto delle segretezza oppure confidenzialit la protezione del flusso dati dallanalisi. In pratica un estraneo non deve essere in grado di osservare lorigine e la destinazione, la frequenza, la lunghezza dei messaggi o altre caratteristiche del traffico che si svolge sul canale di comunicazione protetto. Queste informazioni potrebbe aiutare il crittoanalista che tenta di attaccare il sistema.

5.2.5 Integrit dei dati.


Lintegrit pu essere applicata ad un flusso oppure ad un singolo messaggio. Un servizio di integrit a connessione, quindi su un flusso di messaggi, deve garantire che i messaggi vengano ricevuti cos come sono stati inviati, senza duplicazioni, inserimenti, modifiche, variazioni dordine o eliminazioni. Un servizio di integrit senza connessione, su un singolo messaggio, fornisce unicamente la protezione contro le modifiche sul messaggio stesso.

5.2.6 Non ripudio.


Il servizio del non ripudio impedisce che il mittente o il destinatario possano negare di aver trasmesso o ricevuto un messaggio.

5.2.7 Affidabilit.
Il servizio di affidabilit garantisce la robustezza ai guasti del sistema. Ogni possibile guasto del sistema deve essere seguito dalladeguata riparazione, in modo del tutto trasparente per lutente. Un esempio possibile sono eventuali crashes del sistema.

5.2.8 Disponibilit.
La disponibilit la propriet di un sistema o di una risorsa di essere accessibile ed utilizzabile su richiesta di entit autorizzate in base alle specifiche prestazionali (always on). Diversi attacchi sono capaci di disabilitare un sistema, essenzialmente attacchi di tipo DOS Denial Of Service .

5.3 Requisiti per la Televisione Digitale Terrestre.


I requisiti di sicurezza definiscono le garanzie richieste al sistema per assicurare le funzionalit corrette. possibile elencare i requisiti di sicurezza della televisione digitale terrestre attribuendoli alle diverse entit concorrenti al sistema : utente, broadcaster e service provider.

5.4 Utente.
Lutente della televisione digitale terrestre rappresenta il consumatore finale a cui indirizzato il servizio. Per cui lutente essenzialmente interessato ad usufruire del servizio per cui abilitato. Il servizio deve essere dunque affidabile e costantemente disponibile, in modo che i problemi possibili in trasmissione risultino trasparenti allutente. Si deve garantire disponibilit e accesso alle risorse che lutente abilitato ad usare. Nel caso del servizio Pay Per View, la disponibilit deve essere quasi immediata. Il cliente desidera garanzie per la protezione dei dati personali che il sistema gestisce. La preoccupazione centrale la protezione della privacy. necessario assicurare confidenzialit dei dati sensibili dellutente (come PIN, numero di carta di credito) che vengono salvati in MHP oppure inviati. La sicurezza dei dati nel terminale MHP deve essere garantita : non bisogna permettere ad una applicazione della piattaforma di avere accesso non disciplinato ai dati di utente

immagazzinati. Laccesso ai dati personali deve essere impedito anche ad un qualsiasi dispositivo esterno.

5.5 Broadcaster.
Il broadcaster loperatore di rete che si occupa del trasporto dellinformazione tra utente e service provider. Il broadcaster responsabile delloperativit del canale, per cui il compito principale consta nel mantenere linformazione trasportata sicura. Il flusso dati inviato deve essere crittografato, soprattutto se via etere. Infatti il segnale radio pu essere ricevuto da tutti, anche da utenti non autorizzati; per questa ragione deve essere difficile recuperare il flusso utile da quello ricevuto. Per quanto riguarda il canale di ritorno, la rete IP e la rete di trasporto su cui si poggia devono essere sicure. Il canale gestito dal broadcaster deve essere affidabile e disponibile in modo continuo, per cui necessario evitare di rendersi vulnerabili ad attacchi mirati a renderlo inutilizzabile. necessario evitare qualsiasi uso improprio del canale da parte di entit non autorizzate

5.6 Service Provider.


Il service provider fornisce i servizi a cui gli utenti sono interessati, i contenuti provengono dal content provider. Obbiettivo principale del service provider garantire che gli utenti abilitati usufruiscano dei servizi, ma che non lo possano fare individui esterni e non autorizzati. necessario proteggere la propriet intellettuale dei dati trasmessi, quindi prestare attenzione alla confidenzialit. Inoltre per garantire un servizio efficiente, lintegrit dei dati indirizzati allutente deve essere controllata. Tra utente e service provider avvengono diverse transazioni sensibili che devono essere registrate in modo da non poter essere negate da nessuna delle due parti. In questa maniera si garantisce il non ripudio. Infine il service provider deve essere disponibile e affidabile : quindi eventuali crashes devono essere trasparenti al resto del sistema.

6 Sistemi di Accesso Condizionato.


Un Sistema di Accesso Condizionato (CAS) ha come scopo primario quello di verificare il diritto dell'utente ad usufruire di un servizio ad accesso riservato. Tipicamente si tratta di servizi soggetti ad un canone fisso, o di eventi particolari acquistabili singolarmente o a pacchetto. A volte l'accesso condizionato viene impropriamente inteso come il controllo da parte dell'utente sulla visibilit di questo o quel programma in un ambito tipicamente familiare(ParentalControl). In realt, l'unica intersezione tra questi due insiemi funzionali l'impiego delle tabelleDVB-SI, dato che il controllo domestico si basa su un unico descrittore della tabella Event Information Table (EIT), ilParental Rating Descriptor ed il filtro sui Transport Streams viene eseguito nel STB, mentre l'accesso condizionato, come vedremo ora, ha origine presso l'HeadEnd del sistema di broadcasting.

6.1.1 Oscuramento della Trasmissione.


Per rendere indecifrabile il segnale trasmesso, viene adottato un metodo detto Scrambling, in grado di produrne una rappresentazione incomprensibile. Il termine scrambling, rimescolamento, ricorda la sua derivazione dal campo analogico, in cui il sistema di protezione realizzato attraverso un rimescolamento delle componenti di visualizzazione, come ad esempio il Line Translation, Line Rotation e Line Shuffling. L'uso di tale termine utile inoltre per distinguere le operazioni di cifratura della trasmissione di gitale e quella delle chiavi di decodifica. Alla ricezione sul Set Top Box, il segnale viene riportato nella sua versione in chiaro e rappresentato sul te levisore.

Sistema di scrambling Lo scrambling pu essere effettuato sia a livello di Transport Stream (TS) che nel formato di Packetised Elementary Stream (PES), secondo un preciso schema di mappatura realizzato per fornire sempre al trasporto un pac chetto nella forma TS. Nel primo caso, quello del Transport Stream, l'ope razione di scrambling verr eseguita dopo il multiplexing, altrimenti, nel caso del formato PES, prima. Chiaramente questa scelta influenzer anche l'ordine di esecuzione dell'operazione inversa di descrambling. Nell'indicare i flussi funzionali viene qui utilizzato uno schema basato sulla codifica a livello di Transport Stream, ma l'inversione della sequenza scrambler-multiplexer non modifica la coerenza del discorso.

6.1.2 Common Scrambling Algorithm.


La procedura di scrambling, denominata Common Scrambling Algorithm (CSA), l'unica componente del sistema di accesso condizionato sviluppata congiuntamente dai membri del consorzio DVB.A causa della sua natura riservata, il sistema non stato reso pubblico in modo dettagliato, ma le specifiche tecniche possono essere ottenute da ETSI. Anche se le informazioni principali riguardanti l'algoritmo CSA non possono essere divulgate, per garantire l'interoperabilit tra i diversi siste mi di CA stato rilasciato un documento con l'intento specifico di definire un insieme minimo di elementi comuni dell'accesso condizionato, in aggiunta a quelli gi definiti dal sistema MPEG2.Lo stesso documento raccomanda che tutti gli elementi di accesso condizionato in esso definiti siano incorporati nei rice vitori prodotti per la TV digitale. Il Common Scrambling Algorithm composto da un sistema di de scrambling, il Common Descrambling System e da una tecnologia di scrambling, la Scrambling Technology. Le specifiche di ognuno di essi ven gono distribuite separatamente e dopo la sottoscrizione di un accordo di ri servatezza con ETSI, che ne stato incaricato della custodia. L'algoritmo di scrambling, utilizzato per codificare un flusso di bits nei formati MPEG-2 Transport Stream (TS) o Packetised Elementary Stream (PES), stato pensato e disegnato in funzione della riduzione della quantit di memoria necessaria al circuito di decodifica del ricevitore, spostando, per questo motivo, la complessit al livello del codificatore, cio all'origine del sistema di broadcast (Head-end). Per ottenere un maggior livello di sicurezza del sistema, il Common Scrambling Algorithm stato strutturato con una cifratura a due livelli: il primo livello consiste in una codifica a blocchi di 64 bits, in una modalit di concatenamento inverso il secondo livello realizza una codifica a flusso, con generazione pseudo casuale di byte.

Entrambi i cifrari utilizzano la stessa chiave; il cifrario a flusso usa un nonce supplementare a 64-bit, derivato dall'ultimo output della codifica a blocchi.

6.1.2.1 Lo Scrambling di TS e PES.


Vediamo ora quali sono i requisiti che devono essere soddisfatti nella preparazione del formato di trasporto delle informazioni. L'algoritmo di scrambling pu operare sia sul payload di un pacchetto Transport Stream, sia su una strutturazione di pacchetti PES (Packetised Elementary Streams). Conformemente con lo standard ISO/IEC 13818-1 (MPEG-2 Systems) l'intestazione (header) di un pacchetto PES non pu essere codificato ed i pacchetti TS contenenti parti di un pacchetto PES codificato non possono contenere un campo di adattamento (Adaptation Field), con l'eccezione del pacchetto TS che contiene la parte finale del pacchetto PES.

L'intestazione di un pacchetto PES codificato non pu essere suddivisa su pi pacchetti TS. Il pacchetto TS che trasporta l'inizio di un pacchetto PES codificato riempito dall'intestazione del PES e dalla prima parte del suo payload. In questo modo, la prima parte del payload del pacchetto PES codificato esattamente come un pacchetto TS con un payload di ana loga dimensione. La parte restante del payload del pacchetto PES scom posta in super-blocchi di 184 bytes. Ogni super-blocco codificato esattamente come payload di un pacchet to TS di 184 byte. La fine del payload del pacchetto PES allineata ri spetto alla fine del pacchetto TS (come richiesto da ISO/IEC 13818-1 [4]) inserendo un campo di adattamento della dimensione necessaria. Se la lunghezza di un pacchetto PES non un multiplo di 184 byte, l'ultima par te del payload del pacchetto PES (da 1 a 183 bytes) codificato esattamen te come un pacchetto TS con un payload di dimensione simile. Il metodo di scrambling a livello di PES pone alcuni vincoli al processo di multiplexing per rendere il processo di descrambling pi semplice ed evitare di aumentare la complessit nella realizzazione dei ricevitori. In sintesi, le raccomandazioni per l'inserimento di pacchetti PES codificati all'interno di pacchetti TS sono: Lo scrambling deve essere realizzato ad un solo livello per volta, TS o PES, ma mai simultaneamente. L'intestazione di un pacchetto PES codificato non pu superare i 184 bytes. I pacchetti TS contenenti parti di un pacchetto PES codificato non pos sono contenere campi di adattamento, con l'eccezione del pacchetto TS contenente la fine del pacchetto PES. Il pacchetto TS che trasporta la fine di un pacchetto PES codificato, pu contenere un campo di adattamento per allineare la fine dei due pacchetti.

Questo metodo pu generare un certo overhead nella velocit di trasferimento dei dati, nel caso in cui si utilizzino i campi di adattamento. In questo caso sar necessario inserire un ulteriore pacchetto TS contenente soltanto un campo di adattamento.

6.1.2.2 Il Sistema di Descrambling.


Il sistema che si occupa di eseguire l'operazione inversa sul lato della ricezione, denominato Common Descrambling System. L'apparato dedi cato al descrambling deve essere in grado di: processare in parallelo almeno sei diversi flussi di bit, codificati con differenti sistemi di accesso condizionato decodificare in modo selettivo i pacchetti contenuti in un Transport Stream o in un Packetised Elementary Stream (a seconda della configurazione adottata nella codifica) utilizzare, per fare ci, i valori delle Control Words inviate periodica mente dal microprocessore.

Quando il descrambler si trova nella condizione di dover decodificare con temporaneamente parecchi servizi, memorizza una lista di Control Words abbinate ai PID dei pacchetti di cui richiesta la decodifica. Per ottimizzare i processi di decodifica, il descrambler non interviene su tutti quei pacchetti TS e PES i cui flag, transport_scrambling_control e PES_scrambling_control, siano impostati a 00; quanto detto vale anche nel caso in cui il PID risulti abbinato ad una Control Word all'interno della lista [40].

6.1.3 Sottosistemi di Accesso Condizionato.


Il processo di scrambling dei flussi di bits contenenti audio, video e dati, una delle due componenti principali di un sistema di accesso condizionato. L'altra, il processo di cifratura delle chiavi di descrambling, fi nalizzato a renderne sicura la distribuzione. Un sistema end to end pi complesso di accesso condizionato per composto anche da altri sotto sistemi: Subscriber Management System (SMS): il sistema preposto a tratta re l'Amministrazione di tutti i dati del cliente, ad esempio il numero di serie del decoder, i servizi cui l'utente ha accesso ed i termini di fattura zione. Subscriber Authorization System (SAS): il sistema di gestione dei criteri di Autorizzazione riguardanti l'abbonato, con i quali compone, sotto la guida del Subscriber Management System, i messaggi ECM ed EMM, che forniscono al sistema di accesso condizionato del ricevitore le informazioni necessarie a rendere nuovamente fruibili i servizi.

Un sistema di controllo dell'Accesso Condizionato collocato nel ricevi tore, che, dopo la verifica delle necessarie autorizzazioni di cui sopra, avvia il processo di descrambling e riporta in chiaro i contenuti.

Il gruppo DVB Project ha fatto la scelta ben precisa di non standardizzare i due sistemi, SMS e SAS, affinch rimanesse ai produttori la massima libert nello sviluppo delle proprie soluzioni.

6 Sicurezza MHP.
Il sistema di sicurezza DVB definito per la piattaforma MHP investe l'Autenticazione delle applicazioni e le relative Politiche di sicurezza, la gestione dei Certificati e l'autenticazione e riservatezza delle comunicazioni sul canale di ritorno.

6.1 Autenticazione delle applicazioni.


Il STB pu ricevere delle nuove applicazioni dal fornitore dei servizi e deve trovarsi nelle condizioni di accertarne la validit. Il sistema di sicurezza definito per la piattaforma MHP si occupa di consentire al STB di autenticare la fonte di provenienza delle applicazioni e di tutti i files in generale. La procedura di autenticazione comunicher al STB di quali diritti sulle risorse sensibili dovrebbe disporre l'applicazione per una sua corretta esecuzione. Il sistema adotta tre diversi messaggi di autenticazione: codici crittografici Hash, per la verifica di integrit dei contenuti di files e directories, un codice hash master calcolato su tutti i dati, creato con chiave pubblica e firmato da un'autorit di certificazione, i Certificati di autenticazione.

Sono state definite tre strutture dati, corrispondenti alle tipologie dei messaggi, denominate HashFile, SignatureFile e CertificateFile, che vengono memorizzate in files all'interno al file system ed inviate al STB insieme all'applicazione.

6.1.1 HashFile.
Un HashFile contiene un'informazione riepilogativa e codificata del contenuto di una directory, tranne s stesso, il cui scopo garantire l'integrit dell'informazione al momento della ricezione. Per ogni file, viene prima calcolato uno specifico codice Hash sulla base del suo contenuto e dei suoi attributi. Alla fine, il valore hash della directory viene calcolato sui valori hash del suo contenuto, ottenendo in questo modo che il suo valore sia autenticato dal contenuto stesso dell'albero sottostante. Oltre a questo tipo di HashFile, vi un HashFile principale, contenuto nella root directory ed ottenuto calcolando il codice Hash di tutti gli HashFiles contenuti nelle sub-directories e quello dei files della stessa root directory.

6.1.2 SignatureFile.
La firma digitale si ottiene calcolando, con lalgoritmo indicato nel certificato della chiave privata, il codice Hash del HashFile posizionato nella root directory del file system e crittografando il risultato con la chiave privata del fornitore del servizio. Nel caso si abbiano pi chiavi, possibile creare pi firme usando lo stesso codice Hash. La firma viene quindi memorizzata in un file chiamato "dvb.signaturefile.x", in cui la x identifica una specifica firma, nel caso se ne possiedano pi di una. Il file "dvb.signaturefile.x" strutturato secondo lo standard Abstract Syntax Notation One (ASN.1), nella versione Distinguished Encoding Rules (DER), linguaggio dedicato alla produzione di standard ed orientato all'interoperabilit tra componenti.

6.1.3 CertificateFile.
Il CertificateFile contiene, oltre al certificato della chiave pubblica che ha firmato il file system, una struttura gerarchica dei certificati delle chiavi pubbliche in cui un certificato sia autenticato da quello di ordine superiore fino all'ultimo, che deve essere un certificato di una root CA riconosciuto dal STB. Ad ogni certificato utilizzato durante la firma va associata la corrispondente catena di certificati, in cui la numerazione identificativa, indicata con "x" nel nome del SignatureFile, deve corrispondere a quella del nome del file dei certificati

("dvb.certificates.x").

Esempio di struttura di files ad albero autenticata

6.2. Politica di sicurezza per le applicazioni.


La gestione dei diritti di accesso alle risorse di un STB dipendono principalmente da due fattori: i diritti richiesti dal broadcaster ed i diritti concessi dallutente. I diritti di accesso che vengono richiesti da un broadcaster devono essere firmati insieme allapplicazione stessa. Le applicazioni non firmate godono di diritti di accesso alle risorse della piattaforma limitati. Per quanto riguarda le applicazioni firmate lo standard MHP prevede che anchesse abbiano di default gli stessi diritti delle applicazioni non firmate. Il broadcaster pu poi decidere di modificare questi permessi inserendo nello stream un file, chiamato "Permission Request File", che consente la definizione di tutti i parametri, relativi ai diritti, pi significativi.

6.2.1 Gestione dei certificati.


I certificati potrebbero dover essere revocati prima della data di scadenza (ad esempio se la chiave privata di un broadcaster compromessa). A questo scopo viene creata una lista contenente i numeri seriali dei certificati revocati che, trasmessa in broadcast e opportunamente firmata, avverte i ricevitori di quali sono i certificati da ignorare. Ogni terminale che supporta MHP deve contenere un set di certificati root X509 nella memoria persistente che vengono inseriti durante il montaggio del set top box stesso. Occorre quindi avere la possibilit di modificarli. Questo viene fatto tramite un opportuno file inviato in broadcast contenente i nuovi certificati, le firme di almeno due Root CA e la lista dei certificati da eliminare. Se uno dei certificati viene compromesso, possono essere utilizzati due sistemi: la lista di certificati revocati (CRL - certificate revocation list) oppure un messaggio di modifica dei certificati (RCMM - Root Certificate Management Message).

6.2.2 Sicurezza del canale di ritorno.


Le applicazioni interattive che necessitino di trasmettere dati riservati, richiedono l'impiego di un canale di comunicazione sicuro. Ad oggi, le specificazioni MHP 1.1.2 riguardanti il canale di ritorno mutuano lo standard del mondo Internet, impiegando una parte del protocollo Transport Layer Security (TLS) [41]. Le raccomandazioni in proposito coinvolgono la suite crittografica, RSA, MD5, SHA-1, DES e AES ma non le funzionalit server e la compatibilit con RSS 3.0. Con la versione 1.1.2, MHP introduce anche la parte del protocollo riguardante l'autenticazione del client, a condizione che sia fornita l'origine delle chiavi alla classe delle API Java javax.net.ssl.SSLContext attraverso un javax.net.ssl.KeyManager. La connessione TLS richiede, per poter essere stabilita, che almeno un certificato inviato dal server faccia parte di quelli autenticati del STB. Per evitare di subire attivit fraudolente, il STB non pu collegarsi ad un numero diverso da quello dell'Interactive Service Provider stabilito, a meno di un esplicito consenso da parte dell'utente a fronte di una obbligatoria richiesta da parte dell'applicazione. Tale richiesta dovr fornire all'utente almeno i dati

dell'Organizzazione e del Certificato utilizzato per autenticare l'applicazione.

6.3 Smart Card.


Il lettore di Smart Card una risorsa opzionale del STB, che induce spesso a confusioni terminologiche e concettuali con i moduli di accesso condizionato, anch'essi fruibili tramite card. In realt, sia gli standard di riferimento che le funzionalit previste risultano differenti. I lettori di smart card dovrebbero dare supporto ad un nuovo insieme di servizi Home, T-Government, Home-banking, T-Commerce, etc. Come abbiamo visto in precedenza, i moduli di accesso condizionato gestiscono i servizi a pagamento televisivi e si occupano della decodifica dei bit-streams MPEG-2 per riportare in chiaro il segnale. La Pubblica Amministrazione ha definito alcuni strumenti di identificazione digitale: la Carta dIdentit Elettronica (CIE), emessa dai Comuni in sostituzione della consueta carta didentit, e la Carta Nazionale dei Servizi (CNS), attraverso cui possibile usufruire di servizi sanitari e fiscali, di sistemi di pagamento bancari e postali e, in generale, di quei sistemi che richiedono l'impiego della firma digitale. Il progetto della Carta Nazionale dei Servizi ha per anche tenuto conto dell'esigenza di stabilire uno standard di riferimento per tutte le successive emissioni di carte multi-servizi.

6.3.1 Componenti di una Smart Card.


Le Smart card hanno svariati formati e possono appartenere a diverse tipologie: non solo quelle per PayTV, ma anche carte di credito, SIM GSM e cos via. In base per ad una classificazione incentrata sulle caratteristiche hardware, le Smart Card possono essere distinte in due macro categorie: quelle dotate di sola memoria e quelle equipaggiate con memoria e microprocessore. I lettori di smart card del Set-Top Box fanno riferimento a quest'ultima. Nella categoria dotata di CPU, le differenziazioni riguardano le altre componenti hardware, il tipo di microprocessore, la dimensione delle memorie e la possibilit di riscrittura delle stesse. Gli standard ufficiali sono definiti in ISO 7816-1, 7816-2, 7816-3 [44, 45, 24]. Quelle pi comuni possiedono un processore programmabile a 8 bit ed una capacit di archiviazione (protetta) dei dati di almeno 4 KB, adatta, ad esempio, a contenere chiavi private e certificati a chiave pubblica. Solitamente, si attivano per contatto all'inserimento nell'apposito slot. Ne esistono per anche di tipo contact-less che funzionano ad onde radio. Una smart card dotata comunemente di memorie ROM, PROM, EEPROM, RAM e di interfaccia I/O.

6.3.2 File System.


Il File System memorizzato su EEPROM basato su una struttura gerarchica. Gli elementi che lo compongono sono: un solo Master File: si tratta della radice del file system, pu contenere sia Dedicated Files che Elementary Files uno o pi Dedicated File: contiene gli Elementary Files, ma pu contenere anche altri Dedicated Files zero o pi Elementary File: contengono i dati veri e propri.

Gli Elementary Files si suddividono in internal EF e working EF, a seconda che possano essere utilizzati da applicazioni interne o meno alla carta stessa. Un file identificato da un ID univoco di 2 bytes. Il Master File ha sempre come ID, in forma esadecimale, 3F00. Per indicare un particolare file comprensivo di tutto il path a partire dal Master File, si giustappongono i singoli ID intervallati dal simbolo ':'. Un elementary file potrebbe, ad esempio, essere identificato da: EF00:0001:0001.

6.3.3 API per la comunicazione.


Sul versante della sicurezza, le smart card supportano l'autenticazione dell'utente attraverso un PIN (Personal Identification Number), che risulta autorizzato ad operare in base a ci che stato registrato sulla carta. Questo consente, ad esempio, di essere chiaramente identificati durante una sessione interattiva che utilizzi il canale di ritorno del Set Top Box, oppure di memorizzarne il profilo utente ed i parametri di configurazione della

connessione. Le applicazioni MHP, per utilizzare le smart card, devono impiegare un set di API; trattandosi di un punto chiave ridefinito solo ultimamente ed ancora, forse, soggetto a sviluppi, bisogna verificare bene la versione della piattaforma standard su cui ci si trova ad operare. Questo lo scenario, in funzione delle versioni di MHP supportate dal STB: MHP 1.0.2 e 1.0.3: non prevedono la gestione di smart card MHP 1.1 e 1.1.1: prevedono la gestione dei lettori di smart card per il attivit di commercio elettronico attraverso l'Open Card Framework for Embedded Devices Specification 1.2.2 (OCF). Non prevedono invece la gestione dei lettori di smart card per l'accesso condizionato. MHP 1.1.2: ha sostituito le OCF, perch non pi supportate, con il set di API Java, denominato "Security and Trust Services API for Java 2 Platform, Micro Edition", (SATSA 1.0).

6.4 Criticit del sistema di sicurezza.


Dopo aver presentato i principali componenti del sistema di sicurezza di un Set Top Box, analizziamone le eventuali criticit e debolezze.

6.4.1 Sicurezza MHP.


Introduciamo prima brevemente i noti criteri di sicurezza: confidenzialit, integrit, disponibilit, autenticazione e non-ripudiabilit. Confidenzialit: esprime la necessit che l'accesso alle risorse sia garantito solo a chi ha il diritto di utilizzarle, nelle modalit stabilite dalla propria politica di sicurezza. Integrit: esprime la necessit che nessun utente, anche se autorizzato, possa modificare i dati compromettendone la consistenza. Disponibilit: esprime la necessit che dati e risorse siano disponibili per l'uso e che non vi sia modo di distruggerli o impedirne un accesso legittimo. Autenticazione: consente di accertare la fonte di provenienza dei dati ricevuti. Non-ripudiabilit: fornisce la prova che il dato stato inviato o ricevuto, affinch il mittente (o il destinatario) non possa rinnegarne la paternit.

Come abbiamo visto in precedenza, il modello di sicurezza di MHP divide le applicazioni in firmate e non firmate. Queste ultime hanno limitati diritti di accesso a risorse e servizi. I codici hash in MHP assicurano l'integrit dei dati e la confidenzialit, in quanto sono calcolati partendo dal contenuto e dagli attributi degli oggetti. Un Hashfile indicante gli oggetti che devono essere autenticati sar messo in ogni elenco contenente tali oggetti. Questo meccanismo assicura che soltanto una applicazione autenticata pu modificare i relativi oggetti. Inoltre, una applicazione autenticata non pu modificare gli oggetti non elencati nel Hashfile che ha utilizzato per autenticarsi. Sotto autenticazione forte, solo utenti autorizzati possono aver accesso alle risorse MHP. La non-ripudiabilit viene assicurata attraverso le firme. La firma digitale in MHP memorizzata nella directory root del sotto albero che autentica. Il valore di firma calcolato sul certificato in formato ASN.1 DER. Generando questa firma, una Certification Authority (CA) certifica la validit dell'informazione, in particolare il legame fra la chiave pubblica ed il proprietario del certificato. Qualunque utente che abbia firmato per una applicazione non potrebbe negare tale operazione. Questo assicura il non-ripudio. D'altra parte, la non-ripudiabilit esiste anche nella direzione opposta. Il service provider e il broadcaster non possono negare con il cliente una qualunque operazione effettuata, ad esempio nell'eventualit che tale operazione abbia danneggiato il STB del cliente. La autenticazione delle applicazioni fornita dalla catena di certificati e dal Root Certificate contenuto nel STB. Ci consente al STB di accertare la fonte di provenienza delle applicazioni e di tutti i files in generale, assicurando che utenti non autorizzati non facciano uso improprio di informazioni riservate. Inoltre, nel canale di ritorno viene utilizzato il Transport Layer Security (TLS), che richiede, come visto, almeno un certificato riconosciuto dal STB, accertando quindi l'autenticit dell'applicazione e garantendo la confidenzialit delle comunicazioni grazie alla propria suite crittografica. La condizione di disponibilit si pu verificare solo con la collaborazione fra service provider e broadcaster che

devono garantire la Qualit del Servizio, mentre entrambi nulla possono sul funzionamento del canale di ritorno. Poich Java la piattaforma di sviluppo di elezione per MHP, pu essere utilizzata la caratteristica di sicurezza sandbox, che pu limitare l'accesso alle risorse di sistema. Java gioca un ruolo importante in quanto, imponendo tipizzazioni forti, non consente alle applicazioni di eseguire gli attacchi pi comuni come ad esempio gli stack overflows. Concludendo, sotto il profilo tecnico e prescindendo ovviamente dal fattore umano, il modello di sicurezza in MHP, fondamentale per lo standard DVB, fornisce una protezione adeguata ai dati degli utenti ed alle applicazioni.

6.4.2 Accesso Condizionato.


Nell'accesso condizionato un ruolo fondamentale giocato dal Common Scrambling Algorithm, delle cui specifiche il suo custode, ETSI, mantiene la riservatezza. L'algoritmo viene realizzato direttamente in chiave hardware, ma nel 2002 apparso pubblicamente un programma software (Freedec) che ne realizzava le specifiche, immediatamente sottoposto a reverse-engineering e reso pubblico in Internet. Da quel momento sono in corso studi sulla robustezza del sistema che dimostrano come sia possibile attaccarlo. L'algoritmo si basa per, come abbiamo visto, su control words generate ad intervalli di tempo molto brevi e, finora, la rapidit del cambio delle chiavi ne impedisce un attacco utile ai fini della pirateria. Per quanto riguarda la smart card, gli attacchi pi comuni sono di tipo fisico/elettronico, mentre da un punto di vista applicativo, le comunicazioni verso il STB avvengono con le API SATSA e per il canale di ritorno, il TLS, che insieme ad MHP, rispondono adeguatamente ai criteri richiesti.

Curiosit sulla pirateria del Dvb-T.


Qui di seguito riporto questo articolo trovato in giro per la rete che riguarda una possibile falla nella sicurezza di Mediaset Premium : Il sistema per la pay-tv di Mediaset commenta unpseudo-hacker - cos insicuro che possibile, avendo gli strumenti giusti, decrittare tutti i canali in poche ore.La debolezza, si legge su un sito Web, non risiede nelle card nagravision, quelle usate da Mediaset, ma nell'architettura dei decoder. L'algoritmo di crittazione del segnale commenta lingegnere - sempre lo stesso anche quando cambiano i CAM (conditional access modules), ovvero le varie card. Le chiavi possibili, spiegano gli esperti che con questa rivelazione faranno la gioia di molti utenti, sono solo 281.474.976.710.656 (6 bytes). Nonostante possano sembrare troppe, si legge su una pagine rintracciata con un noto motore di ricerca, un qualunque computer riesce a craccare i codici in poche ore. Le tecniche, stando sempre a quanto pubblicato sul sito rivelatore, sarebbero note gi da tempo agli hacker francesi e tedeschi. Lunico limite sembra comunque la modalit di visione degli eventi. Gli utenti, infatti, anzich comprare un decoder da collegare al televisore ne dovranno acquistare uno da interfacciare con il Pc. Secondo le informazioni recuperate in Rete, ancora non esiste un vero e proprio mercato. Entro pochi mesi, per, salvo una contromossa di Mediaset, c da aspettarsi il peggio. " Fonte: Italy.indimedia.com

Bibliografia . Autorit per le Garanzie nelle Comunicazioni, 2000 Il libro Bianco sulla televisione digitale terrestre ETSI EN 300 744 Digital broadcasting systems for television, sound and data services; framing structure, channel coding and modulation for digital terrestrial television

Wikipedia. Vari siti internet.