Roma – Il Trusted Computing esiste, nella sua forma attuale, dal 1999, cioè dai tempi in cui è stata fondata la Trusted Computing Platform Alliance (ora Trusted Computing Group) ed in cui è stato lanciato il progetto “Palladium” di Microsoft (ora NGSCB). Nel corso di questi anni, il Trusted Computing ha ricevuto una impressionante quantità di critiche da parte di praticamente tutti gli osservatori indipendenti che se ne sono occupati, da Seth Schoen di Electronic Frontier Foundation, a William Arbaugh dell’Università del Maryland, a Bruce Schneier di CounterPane (il mitico autore di “Applied Cryptography”). Una raccolta quasi completa degli scritti sul Trusted Computing è disponibile qui .
Insieme alle critiche, sono arrivate anche le proposte di “addomesticamento”. Prima Seth Schoen di EFF e poi alcuni altri osservatori hanno avanzato delle proposte tese a rendere questa tecnologia “socialmente e tecnicamente accettabile”. Queste proposte possono essere classificate grosso modo in tre categorie:
1)Modifiche tecniche tese a rendere meno invasivo e meno minaccioso il Trusted Computing;
2)Iniziative tese a sostituire il Trusted Computing con qualcosa di più accettabile (Smart Card);
3)Iniziative tese a sottoporre il Trusted Computing al controllo politico e legale dei governi
L’approccio “tecnico” al problema
L’esempio più conosciuto di questo tipo di proposta è l’Owner Override di Seth Schoen. Seth Schoen è un apprezzato “columnist” ed un “technical analyst” di Electronic Frontier Foundation, una delle più antiche e delle più autorevoli associazioni attive nella difesa dei diritti digitali dei cittadini. Schoen identifica una delle principali fonti di problemi del Trusted Computing nella cosiddetta “remote attestation”. Per quelli che si fossero collegati in questo momento, ricordiamo che la remote attestation è quella funzionalità che permette ad un interlocutore remoto, ad esempio un venditore di brani musicali in formato digitale su Internet, di verificare l’identità dei programmi in uso sul vostro computer grazie a delle apposite tecniche crittografiche messe a disposizione dal Fritz Chip.
Ecco come si esprime Seth Schoen riguardo alla remote attestation:
” Il proprietario del PC come un nemico?
La versione corrente della remote attestation permette l’imposizione di regole contrarie a ciò che può desiderare il proprietario del PC. Se il software che utilizzate è concepito in questo modo, non si limiterà a difendere i vostri dati da eventuali intrusi e da pericolosi virus. Li proteggerà anche da voi stessi. In pratica, voi, il proprietario del PC, sarete trattati come una minaccia.
Questo problema nasce dalla eccessiva preoccupazione dei progettisti di ottenere un meccanismo che fornisca sempre un ritratto fedele della configurazione del PC in qualunque situazione, senza eccezioni. Il proprietario del PC può disabilitare completamente la remote attestation ma non può fare in modo che la remote attestation rifletta una configurazione diversa da quella esistente. In altri termini, non è possibile mentire riguardo al tipo ed alla versione del browser web o del programma di file sharing correntemente in uso.
Questo approccio è di vantaggio per l’utente solo se l’utente ed il suo interlocutore perseguono lo stesso fine. Se la remote attestation è usata da un fornitore di servizi che vuole aiutarvi a rilevare la presenza di virus e trojan horse prima di effettuare una transazione critica, allora la remote attestation vi aiuta a proteggervi. Se la remote attestation è usata da qualcuno che vuole impedirvi, per un motivo o per l’altro, di usare il software di vostra scelta, allora la remote attestation vi procura un danno.”
La soluzione proposta da Schoen è semplice ed apparentemente geniale: permettere all’utente di sovrascrivere il certificato digitale generato automaticamente dal TPM con un altro, di sua scelta. In pratica, Seth Schoen propone di fornire all’utente gli strumenti con cui mentire al suo interlocutore.
Ecco come giustifica questa sua proposta:
“L’Owner Override permette al proprietario del PC, quando fisicamente presente alla tastiera, di generare deliberatamente un attestato che non riflette la situazione corrente del PC, in modo da poter presentare all’interlocutore remoto una immagine di sua scelta riguardo al sistema operativo, ai driver ed al software applicativo in uso. Dato che questo attestato può essere generato solo su disposizione esplicita e consapevole del proprietario, l’uso della remote attestation per rilevare eventuali virus e trojan horse è ancora possibile. Tuttavia, grazie all’Owner Override l’utente riprende il controllo del suo PC, anche in un ambiente di rete, ed il PC non può più essere usato per imporre regole contrarie all’interesse del suo proprietario.
L’Owner Override rimuove gli strumenti che rendono possibile l’abuso della tecnologia Trusted Computing da parte di chi vuole usarla come strumento anti-interoperabilità e anti-concorrenza. Ripristina l’importante possibilità di effettuare il reverse-engineering dei programmi per garantire la interoperabilità.
In senso più ampio, corregge il Trusted Computing mantenendo la possibilità di usare questa tecnologia per difendere l’utente senza però limitarne la libertà di decidere quali regole debbano essere fatte rispettare. Non compromette nessuno dei risultati che lo standard TCG o MS NGSCB vogliono ottenere ed è coerente con gli scopi ufficialmente dichiarati per il Trusted Computing”.
Nonostante l’ottimismo di Seth Schoen, l’Owner Override è stato quasi immediatamente bocciato dai sostenitori del Trusted Computing. Il motivo di questa bocciatura viene spiegato con notevole lucidità da Catherine Flick, l’autrice di una tesi di laurea intitolata Controversy over Trusted Computing . Ecco cosa dice Catherine Flick:
“Sebbene l’Owner Override possa rendere più accettabile il Trusted Computing, potrebbe avere anche delle pesanti controindicazioni:
– L’Owner Override potrebbe degradare seriamente la sicurezza complessiva del sistema a causa della maggiore complessità. Ad esempio, spedire delle false informazioni all’esterno sarebbe quasi impossibile senza qualche forma di automatismo e questo automatismo potrebbe portare con sé dei seri problemi di sicurezza.
– L’Owner Override potrebbe instillare un falso senso di sicurezza nell’utente connesso ad una rete.
– L’Owner Override renderebbe i sistemi DRM (buoni o cattivi che siano) inefficaci.
Nel complesso, l’Owner Override può essere visto come un punto di partenza per la discussione ma non come una soluzione pronta all’uso per i problemi del Trusted Computing. Non potrà esserlo anche perché, per i motivi appena visti, nessun produttore di sistemi Trusted Computing potrà mai avere interesse ad adottare questa soluzione”.
Nonostante il suo precoce fallimento, la proposta di Seth Schoen ha sicuramente un merito: ha messo in evidenza come, in un universo tecnologico come quello che ci aspetta nei prossimi anni, l’utente debba avere il diritto “tecnologico” di tacere o persino di mentire sulla sua identità e sulla natura degli strumenti che usa, se vuole salvaguardare quella libertà di scelta che noi tutti, al giorno d’oggi, diamo per scontata. Questa esigenza nasce dalla impressionante ed inaudita efficacia che possono vantare molte nuove tecnologie tra cui il Trusted Computing, le tecniche di riconoscimento biometrico, i nuovi sistemi DRM, gli RFID e via dicendo.
La capacità di identificare e controllare persone ed oggetti con matematica precisione, scavalcando ogni controllo da parte dell’interessato, è qualcosa che noi non riusciamo né ad immaginare né ad accettare emotivamente al giorno d’oggi. Si fatica a capirne gli effetti sulla nostra vita quotidiana. Sarebbe come se un satellite a 400 Km di quota seguisse in ogni istante la nostra auto e ci addebitasse automaticamente sul conto corrente 300 euro di multa ogni volta che superiamo il limite di velocità anche solo per un istante. Non ci sarebbe difesa da una cosa del genere e diventerebbe subito impossibile usare l’auto.
Il Trusted Computing ed i sistemi DRM della prossima generazione possono vantare proprio questo livello di precisione e di efficacia nell’imporre le loro regole. Regole che, si badi bene, non sarebbero decise democraticamente da un parlamento ma sarebbero piuttosto stabilite in modo autoritario dai dipartimenti di marketing di aziende private. Nelle mani di un governo autoritario (e ce ne sono molti più di quanto si creda abitualmente), queste tecnologie permetterebbero di creare una dittatura senza precedenti e senza punti deboli. Senza la possibilità tecnica di mentire e/o di nascondersi non ci sarebbe nessuna via di salvezza per il cittadino. Quello che al giorno d’oggi può sembrare un “diritto” che solo un delinquente può reclamare, in futuro potrebbe essere invece un diritto indispensabile a qualunque cittadino ossequioso delle leggi per sopravvivere in una civiltà tecnicamente avanzata.
Il documento originale di Seth Schoen è disponibile in rete: originale inglese , traduzione in italiano .
Come abbiamo detto, la proposta di Schoen è solo un caso specifico di un approccio più generale alla soluzione del problema Trusted Computing. Altri studiosi hanno proposto varianti più permissive o più restrittive dello stesso concetto. Ad esempio due ricercatori di ACM, Klaus Kursawe e Christian Stüble, in un loro scritto del 2003 propongono un sistema che permetta non soltanto di sovrascrivere i certificati digitali usati dalla remote attestation (i cosidetti “Platform Configuration register” o “PCR”) ma anche di avere accesso alla Storage Root Key usata per crittografare il contenuto del disco fisso e persino di sovrascrivere e rigenerare la Endorsement Key usata per identificare in modo univoco il Fritz Chip e, con esso, l’intero PC. Quale sia il possibile futuro di queste proposte è descritto molto bene da Catherine Flick:
“Questo (la proposta di Kursawe e Stüble ? ndr) porta con sé tutti i problemi del semplice Owner Override. Sebbene le argomentazioni che vengono portate per giustificare l’accesso dell’utente alla Storage Root Key siano solide (ad esempio, per permettere il backup dei dati), questa libertà di accesso sarebbe un serio problema per i sistemi DRM, buoni o cattivi che siano.
Non c’è niente che si possa aggiungere alle specifiche del Trusted Computing che possa soddisfare tutte le parti in gioco. ”
Poco più avanti, Catherine Flick esprime un giudizio molto pesante nei confronti del Trusted Computing, un giudizio condiviso da praticamente tutti gli osservatori indipendenti che se ne sono occupati:
“Mentre il Trusted Computing può essere considerato un interessante punto di partenza per cominciare a parlare di sicurezza dei sistemi e delle reti, di certo non può essere considerato la migliore soluzione possibile per molte delle parti coinvolte, soprattutto per gli utenti finali”.
L’alternativa Smart Card
Le Smart Card sono dei dispositivi formati da un microchip e da una piccola area di memoria. Possono essere usate per conservare dati particolarmente sensibili, come una coppia di chiavi per la crittografia a chiave pubblica (RSA), e per effettuare operazioni, come la cifratura e la decifrazione di documenti. Ne esistono di diversi tipi, alcuni dei quali molto comuni. Ad esempio, sono delle Smart Card a tutti gli effetti, anche se di tipo leggermente diverso tra loro, i seguenti dispositivi:
– Smart Card usate per controllare l’accesso ai canali televisivi digitali (Satellitari e Digitale Terrestre);
– SIM dei telefoni cellulari (GSM, GPRS, UMTS);
– Alcuni tipi di Carte di Credito bancarie, come le Carte “Moneta” di Cariplo;
– Le Patenti di Guida Elettroniche, i Passaporti Elettronici, le Tessere Sanitarie Elettroniche e le “schede” per la Firma Digitale rilasciati dalle Camere di Commercio.
In quasi tutti questi casi, le Smart Card vengono usate per dare una “identità digitale” al loro proprietario e, a volte, per immagazzinare in modo sicuro piccole quantità di dati sensibili (come i punti residui sulla patente di guida, le informazioni mediche nella tessera sanitaria o la data di ingresso in un certo paese sul passaporto).
Le Smart Card sono sempre state considerate un elemento chiave per migliorare la sicurezza dei sistemi (PC) e delle reti (Internet) proprio per la loro capacità di conservare la coppia di chiavi RSA ed altre piccole quantità di dati fuori dalla portata degli “hacker”. Le Smart Card vengono considerate sostanzialmente infalsificabili ed inviolabili da molti studiosi. Il Chip ESS (Embedded Security Subsystem) che IBM installava di serie sui suoi ThinkPad è stato concepito proprio come una installazione fissa, e “di serie”, di una Smart Card su un PC, in modo che l’utente ne potesse godere tutti i vantaggi senza dover acquistare separatamente l’apposito lettore di Smart Card. Il Fritz Chip (TPM) è la versione “standardizzata” del chip ESS di IBM.
Tra Smart Card e Fritz Chip esiste quindi una stretta parentela. Anzi: si tratta di fatto dello stesso dispositivo, con l’unica differenza che la Smart Card è rimovibile.
Proprio questa strettissima parentela ha fatto sorgere un dubbio legittimo in molti osservatori: se Smart Card e Fritz Chip sono, di fatto, la stessa cosa, perché imporre all’utente l’uso di un Fritz Chip, con tutti i problemi di privacy e di libertà decisionale che esso comporta, invece di diffondere ulteriormente l’uso di una tecnologia già diffusa, collaudata ed economica come quella delle Smart Card?
In effetti, tutto quello che può essere ottenuto da un Fritz Chip può essere ottenuto anche da una Smart Card ma con una differenza sostanziale: la Smart Card può essere sfilata dal PC, portata con sé nel portafoglio e riutilizzata su un’altro PC (o su un’altro dispositivo).
Questo significa, ad esempio, che il “consumo” di un prodotto multimediale non può essere vincolato in nessun modo ad uno specifico dispositivo ma solo ad una specifica Smart Card. In altri termini, un CD od un DVD possono essere ascoltati, o visti, su qualunque dispositivo dell’utente, posto che l’utente porti con sé anche la Smart Card che contiene i codici di abilitazione, nel pieno rispetto sia dei diritti del produttore (copyright) che dell’utente (fair use).
Nello stesso modo, l’utente può portarsi appresso le sue “identità digitali” semplicemente portando con sé le Smart Card che le rappresentano. Nel momento in cui una di queste identità non fosse più utile, basterebbe distruggere la Smart Card corrispondente, ad esempio spezzandola in due. Per ottenere una nuova identità, sarebbe sufficiente acquistare una nuova Smart Card. In certe applicazioni, si potrebbe sfruttare questa caratteristica per garantire la non tracciabilità dell’utente ed il suo diritto alla privacy: basterebbe permettere l’acquisto delle relative Smart Card in forma anonima, come avveniva un tempo con le SIM dei telefoni cellulari.
Nonostante possano sembrare quasi un ritorno al passato, le Smart Card possono fornire tutte le funzionalità di un Fritz Chip senza però imporre (quasi) nessuno degli aspetti negativi della tecnologia Trusted Computing. Ma allora, perché non vengono proposte al posto dei Fritz Chip?
La risposta è ovvia: quelli che sono aspetti negativi per l’utente sono aspetti positivi per le industrie.
La possibilità di “inchiodare” una identità (un utente) ad un dispositivo (un PC) permette un controllo quasi assoluto su di esso. L’utente è costretto a cambiare PC se vuole cambiare identità. La possibilità di “inchiodare” un prodotto multimediale ad un determinato dispositivo (PC o lettore di altro tipo) permette di vendere altre copie a chi volesse consumare lo stesso prodotto su altri dispositivi di sua proprietà.
Proprio questo evidente conflitto tra gli interessi delle aziende e quelli degli utenti ha convinto alcuni osservatori, tra cui chi scrive, che costringere le aziende ad usare le Smart Card al posto del Fritz Chip sia effettivamente la cosa migliore che si può fare per affrontare il problema Trusted Computing.
Una eventuale reazione negativa delle aziende a questa proposta sarebbe una dimostrazione inconfutabile di come il Trusted Computing sia una tecnologia destinata a favorire i produttori, non gli utenti (che però ne pagano il conto, da ogni punto di vista). Questo renderebbe finalmente chiaro, una volta per tutte, che gli utenti non hanno nulla da guadagnare, e molto da perdere, da questa tecnologia.
Si può approfondire la propria conoscenza delle Smart Card a queste URL:
http://en.wikipedia.org/wiki/Smart_card
http://www.microsoft.com/italy/technet/prodtechnol/windows2000serv/smartcard02.mspx
http://www.howstuffworks.com/question332.htm
L’approccio politico/legale
L’approccio più radicale al problema di “addomesticare la belva” è quello politico/legale. Sostanzialmente, consiste nel tentare di coinvolgere i governi in un’opera di regolamentazione dell’uso di questa tecnologia, così come è già avvenuto a suo tempo per i problemi di privacy che sono nati dalla diffusione di Internet.
Ma perché dovrebbero intervenire i governi?
Per capirlo, bisognerebbe forse tenere presenti le idee espresse a Denver nel 1998 dal compianto filosofo Neil Postman in un suo indimenticabile discorso: ogni cambiamento tecnologico è un compromesso. Ci sono sempre vantaggi e svantaggi da soppesare. Basti pensare all’energia nucleare per convincersene.
Vantaggi e svantaggi non colpiscono in misura uguale tutti gli individui, C’è sempre qualcuno che ne trae maggiori vantaggi di altri e c’è sempre qualcuno che ne soffre in modo particolare. In altri termini, ogni cambiamento tecnologico ha degli effetti sociali e politici. Ogni cambiamento tecnologico ridistribuisce il potere e di conseguenza ridistribuisce il reddito . Basti pensare ai motori a scoppio ed al petrolio per convincersene.
In ogni tecnologia è “cristallizzata” una potente idea, a volte più di una. Basti pensare ai PC.
I cambiamenti tecnologici non si limitano ad aggiungere qualcosa all’esistente: cambiano completamente il panorama a cui siamo abituati. Anche in questo caso basti pensare ai PC.
Con il tempo, la tecnologia ha la perniciosa tendenza a trasformarsi in qualcosa di cristallizzato e di indiscutibile (un “mito”, nelle parole di Neil Postman). Ad esempio, al giorno d’oggi è indiscutibile che un telefono ci strazi con i suoi trilli, ovunque e comunque, ma non è sempre stato così. Forse non era nemmeno inevitabile che lo diventasse.
(vedi: itrs.scu.edu/tshanks/pages/Comm12/12Postman.htm e neilpostman.org/ ).
Seguendo le linee di pensiero di Postman, possiamo vedere che:
– Il Trusted Computing è un compromesso tra la sicurezza (di chi?) e la privacy dell’utente. Questo compromesso và valutato e soppesato attentamente prima di usare questa tecnologia.
– I vantaggi del Trusted Computing sono molto maggiori per i produttori di hardware, software e contenuti. Gli svantaggi vanno quasi completamente a gravare sulle spalle dell’utente, anche da un punto di vista economico.
Nel Trusted Computing sono cristallizzate molte potenti idee. Una di queste è che qualcuno possa sostituirsi a noi nel decidere di cosa e di chi noi possiamo e dobbiamo fidarci. Un’altra idea è che il nostro PC possa essere usato contro la nostra volontà per limitare la nostra possibilità di azione.
Il Trusted Computing non aggiunge sicurezza al panorama esistente: lo modifica completamente, dando vita ad un “Mondo Nuovo” di Huxleyana memoria ancora tutto da capire.
Quando sarà “cosa fatta”, sarà troppo tardi per discuterne. A quel punto il Trusted Computing si sarà già trasformato nel nostro modo “standard” di vivere la vita digitale, ci piaccia o no .
In altri termini, la tecnologia non è neutrale, come spesso ci farebbe comodo credere. Ha degli impatti sociali e politici molto forti e come tale deve essere trattata. Il Trusted Computing non fa eccezione. Si tratta di una tecnologia che rimodellerà il mercato e ridistribuirà soldi e potere tra gli attori in gioco. Non si può pensare che le nostre strutture democratiche e governative rimangano alla finestra mentre grandi corporation straniere prendono decisioni cruciali per il nostro futuro.
Per questo motivo, da più parti si sta alzando una voce che chiede ai parlamenti ed ai governi di occuparsi del problema. Come è facilmente prevedibile, è molto difficile ottenere l’attenzione dei politici su temi così tecnicamente ostici e lontani dalla vita quotidiana. Tuttavia, questa è la strada.
Curiosamente, nel vasto panorama dei “movimenti” che si stanno occupando del Trusted Computing, brillano per la loro assenza le associazioni di consumatori. Sarebbe lecito aspettarsi una feroce opposizione di queste associazioni alla silenziosa introduzione sul mercato dei primi PC TC-compliant. Invece niente: nemmeno un lamento da quella direzione.
Sarebbe lecito aspettarsi una attenta e capillare opera di informazione su questo tema da parte delle associazioni di consumatori e dei sindacati. Invece niente: solo qualche sporadico articolo.
In questo momento, gli unici a tenere alta la guardia ed a tentare qualche coraggiosa azione di contrasto sono le associazioni spontanee di utenti di PC che popolano la rete, come www.no1984.org . Persino “Famiglia Cristiana” ha mostrato di dedicare più attenzione al problema Trusted Computing di quanta gliene abbiano dedicata in questi anni molte delle associazioni di consumatori esistenti.
Ma cosa dovrebbero fare i governi?
Probabilmente qualcosa come ciò che segue.
1) Stabilire il principio che nessuno, per nessun motivo, possa esaminare la struttura della mia macchina. Se ha bisogno di una informazione, la chiede a me e si fida di quello che gli dico. Diversamente va a fare i suoi interessi altrove. (Niente remote attestation)
2) Stabilire il principio che, una volta che il cliente si sia dimostrato disposto a pagare per il prodotto od il servizio reso, il fornitore non lo possa discriminare sulla base di ciò che usa per consumare il prodotto od il servizio. A proteggere i diritti dei fornitori ci sono le leggi e la polizia. Devono bastargli (niente discriminazioni basate sulla remote attestation)
3) Stabilire il principio che il prezzo di un prodotto non debba essere così elevato da rappresentare una barriera sociale. Vendere un DVD a 500 euro sarebbe un modo efficacissimo di censurare il suo autore.
4) Stabilire il principio che solo la Magistratura e la Polizia Giudiziaria hanno il diritto di tracciare gli utenti ed i cittadini in rete e solo per seri motivi di Giustizia (Niente registrazione delle Endorsement Key da parte delle aziende)
5) Stabilire il principio che l’utente ha il pieno diritto di usare (o “consumare”) lo stesso prodotto, legalmente acquistato, su tutti i dispositivi tecnicamente in grado di farlo a cui può legittimamente accedere (lettore di CD di casa e dell’auto, ad esempio) (Fair Use)
6) Stabilire il principio che l’utente ha il diritto di fare ciò che vuole con un prodotto che ha regolarmente acquistato, fin dove rispetta i diritti economici e legali del fornitore (Copyright e Fair Use)
7) Stabilire il principio che i sistemi DRM devono difendere il fornitore dalla copia abusiva, non dalla concorrenza (Interoperabilità con sistemi concorrenti)
8) Stabilire il principio che anche i sistemi DRM devono rispettare le leggi. Se il diritto d’autore scade 70 anni dopo la morte del titolare, il sistema DRM deve “rilasciare l’ostaggio” alla stessa data.
Gli autori che si sono occupati della questione, trattano questi argomenti con toni e sfumature tecniche a volte molto diversi tra loro ma su una cosa sembrano essere tutti d’accordo: i governi non possono lasciare alle aziende private la libertà di decidere su questi aspetti della nostra vita digitale. Gli interessi delle aziende sono troppo lontani da quelli dei cittadini e delle società umane per concedere loro questo potere.
In conclusione, si può dire che i tentativi di “addomesticare” la belva Trusted Computing “tagliandole le unghie” tecnologicamente, in vari modi, sembrano condannati al fallimento. Nessuna azienda produttrice accetterà mai di “castrare” la tecnologia Trusted Computing permettendo all’utente di falsificare i dati generati dal Fritz Chip, come vorrebbero Seth Schoen, Klaus Kursawe e Christian Stüble. Sembra più probabile che si possa costringere le aziende a riconoscere la superiorità tecnica e la maggiore accettabilità sociale delle Smart Card, costringendole quindi ad abbandonare il progetto Trusted Computing per passare a qualcosa di più “portatile” e più “gestibile”.
In ultima analisi, tuttavia, quello che è veramente necessario per addomesticare la belva Trusted Computing è una aperta discussione democratica che porti ad un deciso intervento dei governi nazionali e delle associazioni dei consumatori, due entità che finora sono rimaste del tutto latitanti.
Il Trusted Computing è una tecnologia potenzialmente in grado di sconvolgere la nostra vita quotidiana ed il mercato. Di conseguenza il suo uso deve essere deciso e regolamentato dagli organi di governo delle nazioni interessate, non dalle aziende private che dominano il mercato.
Alessandro Bottoni
http://laspinanelfianco.wordpress.com
Le precedenti release di Untrusted sono qui