Trusted Computing - Voce in Capitolo

Transcript

Trusted Computing - Voce in Capitolo
Trusted Computing
Opportunità o minaccia?
Release 0.9 Beta
For testing purpose ONLY – Do not re-distribute!
Alessandro Bottoni – 2005
[email protected]
Licenza Creative Commons di tipo
"Attribution Non-commercial No Derivatives"
(http://creativecommons.org/licenses/by-nc-nd/2.5/)
Introduzione
Cosa sta succedendo?
Dal 1997/1998, praticamente tutti i principali produttori
mondiali di hardware stanno alacremente sviluppando una
nuova tecnologia di sicurezza nota con il nome di "Trusted
Computing" o "Trustworthy Computing" (d'ora in poi
semplicemente TC). Questa tecnologia dovrebbe invadere
massicciamente il mercato a partire dal 2006. Il TC è l'erede di
una tecnologia già nota e considerata potenzialmente molto
pericolosa: “TCPA” o “Palladium”. I "dispositivi digitali"
interessati da questa innovazione saranno i computer da
tavolo, i computer portatili, i telefoni cellulari intelligenti, le
"agendine elettroniche", i ricevitori TV (satellitari e digitale
terrestre), i lettori ed i masterizzatori di DVD e CD, i lettori di
MP3 e molti dispositivi ancora in fase di sviluppo. In altri
termini, questa rivoluzione interesserà qualunque dispositivo
digitale destinato al mercato civile. Dato che i produttori
coinvolti nel progetto Trusted Computing rappresentano
complessivamente oltre il 90% del mercato, e detengono
praticamente tutti i brevetti necessari per produrre qualunque
tipo di dispositivo digitale, tra qualche anno sarà praticamente
impossibile acquistare dispositivi digitali privi di tecnologia
TC. Si tratta quindi di una rivoluzione tecnologica di portata
planetaria e che avrà sicuramente profondi effetti sia sul
mercato che sulla nostra vita quotidiana.
Perchè questo libro?
In base a quanto abbiamo appena detto, dovrebbe essere
chiaro che il TC è una tecnologia che non può essere ignorata.
Prima che il nostro mercato venga silenziosamente invaso da
dispositivi basati su questa tecnologia è necessario che gli
utenti, gli specialisti di settore, i manager delle aziende ed i
legislatori ne siano adeguatamente informati e che abbiano
modo di valutare attentamente le opportunità ed i rischi che
questa tecnologia comporta. Per questo motivo abbiamo
deciso di raccogliere in questo testo le principali informazioni
tecniche disponibili sulla tecnologia TC ed una analisi della
accesa discussione che si sta svolgendo attorno ad essa.
Come è strutturato questo libro
Questo libro è stato concepito come una "review", cioè una
analisi di quanto è stato scritto, da una parte e dall'altra, sulla
tecnologia TC. Abbiamo adottato questo approcio perchè ci è
sembrato il modo migliore di mettere il lettore in contatto con
le informazioni ed il
materiale che sono solitamente
disponibili solo in Rete. In questo modo è possibile esporre il
lettore alle opinioni più qualificate che sono state espresse su
questo delicato argomento. I documenti utilizzati sono
descritti nell'Appendice A e sono tutti facilmente reperibili sul
World Wide Web di Internet. Alcuni di essi, che non sono
coperti da copyright, sono disponibili nelle appendici di
questo libro.
Il primo capitolo contiene una breve descrizione di questa
tecnologia e del suo funzionamento. Questa descrizione è
largamente basata sui documenti ufficiali dei produttori e
dovrebbe risultare abbastanza comprensibile anche per un
lettore non molto preparato.
Il secondo capitolo descrive le applicazioni previste per il
Trusted Computing e quelle non ufficialmente previste ma
tecnicamente possibili. Da questo capitolo cominciano ad
emergere alcune preoccupanti implicazioni din questa
tecnologia.
Il terzo capitolo esamina le principali critiche che vengono
mosse al Trusted Computing e rende conto della pesante
polemica in corso su questo argomento. In molti sensi, questo
è il capitolo centrale del libro.
Il quarto capitolo esamina più in dettaglio i rischi che possono
derivare da una adozione del TC su larga scala.
Il quinto capitolo descrive quali sono le possibili vie di fuga da
questa tecnologia. Ciò che trovate descritto in questo capitolo
è basato sull'assunto che gli utenti decidano di non adottare
questa tecnologia. Molte delle soluzioni che vengono descritte
in questo capitolo sono ancora del tutto ipotetiche e
richiederanno l'azione di utenti, produttori e governi per
diventare realmente praticabili.
L'ultimo capitolo contiene le conclusioni.
Nel testo vengono usati molti acronimi e molti termini tecnici.
Li trovate spiegati nel glossario. In tutto il testo, la sigla TC
indica l'insieme di tecnologie comunemente noto come
Trusted Computing o Trustworthy Computing.
L'autore
Alessandro Bottoni è un programmatore, sistemista e technical
writer che si occupa principalmente di tecnologie per Internet
e di sicurezza. Negli ultimi anni ha lavorato per diverse
aziende leader nel loro settore ed ha pubblicato vari articoli
sulle riviste italiane dedicate a Linux.
La licenza
Questo libro è disponibile in formato digitale (PDF) ed è
coperto da una licenza "Creative Commons" estremamente
permissiva. In pratica, nella misura in cui non usate questo
testo a fini di lucro, potete leggerlo, copiarlo e distribuirlo
liberamente.
La piattaforma usata
Questo libro è stato scritto su SuSe Linux OSS 10.0 usando
OpenOfficeOrg 2.0, Mozilla Firefox 1.5, Mozilla Thunderbird
1.0.7 ed altri programmi FLOSS. ll file PDF di questo
documento è stato generato usando il filtro PDF interno di
OpenOffice Writer 2.0.
Per quanto riguarda gli aspetti in qualche modo correlati alla
discussione sul Trusted Computing, la piattaforma usata per
creare questo libro ha mostrato di possedere le seguenti
caratteristiche.
Caratteristica
Valore
Costo totale del software
Euro 0 (zero)
Crash di sistema rilevati durante
lo sviluppo
0 (zero)
Virus rilevati nella posta
elettronica o nei supporti usati
3
Contaminazioni virali andate a
buon fine
0 (zero)
Attacchi via Internet rilevati dal
firewall (ipchains + shorewall)
circa 1500
Attacchi andati a segno
0 (zero)
Messaggi di posta indesiderata
ricevuti
oltre 200
Messaggi di posta correttamente oltre 200
archiviati come indesiderati dal
client (Mozilla Thunderbird 1.0.7)
Messaggi di posta erroneamente
archiviati come posta
indesiderata dal client (Mozilla
Thunderbird 1.0.7)
0 (zero)
Tempo speso nella manutenzione circa 10 minuti (su un totale di
del sistema
oltre 120 ore di lavoro)
La piattaforma hardware che ospita SuSe Linux 10.0 OSS è la
seguente:
• CPU Pentium III a 500 Mhz
• 256 Mb RAM
• Due hard disk per complessivi 13 Gb, di cui 12 dedicati a
SuSe Linux.
• Connessione Internet via ADSL con Router D-Link (Linux-
based)
Cos'è il Trusted Computing
Le ragioni del Trusted Computing
Tecnicamente, il Trusted Computing è un insieme di strumenti
hardware e software studiati per proteggere i nostri computer
da vari tipi di minacce, tra cui i virus e gli hacker (o, più
esattamente, i “cracker” e gli “intruder”). Le ragioni
fondamentali per cui si è arrivati allo sviluppo del Trusted
Computing sono due: da un lato la situazione globale della
sicurezza informatica è ormai talmente grave da rappresentare
un serio problema per lo sviluppo dell'intero settore e
dall'altro non sembra che sia possibile risolvere questo
problema senza un drastico cambiamento nella nostra
tecnologia informatica.
Purtroppo, quale sia la situazione della sicurezza informatica è
qualcosa di ben noto a tutti gli utilizzatori:
• Siamo
costretti ad acquistare, installare e studiare
programmi antivirus, firewall ed altre diavolerie solo per
riuscire ad usare normalmente il nostro PC in ufficio od a
casa.
• Nonostante queste protezioni, succede sempre più spesso
di rimanere colpiti da virus, worm, Trojan horse, adware,
spyware e altri flagelli che ci costringono a reinstallare il
sistema operativo e tutti i programmi applicativi, perdendo
ore di lavoro e, spesso, grandi quantità di documenti e di
dati che per noi sono importanti.
• Anche quando non viene rilevata nessuna contaminazione e
nessuna intrusione, il nostro PC sembra sfuggire al nostro
controllo e si rifiuta di collaborare come se fosse un essere
vivente.
• Persino i tecnici specializzati hanno gettato la spugna e
consigliano sempre più spesso di “spianare il disco e
reinstallare tutto da zero”.
Il Trusted Computing è stato studiato e sviluppato per dare
una risposta definitiva alla richiesta di sicurezza che viene
dagli utenti.
I punti deboli dei nostri sistemi informatici
Le ragioni della triste situazione in cui giace la nostra
sicurezza informatica sono molte ma gli specialisti del settore
sono riusciti a distillare una mezza dozzina di cause
fondamentali. Nel suo articolo “The need for TCPA”, David
Safford elenca i seguenti punti deboli fondamentali.
• Programmi non sicuri
• Programmi non correttamente configurati
• Programmi difettosi
I programmi non sicuri sono quelli che, per varie ragioni, sono
stati progettati senza tenere presenti le esigenze della
sicurezza e che quindi risultano intrinsecamente insicuri
quando vengono utilizzati in un ambiente ostile come
Internet. Tra questi programmi, David Safford elenca FTP e
Telnet, due programmi di rete che hanno la pessima abitudine
di
inviare
password
in
rete
senza
proteggerle
crittograficamente.
Ad esser sinceri, quando si parla di programmi
intrinsecamente insicuri, non sono FTP e Telnet i primi
programmi che vengono in mente. Questi due programmi
sono due servizi di sistema tipici dei server di rete e, di
conseguenza, non vengono installati sul tipico “PC Windows”
che l'utente medio si trova ad utilizzare (e che rappresenta il
93% del parco installato). Inoltre, nel corso degli ultimi 5 anni,
FTP e Telnet sono stati sostituiti quasi ovunque dalle loro
controparti sicure, cioè SCP ed SSH, rispettivamente. Secondo
il comune buon senso, e secondo molti specialisti, i primi
programmi intrinsecamente insicuri che avrebbero potuto (e
dovuto) essere citati al posto di FTP e Telnet sono Microsoft
Windows, Microsoft Office (Word, Excel, PowerPoint e Access),
Microsoft Internet Explorer e Microsoft Outlook. Tutti questi
diffusissimi programmi, infatti, sono stati progettati e costruiti
in un epoca in cui la sicurezza non rappresentava ancora un
problema e sono afflitti da pesanti e ben note vulnerabilità. In
questo senso corrispondono perfettamente alla definizione di
programma non sicuro. Vedi a questo proposito l'Appendice
M.
I programmi non correttamente configurati sono quelli che pur
possedendo le necessarie caratteristiche di sicurezza sono
normalmente configurati in modo da non utilizzarle. David
Safford cita a questo proposito NFS, il sistema usato per
condividere file e stampanti sulle reti Unix.
Anche in questo caso, verrebbe più naturale usare altri
esempi. NFS, infatti, è stato largamente soppiantato dal più
versatile e più sicuro Samba e comunque viene usato solo da
amministratori di sistema che sanno bene come usarlo nel
modo corretto. I programmi Microsoft citati in precedenza,
invece, sono solitamente affidati a persone che possono
vantare una scarsissima preparazione tecnica. Incredibilmente,
per molti anni i dispositivi di sicurezza di questi programmi
sono stati consegnati in uno stato disabilitato al momento
dell'installazione,
costringendo
l'utente
ad
abilitarli,
configurarli e gestirli di persona. Questo è il caso, ad esempio,
dell'Interprete Visual Basic di MS Internet Explorer e di MS
Outlook. Questo interprete, da solo, viene
considerato
responsabile di oltre il 90% delle epidemie di virus che si sono
diffuse su Internet negli ultimi anni. Inutile dire che la
stragrande maggioranza degli utenti non sa nemmeno che
questo interprete esista e quindi non è certamente in grado di
disabilitarlo.
I programmi difettosi sono quelli che presentano errori di
progettazione o di implementazione tali da comprometterne
la sicurezza. David Safford non fa esempi ma, anche in questo
caso, viene spontaneo pensare ai prodotti Microsoft.
Praticamente tutti i programmi Microsoft, infatti, sono
notoriamente afflitti da seri problemi di questo tipo, al punto
che persino enti al di sopra di ogni sospetto come il CERT
(Computer
Emergency
Response
Team,
vedi:
http://www.cert.org/) è costretto a sconsigliarne l'uso.
Queste puntualizzazioni riguardo ai prodotti Microsoft
possono sembrare gratuite ed ingiustificate ma non lo sono.
Non bisogna dimenticare, infatti, che praticamente tutti i
problemi di sicurezza che vengono descritti come “irrisolvibili
senza l'ausilio del Trusted Computing” sono in realtà flagelli
che colpiscono solo l'ambiente Microsoft (Windows, Office,
Internet Explorer ed Outlook). Altri ambienti di lavoro, come
Linux, Unix, BSD e McOS X, sono tradizionalmente immuni da
questi problemi senza nessun bisogno di ricorrere a
tecnologie hardware/software come il Trusted Computing. Di
conseguenza, sostenere che la situazione corrente della
sicurezza informatica impone l'adozione del Trusted
Computing è come minimo fuorviante.
Inoltre, và anche detto che non tutti gli osservatori
riconoscono nei tre punti elencati da David Safford i motivi
principali della scarsa sicurezza dei nostri sistemi informatici.
Secondo alcuni “dissidenti”, tra cui l'autore di questo testo, le
vere cause del “problema sicurezza” sarebbero le seguenti.
• L'abitudine generalizzata di sviluppare software nel segreto
delle grandi aziende e di rilasciare solo la versione
compilata dei programmi (illeggibile per un essere umano)
rende impossibile verificare che i programmi vengano
progettati dedicando la necessaria attenzione alla sicurezza
e che non contengano difetti. L'intero movimento del
software Open Source nasce proprio da questa
constatazione e, negli ultimi 10 anni, ha chiaramente
dimostrato che il software sviluppato in modo “aperto” è
nettamente più sicuro di quello tradizionale.
• La
scarsissima
preparazione
tecnica
degli
utenti
(soprattutto in Italia) li mette nella condizione di non saper
scegliere il programma giusto, di non saperlo installare e
configurare e di non saperlo gestire ed utilizzare nel modo
corretto. Questa situazione apre la strada ad una
lunghissima serie di attacchi che sono diretti non tanto al
software quanto al suo utente. L'esempio più eclatante di
questo tipo di attacchi è il phishing (vedi glossario) ma
anche la diffusione dei virus attraverso la posta elettronica
è solitamente da imputare in larga misura alla
impreparazione dell'utente.
• Lo scarso interesse dei privati e delle aziende per il
materiale che risiede sui loro PC li porta a non acquistare
programmi antivirus e firewall, a non investire tempo nella
formazione degli utenti ed a disinteressarsi dei backup.
Questa situazione è una vera manna dal cielo per i
malintenzionati. Nessuna tecnologia potrà mai rimediare ai
danni che può produrre un utente irresponsabile.
Secondo questi osservatori, il problema della sicurezza risiede
quindi nell'ambiente umano che vive attorno al sofwtare ed ai
computer, un ambiente umano fatto di imprenditori avidi e
privi di scrupoli da un lato e di utenti ignoranti ed
irresponsabili dall'altro. Non si tratterebbe quindi di un
problema da affrontare con nuovi strumenti tecnici (come il
Trusted Computing) ma piuttosto attraverso una serie di
interventi di carattere sociale ed industriale.
La migliore dimostrazione della validità di questo punto di
vista viene dall'ambiente Linux. Un sistema operativo e dei
programmi sviluppati in modalità open source hanno reso
possibile quel livello di verifica delle caratteristiche del
software che è precluso al software tradizionale. Il
coinvolgimento attivo degli utenti nel processo ha creato un
livello di consapevolezza e di responsabilità che ha eliminato
quasi completamente i problemi di sicurezza legati
all'ingegneria sociale (vedi glossario). In questo momento,
Linux, Unix e BSD possono già vantare un livello di sicurezza
invidiabile, senza fare uso di tecnologie dedicate come il
Trusted Computing.
Quanto è grave la situazione?
Ma quanto è realmente grave la situazione della sicurezza
informatica? Secondo David Safford, e secondo molti altri
specialisti, la situazione è talmente grave da rendere quasi
impossibile lo sviluppo di alcuni settori cruciali dell'economia
digitale, come il commercio elettronico. Tra gli osservatori che
la pensano in questo modo ci sono anche Roger Schell e
Michael Thompson, gli autori di “Platform Security: what is
lacking”, uno dei lavori di ricerca che sono all'origine del
Trusted Computing.
Nel suo articolo “The need for TCPA”, David Safford riporta un
interessante grafico del CERT che mostra quale sia il numero
dei punti vulnerabili dei programmi che vengono scoperti nel
mondo ogni anno. Già nel 2001 venivano scoperti ben 7
(sette) punti vulnerabili al giorno. Nel 2002 questo numero era
già raddoppiato e nei soli primi 9 mesi del 2005 sono già stati
rilevati oltre 4000 punti deboli (circa 15 al giorno). Le
statistiche aggiornate sono disponibili a questa URL:
http://www.cert.org/stats/cert_stats.html
David Safford, giustamente, commenta in questo modo la
situazione:
Il problema è che rilevando difetti nel software a questo
ritmo, diventa quasi impossibile applicare le patch
necessarie a correggerli. Per gli hacker questa è una
situazione ideale, dato che ogni sistema presenterà almeno
uno di questi punti vulnerabili. I sistemi client sono
particolarmente vulnerabili, dato che tipicamente non c'è
un amministratore di sistema che si preoccupi di applicare
le patch.
Safford cerca anche di capire da dove nasca questa situazione:
Perchè vengono scoperti così tanti difetti? In primo luogo
bisogna tenere presente che i moderni sistemi informatici
sono incredibilmente complessi. Un tipico sistema Windows
o Linux, dotato delle principali applicazioni da ufficio, è
formato da qualcosa come 100 milioni di righe di codice.
Molti studi recenti hanno dimostrato come il tipico prodotto
software dei nostri giorni contenga circa un difetto legato
alla sicurezza ogni mille righe di codice. Di conseguenza, il
nostro tipico sistema può avere qualcosa come 100.000
punti vulnerabili. Non c'è da sorprendersi se continuiamo a
rilevare 5000 di questi punti vulnerabili ogni anno e che il
ritmo a cui si continua a scoprirli stia aumentando in modo
così drammatico.
Con questi presupposti, le sue conclusioni non possono che
essere decisamente pessimistiche:
I nostri sistemi operativi e le nostre applicazioni sono così
complesse
che difetti e punti vulnerabili sono
sostanzialmente inevitabili. Di conseguenza, è di
importanza cruciale fornire un tipo di protezione hardware
di base alle delicate
chiavi di autenticazione e di
crittografia che sia in grado di funzionare persino in
presenza di software vulnerabile. Il TCPA fornisce queste
funzionalità hardware e protegge le chiavi di autenticazione
e di crittografia individuali da attacchi remoti via software.
Purtroppo, quello che dice Safford è vero. La situazione della
sicurezza informatica è effettivamente molto grave, almeno
per quello che riguarda quel 93% di utenti che usa PC Intel
dotati di
Microsoft Windows. Qualunque utente può
facilmente convincersene anche senza scomodare uno degli
innumerevoli e serissimi studi che sono stati condotti su
questo argomento. Basta osservare i file di log dei sistemi
antivirus e dei firewall per rendersene conto: un normale
utente che sia collegato ad Internet attraverso una
connessione ADSL subisce diversi tentativi di attacco ogni
minuto. Fino all'avvento dei sistemi antivirus di rete, era
normale rilevare almeno 3 o 4 messaggi di posta elettronica
contenenti virus ogni giorno. Ancora oggi, si possono ricevere
facilmente ogni giorno uno o due messaggi di posta
contenenti tentativi di phishing di qualche tipo. Negli ultimi
tempi, grazie all'avvento di Internet e della posta elettronica, è
diventata una vera tradizione dover fare i conti con almeno
una o due rovinose epidemie di virus all'anno. Dal canto loro,
anche i server di rete, che pure sono abitualmente basati su
Linux, Unix o altri sistemi operativi considerati “sicuri”,
devono far i conti con un livello di minaccia sempre più
intenso e sempre più pericoloso. Senza un uso esteso di
firewall, di antivirus di rete e, soprattutto, senza l'assidua
opera di manutenzione effettuata dagli amministratori di
sistema, le nostre aziende passerebbero gran parte del loro
tempo in condizioni di “server down”.
In realtà, la situazione è persino peggiore di come la descrive
Safford. Secondo molti specialisti, è di fatto ingestibile già da
diversi anni. Il motivo di tanto pessimismo è un micidiale mix
di ragioni tecniche e sociali. Alla base di tutto c'è il fatto che,
come abbiamo già detto, il 93% dei sistemi esistenti sono
estremamente vulnerabili ad ogni sorta di attacco e, cosa
ancora più grave, sono affidati a persone del tutto impreparate
e spesso del tutto irresponsabili. Il resto è una conseguenza di
questo stato di cose.
La prima di queste conseguenze è che l'opera di difesa degli
amministratori di sistema viene spesso vanificata dai
comportamenti irresponsabili degli utenti. Ad esempio, esiste
una diffusa tendenza ad usare i sistemi (aziendali e casalinghi)
per scaricare musica abusivamente dalle reti peer-to-peer.
Alcuni dei programmi client usati a questo scopo contengono
notoriamente dei programmi adware (che visualizzano
pubblicità) o addirittura spyware (che spiano il comportamento
dell'utente). Come se non bastasse, questi stessi programmi
sono in grado di creare connessioni crittografate con il mondo
esterno, sfuggendo al controllo di chiunque, persino
dell'utente. Nonostante il chiaro pericolo che questi
programmi rappresentano, una larga parte degli utenti li usa,
soprattutto sui sistemi disponibili in azienda, e li autorizza
esplicitamente ad installare i propri componenti adware e
spyware! Lo stesso avviene per molti siti web pornografici che
impongono all'utente di usare programmi particolari per
vedere le immagini o per accedere al sito. Sebbene sia
assolutamente ovvio che questi programmi rappresentano una
minaccia, una larga parte degli utenti acconsente alla loro
installazione ed al loro uso pur di poter vedere le immagini!
Questi comportamenti sono dovuti ad ignoranza ed a
mancanza
di
senso
di
responsabilità
e
rendono
completamente inutile il lavoro fatto dagli amministratori di
sistema per proteggere le reti. Questi comportamenti rendono
anche vana l'installazione di firewall e programmi antivirus sui
PC di casa.
Come se tutto questo non bastasse, negli ultimi anni si è
riscontrata una deleteria tendenza delle aziende a non
assumere gli amministratori di sistema e gli specialisti di
sicurezza che sarebbero necessari. Dietro questa scelta ci
sono certamente delle difficoltà economiche innegabili ma c'è
anche la convinzione che il PC sia sostanzialmente un
problema del dipendente che lo utilizza. Naturalmente, una
volta affidato nelle mani di una persona che non ha né la
preparazione tecnica né l'interesse necessari per proteggerlo,
il sistema diventa immediatamente preda di hacker, virus ed
ogni altro flagello digitale esistente.
Dato che le infezioni e le intrusioni possono facilmente
passare da un sistema ad un altro attraverso la rete locale o
Internet, una volta che alcuni sistemi siano finiti sotto il
controllo degli hacker, o siano stati contaminati da virus, è
solo questione di tempo prima che il problema finisca per
interessare intere LAN ed intere sezioni di Internet. In queste
condizioni, è effettivamente utopistico pensare che si possano
sfruttare appieno le grandi potenzialità dell'informatica
contemporanea e di Internet.
Cosa occorre per rendere sicuri i nostri sistemi?
Come abbiamo appena visto, tutti gli specialisti sono
d'accordo sul fatto che la situazione globale della sicurezza
informatica sia drammatica. Persino i più acerrimi nemici del
Trusted Computing converrebbero facilmente su questo
punto. Tuttavia, questo consenso non esiste più se si
esaminano le soluzioni che vengono proposte dalle varie parti.
Secondo gli specialisti che sostengono il Trusted Computing, e
molti altri analisti indipendenti, per affrontare seriamente il
problema della sicurezza è necessario introdurre nei computer
della prossima generazione alcune funzionalità di base che
permettano di proteggere in modo adeguato alcuni elementi
critici del sistema.
Gli elementi critici fondamentali che si intende proteggere
sono sostanzialmente delle chiavi crittografiche usate per
identificare oggetti (componenti hardware, programmi,
documenti ed anche utenti) e per cifrare/decifrare file
(documenti e programmi) e flussi di dati (comunicazioni
digitali tra computer).
Le funzionalità fondamentali che vengono richieste al Trusted
Computing sono quindi soltanto due:
• la capacità di generare e conservare in modo sicuro delle
chiavi crittografiche
• la capacità di crittografare un insieme di dati applicando
alcuni algoritmi ben noti
Queste funzionalità di base sono sostanzialmente le stesse
che vengono messe a disposizione già da diversi anni da
alcuni tipi di chip crittografici esistenti, come l'ESS (Embedded
Security Subsystem) di IBM, e da alcuni tipi di Smart Card.
Sono anche le stesse funzionalità che vengono fornite da
programmi come PGP (Pretty Good Privacy) e GPG (GNU Privacy
Guard). Non c'è quindi nulla di realmente rivoluzionario nel
TC. Grazie a queste capacità di base i sistemi Trusted
Computing potrebbero fornire le funzionalità necessarie a
“blindare” i nostri sistemi informativi, ad esempio:
• la possibilità di identificare in modo sicuro componenti
hardware, interi sistemi, programmi, documenti e persone.
• la possibilità di proteggere crittograficamente programmi,
documenti, comunicazioni e flussi di dati di vario tipo
La “terapia” proposta dai sostenitori del TC consiste quindi
nella introduzione di un innovativo “sistema immunitario” nei
computer della prossima generazione.
Secondo molti osservatori contrari al TC, invece, questa
terapia è inutile e molto pericolosa. Come vedremo meglio in
seguito, secondo gli avversari del TC la soluzione ai nostri
problemi passa attraverso un cambiamento radicale nelle
abitudini di acquisto degli utenti e delle aziende ed attraverso
un cambiamento di mentalità nei “decision maker”.
Cos'è il Trusted Computing
Il Trusted Computing è una tecnologia composta
da
dispositivi elettronici (hardware) e da programmi (software)
che permette di proteggere un sistema informatico dai
principali tipi di attacchi. In realtà, come vedremo nel seguito,
esistono diversi progetti e diverse implementazioni del
concetto di Trusted Computing. Queste implementazioni
svolgono funzioni diverse e sono caratterizzate da approci
diversi allo stesso problema. Per il momento, possiamo dire
che il TC permette di difendere i seguenti elementi del sistema
dai tipi di attacco descritti a fianco.
Elemento da difendere
Tipi di attacco previsti
Programmi (Applicazioni)
e Sistema Operativo
- Corruzione da parte di programmi
(virus)
- Attacco da parte di persone (hacker)
Documenti e file
multimediali (Musica e
Film)
- Accesso da parte di programmi non
autorizzati (lettori diversi da quello
originale)
- Accesso da parte di persone non
autorizzate (hacker)
- Copia e distribuzione non autorizzata
Flussi di dati (audio e
video)
- Intercettazione da parte di programmi
non autorizzati
- Intercettazione da parte di persone
non autorizzate (hacker)
- Salvataggio abusivo su disco
Comunicazioni tra diversi - Intercettazione ed analisi da parte di
computer collegati in rete persone e programmi non autorizzati
(LAN o Internet)
Comunicazione tra diversi - Intercettazione ed analisi da parte di
componenti all'interno
programmi non autorizzati (anche
dello stesso computer
eseguiti dal proprietario del PC)
Come si può notare, non sempre questa tecnologia difende il
sistema da attacchi provenienti dall'esterno. In alcuni casi, il
TC difende alcuni elementi del sistema da un attacco che può
essere perpetrato solo dal suo stesso
proprietario o
comunque da una persona che abbia accesso fisico al sistema.
In altri termini, in alcuni casi il TC non difende il sistema (e
quindi l'utente) da un attacco esterno ma piuttosto difende un
file (e quindi il proprietario dei diritti su di esso) dall'azione
dell'utente/proprietario del computer. Questa curiosa
caratteristica del TC è alla base di alcune delle critiche più
aspre che vengono mosse a questo progetto e verrà quindi
discussa ampiamente in questo testo. A questo proposito, vale
la pena ricordare che il TC non è concepito per essere usato
solo all'interno dei computer: praticamente qualunque
dispositivo digitale può essere dotato di questo tipo di
protezione (e presto lo sarà).
Fisicamente parlando, il TC è formato da tre elementi che
poggiano uno sull'altro. Al livello più basso e più
fondamentale si trova un particolare microchip chiamato TPM
(Trusted Platform Module) o, più confidenzialmente, Fritz Chip
(in onore del Senatore Fritz Hollings che si è speso
instancabilmente per rendere obbligatoria questa tecnologia
su tutti i dispositivi digitali commercializzati sul mercato USA).
Questo chip svolge solo alcune funzioni crittografiche
fondamentali. La tabella seguente le riporta in dettaglio.
Funzioni del Fritz Chip
Utilizzo
Identificatore crittografico
univoco (Attestation Identity
Key, o AIK)
Identificazione sicura ed univoca del
chip, dell'intero sistema o dell'utente.
Generazione di chiavi
crittografiche e di "hash"
Usata dalle funzioni crittografiche di
codifica/decodifica e di verifica di
integrità
Funzioni crittografiche di
codifica e decodifica in
tempo reale (con protocolli
RSA, SHA-1 e HMAC)
- Protezione crittografica di
programmi, documenti e canali di
comunicazione.
- Firma digitale di programmi,
documenti e intere configurazioni del
sistema.
- Verifica di integrità di programmi,
documenti ed intere configurazioni
Funzioni di gestione
-
Abilitazione del sistema TC
Salvataggio di chiavi per il backup
Scambio di chiavi con altri sistemi
Altri tipi di gestione
Come abbiamo già fatto notare, le funzionalità offerte dal Fritz
Chip sono molto simili a quelle fornite da alcuni famosi
programmi di crittografia a chiave pubblica, come PGP (Pretty
Good
Privacy,
vedi
http://www.pgp.com/
,
http://www.pgpi.org/ e http://www.openpgp.org/) e GPG
(GNU Privacy Guardian, vedi: http://www.gnupg.org/).Queste
funzionalità sono anche le stesse che vengono fornite dal chip
ESS (Embedded Security Subsystem) di IBM presente nei laptop
IBM e Lenovo ThinkPad di gamma alta (vedi: http://www1.ibm.com/support/docview.wss?uid=psg1MIGR-46391-IT) .
Il Fritz Chip può essere implementato sia sotto forma di
microchip separato, che viene saldato sulla scheda madre del
dispositivo, sia come circuiteria specializzata che viene "incisa"
all'interno della CPU di un computer o di un altro dispositivo.
Il Fritz Chip viene utilizzato come componente crittografico di
base all'interno di una architettura hardware più complessa. I
principali progetti di di “secondo livello” sono il progetto
LaGrande di Intel, il progetto Presidio (AMT) di AMD ed il
progetto TrustZone di ARM. Queste architetture hardware
mettono a disposizione alcune nuove funzionalità. La
seguente tabella elenca ad esempio quelle previste
dall'architettura LaGrande di Intel.
Funzionalità
Esecuzione protetta dei
programmi (Protected
Execution)
Utilizzo
Protezione della esecuzione dei
programmi dalle interferenze di altri
programmi che girano sullo stesso
computer.
Memorizzazione sigillata dei Protezione crittografica dei documenti
documenti (Sealed Storage) che vincola l'utente ad una
configurazione conosciuta ed
"affidabile" del sistema per procedere
alla decifrazione.
Input protetto (Protected
Input)
Protezione del sistema contro i
programmi che leggono la pressione
dei tasti e le azioni del mouse (logger)
Output protetto (Protected
Output)
Protezione nei confronti di programmi
che registrano ciò che appare sullo
schermo o ciò che arriva all'uscita
della scheda audio.
Attestazione (Attestation)
- Verifica che la configurazione del
sistema sia la stessa già vista in
occasione di una precedente richiesta
dello stesso tipo. In altri termini,
certifica che il sistema non abbia
subito cambiamenti.
- Verifica anche che un singolo
programma od un singolo documento
non sia stato alterato.
Funzionalità
Utilizzo
Attestazione remota
(Remote Attestation)
Certifica ad un interlocutore remoto
che la configurazione del sistema sia
la stessa già vista in occasione di una
precedente richiesta dello stesso tipo.
In altri termini, certifica che il sistema
non abbia subito cambiamenti, anche
effettuati dal suo legittimo
proprietario.
Avviamento protetto
(Protected Launch o
Protected Boot)
Verifica che l'intera sequenza di
avviamento del sistema passi
attraverso stati conosciuti ed
"affidabili".
Come potete vedere, anche in questo caso il TC non sempre
difende il sistema (e quindi l'utente) da minacce esterne. In
alcuni casi fornisce delle funzionalità che servono soprattutto
a difendere un interlocutore esterno (ad esempio un fornitore
di software o di contenuti multimediali) dall'azione del
legittimo proprietario del sistema. Questo è il caso
dell'attestazione remota, ad esempio.
L'ultimo strato di TC è rappresentato dal sistema operativo e
dai programmi (applicazioni). Microsoft ha in avanzata fase di
sviluppo una particolare versione di Windows Vista che
conterrà il software necessario a sfruttare le potenzialità
offerte dall'architettura LaGrande di Intel (e forse Presidio di
AMD). Nella terminologia di Microsoft questo progetto è noto
come NGSCB (Next Generation Secure Computing Base). In
passato era noto come "Palladium".
NGSCB è formato da due componenti: un particolare "kernel"
del sistema operativo dedicato alla sicurezza, chiamato Nexus,
ed una serie di programmi che sfruttano le sue capacità.
Questi programmi sono chiamati NCA (Nexus Computing
Agents) e possono essere sia intere applicazioni (come
Outlook o Internet Explorer) che semplici componenti di
programmi più ampi.
Lo strato software non fornisce nuove funzionalità ma rende
possibile lo sfruttamento di quelle messe a disposizione dal
sottostante strato hardware.
Quanti sono i progetti di Trusted Computing?
Ma quanti sono allora i progetti Trusted Computing?
Attualmente, ne esiste almeno una mezza dozzina, in parte
destinati al mondo dei computer ed in parte destinati al
mondo dei dispositivi digitali portatili e da salotto (i prodotti
di “consumer electronics”, come vengono spesso chiamati).
I progetti del Trusted Computing Group
La tecnologia di base del Trusted Computing viene sviluppata
da un apposito consorzio noto come TCG (Trusted Computing
Group). Questo consorzio non produce nessun dispositivo
digitale e si limita invece a rilasciare una serie di specifiche
tecniche che permettono ai suoi membri di creare dispositivi
standardizzati ed in grado di cooperare tra loro. Il consorzio
TCG segue lo sviluppo di diversi progetti attraverso degli
appositi “gruppi di lavoro”. I progetti più interessanti sono i
seguenti.
TRUSTED PLATFORM MODULE (TPM)
O
“FRITZ CHIP”
I TPM sono dei microchip che implementano le funzioni
crittografiche di base (creazione e gestione delle chiavi,
cifratura/decifratura secondo vari algoritmi, etc.) e che
possono essere usati come componenti (“moduli”) all'interno
di una architettura di sicurezza più complessa, come Intel
LaGrande o AMD Presidio. Solitamente vengono chiamati “Fritz
Chip”, in onore del senatore USA Fritz Hollings che vorebbe la
loro introduzione obbligatoria in tutti i dispositivi digitali
commercializzati sul mercato statunitense. Il TCG si occupa
della definizione delle specifiche tecniche di questi chip che
vengono poi prodotti da alcuni membri del consorzio, come
IBM e STMicroelectronics.
Una caratteristica molto importante delle specifiche del TPM è
che sono concepite in modo che le funzionalità di base
possano essere realizzate sia come chip fisicamente separato
dalla scheda madre del dispositivo ospite sia come circuiteria
integrata all'interno di un altro chip, come ad esempio
all'interno della CPU del dispositivo ospite.
TRUSTED NETWORK CONNECT (TNC)
TNC è un insieme di specifiche che permette di usare le
funzionalità
Trusted Computing per proteggere le
comunicazioni tra computer collegati tra loro in rete e per
svolgere alcune funzioni critiche, come l'autenticazione degli
utenti.
INFRASTRUCTURE
Il progetto infrastructure si occupa della definizione di una
infrastruttura comune e di interfacce che permettono ai vari
elementi della tecnologia Trusted Computing di cooperare tra
loro. Ad esempio, è questo gruppo di lavoro che si preoccupa
di stabilire come deve essere gestita la comunicazione
“Trusted” tra dispositivi mobili (telefoni cellulari) e dispositivi
fissi presenti su Internet (server), laddove le specifiche
esistenti presentano delle lacune.
PC CLIENT
Questo gruppo di lavoro si occupa della definizione delle
specifiche relative alla implementazione del Trusted
Computing sui normali PC da tavolo (i “client” dell'architettura
client/server di Internet).
SERVER
Questo gruppo di lavoro si occupa della definizione delle
specifiche relative alla implementazione del Trusted
Computing sui server (i “server” dell'architettura client/server
di Internet).
MOBILE
Una delle applicazioni più importanti del Trusted Computing
sarà quella sui dispositivi di comunicazione mobile, cioè i
telefoni cellulari di terza generazione (GPRS e UMTS), gli
“smart phone” ed i PDA dotati di modem interno. Un apposito
gruppo di lavoro del TCG ha provveduto a definire le
caratteristiche che devono avere i microchip usati su questi
dispositivi. Alcune aziende del TCG, come Nokia e Motorola
hanno già annunciato la disponibilità dei componenti Trusted
Computing all'interno dei loro telefoni cellulari di ultima
generazione.
SOFTWARE STACK
Questo gruppo di lavoro si occupa della definizione della API
(Application Programming Interface) dei dispositivi. La API è
l'insieme di funzioni che vengono messe a disposizione dei
programmatori per la creazione del software che usa le
funzionalità di questi dispositivi hardware.
STORAGE
Il TCG ha anche un gruppo di lavoro che si occupa della
definizione dei modi in cui i dati devono essere memorizzati
sui supporti digitali, ad esempio su dischi fissi e memorie
flash. Grazie al lavoro di questo gruppo stanno per essere
immesse sul mercato delle flash card dotate di funzionalità
Trusted Computing integrate. Queste funzionalità saranno
utili, ad esempio, a quelle software house che desiderassero
vendere i loro programmi o videogame memorizzandoli su
flash card di tipo standard.
Il consorzio TCG ha raccolto il testimone lasciato dal TCPA
(Trusted Computing Platform Alliance) nel 2002 ed ha
adottato le specifiche che erano state sviluppate fino a quel
momento. Attualmente (Novembre 2005) il TCG raccoglie oltre
110 membri, tra cui IBM, Intel, AMD, Microsoft, Sun, Hewlett
Packard e Sony. Sei di questi membri producono
industrialmente i Fritz Chip:
Atmel, Broadcom, Infineon,
Sinosun, STMicroelectronics e Winbond.
Intel “LaGrande” (LT)
Intel, che produce le CPU usate dai normali computer da
tavolo, da gran parte dei server e dai nuovi computer Apple,
sta attivamente sviluppando un proprio progetto di tecnologia
Trusted Computing conosciuto come progetto LaGrande o, più
semplicemente, LT (LaGrande Technology). Il progetto
LaGrande utilizza i TPM del TCG come moduli crittografici
fondamentali e costruisce attorno ad essi una struttura più
ampia e complessa.
A quanto pare, tra i progetti di Intel c'è anche l'intenzione di
rendere disponibili le funzionalità crittografiche di base
direttamente nella CPU del computer. In questo modo, il Fritz
Chip si troverebbe indissolubilmente “annegato” nella
circuiteria della CPU. Secondo alcune fonti, alcune funzionalità
di questo tipo, legate ad applicazioni DRM, sarebbero già state
silenziosamente incluse nei Pentium D immessi sul mercato
nella seconda metà del 2005. Intel ha ufficialmente smentito
questa notizia ma non tutti gli osservatori si sono considerati
soddisfatti da questa presa di posizione. Ai tempi
dell'immissione sul mercato del Pentium III, infatti, Intel era
già rimasta coinvolta in una situazione analoga che riguardava
il numero di serie del processore. Alcune gaffe che risalgono a
quel periodo hanno avuto l'effetto di rendere poco credibili le
affermazioni di Intel sulla reale struttura interna del Pentium
D.
AMD Security Excecution Mode (SEM) o “Presidio”
Anche AMD, che è il secondo produttore mondiale di CPU per
computer, sta sviluppando la sua architettura di Trusted
Computing. Su questo progetto si sa ancora poco ma è
verosimile che ricalchi le linee guida del progetto LaGrande di
Intel.
Microsoft Next Generation Secure Computing Base (NGSCB)
Il progetto di Microsoft è molto diverso dai precedenti in
quanto è l'unico che si occupi di software. NGSCB è il nome di
un ampio progetto che dovrebbe portare allo sviluppo di un
nuovo sistema operativo “Trusted” entro il 2008. All'interno di
questo progetto sono presenti diversi componenti.
NEXUS
Il Nexus è un nuovo kernel sicuro per il sistema operativo. A
quanto pare dovrebbe essere incluso in Windows Vista entro il
2008.
NEXUS COMPUTING AGENTS (NCA)
Gli NCA sono i componenti software (intere applicazioni o
semplici componenti) che utilizzano le funzionalità di Trusted
Computing della piattaforma sottostante (Nexus + piattaforma
hardware).
SECURE SUPPORT COMPONENT (SSC )
Gli SSC sono i chip crittografici di base usati dalla architettura
NGSCB. Dovrebbero essere equivalenti ai TPM Rel. 1.2 del
TCG.
Naturalmente, è previsto che Microsoft NGSCB faccia uso delle
funzionalità di Trusted Computing fornite dalle piattaforme
hardware Intel LaGrande e AMD Presidio.
Microsoft è stata costretta a rimandare più volte l'immissione
sul mercato di questa tecnologia, un tempo nota come
“Palladium”. Inizialmente, era previsto che Palladium arrivasse
sul mercato nel 2004. La forte reazione negativa di gran parte
degli osservatori ha dapprima costretto Microsoft a rimandare
e poi persino a cambiare nome al progetto in NGSCB, in modo
da cancellare, almeno in parte, le tracce delle polemiche che
avevano investito Palladium. Il cambiamento di nome non è
però stato abbastanza efficace da depistare completamente gli
osservatori e Microsoft si è trovata costretta a rimandare
ancora l'immissione sul mercato di questa tecnologie. Le
ultime notizie farebbero pensare ad una immissione sul
mercato di NGSCB nel 2008 come componente (naturalmente
obbligatorio) del secondo service pack del sistema operativo
Windows Vista.
In questo momento non è ancora noto cosa abbia intenzione
di fare Apple con il suo sistema operativo McOS X ma sembra
probabile che anche la casa di Cupertino finisca per adottare
questa tecnologia.
Le funzionalità del Trusted Computing
Per capire meglio quali siano le funzionalità fornite dalla
tecnologia Trusted Computing, e che cosa esse significhino
per l'utente, occorre analizzarle in modo più approfondito.
Esecuzione protetta (Protected Execution)
Questa è la caratteristica che viene meno contestata. Significa
semplicemente che durante la sua esecuzione un programma
viene protetto dalla interferenza di altri programmi. Questo
dovrebbe rendere inefficaci alcuni tipi di attacco (exploit) che
attualmente vengono portati a termine ai danni dei servizi di
sistema (come, ad esempio, il servizio software che gestisce la
condivisione di file e directory nelle reti Windows).
Memoria protetta (Curtained memory)
Anche la memoria protetta è la conseguenza di una esigenza
legittima. Questa funzionalità permette di proteggere i dati
usati da un programma dall'azione di altri programmi che
vogliano leggere questi dati o li vogliano modificare. Questa
funzionalità può anche essere usata per proteggere i contenuti
multimediali da copie abusive.
L'identificazione univoca del chip, del sistema e dell'utente
La presenza del Fritz Chip permette di identificare in modo
sicuro ed univoco il sistema che lo ospita e, indirettamente, il
suo utente e/o proprietario. Questo risultato può essere
ottenuto direttamente, grazie ad un identificatore crittografico
univoco inciso nel silicio del Fritz Chip od indirettamente, in
base ad un meccanismo più complesso legato alla
generazione di chiavi crittografiche.
Microsoft prevede esplicitamente che il Fritz Chip usato per
implementare la sua architettura di TC NGSCB sia dotato di un
identificatore univoco. Ecco cosa afferma Microsoft nel
documento NGSCB Security Model:
1
La “root of trust” (fonte iniziale della fiducia) di NGSCB è
resa il più possibile robusta includendo una coppia di chiavi
RSA pubblica e privata nel chip SSC che immagazzina i dati
segreti. La chiave privata del coprocessore crittografico
(SSC) non è accessibile: può solo essere usata per cifrare e
decifrare i dati segreti.
Le specifiche originali del TCG, molto più attente ai problemi
di privacy, non parlano direttamente di questo "numero di
serie" inciso nel silicio e preferiscono parlare di "Attestation
Identity Key" e di "Endorsement Key". In pratica, il TCG prevede
che il Fritz Chip sia in grado di generare in modo casuale un
numero illimitato di particolari chiavi per la crittografia a
chiave pubblica chiamate "attestation key" o "endorsement
key" ("chiavi di attestazione" o "chiavi di approvazione").
L'utente sarebbe in grado di usare una qualunque di queste
chiavi per attestare (cioè “dimostrare” o “certificare”) la propria
identità all'interlocutore. In questo modo, l'interlocutore
potrebbe sempre stabilire se sta parlando con la persona
"giusta", ma non potrebbe mai risalire alla sua vera identità.
Questa procedura ricorda da vicino quella usata dalle "session
key" di PHP sul web.
Comunque, sia la tecnica prevista dal TCG che il numero di
serie menzionato da Microsoft possono essere usati per
identificare con certezza ed in modo univoco il chip, il sistema
su cui è installato, la configurazione di questo sistema e, in
certi casi ed a certe condizioni, anche l'identità dell'utente.
Ma a cosa serve questa funzionalità? Che sicurezza aggiuntiva
ci fornisce?
All'utente normale, probabilmente nessuna. Per identificare
l'utente quanto basta per i nostri scopi ci sono sufficienti i
metodi esistenti. Una volta che abbiamo identificato l'utente
attraverso il suo indirizzo di posta elettronica, o attraverso
una password di accesso, non ci interessa sapere nient'altro. Il
fatto che il nostro interlocutore legga la sua posta elettronica
dal computer da tavolo o dal portatile, che usi MS Outlook o
1The NGSCB root of trust is made as strong as possible by embedding a
2048-bit RSA public and private key in the SSC that stores the shared secrets.
The coprocessor's private key cannot be accessed; it can only be used to
encrypt and decrypt secrets.
Eudora ci è del tutto indifferente.
Ben diversa è la situazione di chi vende software e contenuti
multimediali, magari attraverso Internet. Fa molta differenza
se il cliente sta guardando il film che ha acquistato da noi in
DVD sul suo computer o se invece ha "prestato" questo
materiale (e le relative password di accesso) ad uno o più dei
suoi amici che li stanno "consumando" sui rispettivi computer.
Attestazione (Attestation)
L'attestazione consiste nella generazione di un identificatore
crittografico univoco, chiamato "hash", che descrive la
struttura corrente di un documento, di un programma o di una
intera configurazione. Da un punto di vista logico, si tratta
della stessa operazione che viene eseguita quando si genera
l'hash di un file usando un CRC32 od un MD5 (vedi glossario).
Hash di questo tipo vengono già ampiamente utilizzati per
"fotografare" lo stato corrente di un file e per verificare, in
seguito, che il file non abbia subito cambiamenti a nostra
insaputa (ad esempio a causa di un virus). Questa tecnica è
normalmente usata dai sistemi di rilevamento delle intrusioni
(IDS, Intrusion Detection System) come TripWire e AIDE (vedi
Appendice H).
Anche il sistema di abilitazione di Windows XP prevedeva una
operazione di questo tipo: la configurazione hardware e
software del sistema veniva "fotografata" (o “misurata”)
generando un hash e questo hash veniva inviato alla Microsoft
via Internet. Microsoft rispondeva inviando una "password" che
autorizzava all'uso del sistema operativo. Se un elemento del
sistema, ad esempio il disco rigido, veniva sostituito
bisognava ripetere la procedura. In questo modo Microsoft ha
messo in atto una prima, rudimentale forma di lotta alla
pirateria digitale.
Il TC usa ampiamente questa tecnica per stabilire che un
programma, un componente hardware od una intera
configurazione non siano stati sostituiti o modificati. Questo
permette di rilevare immediatamente eventuali virus ma
permette anche di rilevare facilmente eventuali modifiche al
sistema. Quest'ultima funzionalità è alla base di un
meccanismo che permette di impedire eventuali violazioni
delle licenze d'uso del software (EULA: End User Licence
Agreement) o dei diritti d'autore sui contenuti digitali.
Ad esempio, se si tenta di bypassare il sistema anticopia di un
file musicale MP3 usando un lettore diverso da quello
originale, il sistema TC è in grado di rilevare questa
sostituzione del programma e di impedire l'accesso al file
MP3.
Attestazione remota (Remote attestation)
L'attestazione viene normalmente usata per attestare
(certificare) all'utente, ed ai programmi che egli usa, che il
sistema non abbia
subito cambiamenti rispetto ad una
situazione già nota in precedenza e ritenuta sicura.
L'attestazione remota certifica la stessa cosa ad un
interlocutore esterno, di solito un altro computer connesso in
rete (ad esempio un server web). Questa caratteristica è
decisamente curiosa. Perchè mai noi dovremmo certificare ad
un ente esterno che il nostro computer non ha subito
variazioni rispetto alla volta precedente? La spiegazione
ufficiale è che questo serve a stabilire una relazione iniziale di
fiducia tra il nostro computer e quello remoto. Ecco come
descrive questa caratteristica la Intel nella sua LaGrande
Technological Overview:
2
Attestazione: permette al sistema di fornire garanzie sul fatto che
l'ambiente protetto di LaGrande è stato invocato correttamente.
Consente anche di fornire una misura del software che sta
girando nello spazio protetto. L'informazione che viene scambiata
durante una attestazione è chiamata una Attestation Identity Key
ed è usata per stabilire una relazione di fiduzia reciproca tra le
parti.
La “misura del software” che viene citata in questo frammento
di testo è la “fotografia” della situazione del software
2 Attestation: Enables a system to provide assurance that the LT protected
environment was correctly invoked. It also provides the ability to provide a
measurement of the software running in the protected space. The information
exchanged during an attestation function is called an Attestation Identity Key
credential and is used to help establish mutual trust between parties.
esistente: numero, identità e configurazione corrente dei
programmi coinvolti nel processo. Se vi sembra strano che sia
un sistema hardware/software a “stabilire una relazione di fiduzia
reciproca tra le parti”, sappiate che non siete i soli. Questa
caratteristica di TC è una delle più contestate.
Lo stesso documento prosegue in questo modo:
3
LT supporta un meccanismo opzionale e verificabile di
reporting, chiamato “attestazione”. L'attestazione permette
che l'utente od un agente remoto possano misurare
l'ambiente operativo in esecuzione usando le funzionalità
di misura e di reporting messe a disposizione dal TPM.
Usando queste informazioni, l'utente o l'agente remoto
possono decidere se fidarsi o meno del sistema.
Anche Microsoft descrive questa caratteristica nello stesso
modo:
4
L'attestazione è il processo grazie al quale un frammento
di codice firma digitalmente un frammento di dati e lo
riconosce, permettendo in questo modo di confermare al
ricevente che il frammento di dati è stato assemblato da un
insieme di programmi
identificato crittograficamente.
Quando viene usato insieme ad una infrastruttura per la
certificazione e per la gestione delle licenze, questo
meccanismo permette all'utente di
rivelare delle
caratteristiche selezionate del suo ambiente operativo ad
un richiedente esterno e di provare ad un servizio remoto
che l'hardware e l'insieme di programmi è legittimo.
Autenticando sé stesse ad una entità esterna, le
applicazioni “trusted” possono creare, verificare e
mantenere un perimetro di sicurezza che non richiede la
presenza di autorità esterne o di amministratori fidati.
L'attestazione fornisce una solida base di sicurezza per
l'esecuzione di molti compiti che presentano dei rischi.
Queste spiegazioni ufficiali non fanno altro che spostare la
3 LT supports an optional, verifiable reporting mechanism, called attestation.
Attestation permits either the user or, optionally, a remote agent to measure
the currently running environment using measurement and reporting
mechanisms supported by the TPM. Based upon these reported
measurements, the user or remote agent may use this information to decide
whether to trust the current platform environment.
nostra domanda iniziale su un piano leggermente più tecnico:
per quale motivo il sistema remoto ha bisogno di conoscere la
configurazione della nostra macchina per potersi fidare di noi?
Non gli basta identificarci con una normale password?
Tecnicamente, il fatto di sapere che la nostra configurazione
non è cambiata permette al nostro interlocutore di sapere che
nessun elemento del nostro sistema è stato cambiato a nostra
insaputa, ad esmepio da un virus, ma questo è un nostro
problema e non lo dovrebbe riguardare. In realtà, l'aspetto più
interessante dell'attestazione remota è che permette al nostro
interlcutore di scoprire se noi abbiamo intenzionalmente
cambiato qualche elemento del sistema. Ad esempio,
potremmo avere installato un programma che finge di essere
un lettore multimediale conosciuto ma che invece provvede a
salvare abusivamente sul nostro disco rigido dei brani musicali
protetti da copyright. Se il nostro interlocutore è un sito web
che vende musica online, questa caratteristica può fare una
grande differenza.
In altri termini, l'attestazione remota non difende noi da
qualche minaccia esterna ma difende invece il nostro
interlocutore dalle conseguenze delle nostre azioni.
Seth Schoen, nel suo articolo "Trusted Computing: promise
and risk" identifica questo problema con molta chiarezza:
5
Problema: l'incertezza di una terza parte riguardo al
nostro ambiente software è normalmente una
funzionalità apprezzata, non un difetto.
4 Attestation is the process by which a piece of code digitally signs and
attests to a piece of data, helping to confirm to the recipient that the data was
constructed by a cryptographically identifiable software stack. When used in
conjunction with a certification and licensing infrastructure, this mechanism
allows the user to reveal selected characteristics of the operating environment
to external requestors and to prove to remote service providers that the
hardware and software stack is legitimate. By authenticating themselves to
remote entities, trusted applications can create, verify, and maintain a security
perimeter that does not require trusted administrators or authorities.
Attestation provides a stronger security foundation for many tasks that could
potentially pose security risks.
5 Problem: Third-party uncertainty about your software environment is
normally a feature, not a bug
..........
.............
Nonostante il fatto che il Trusted Computing fornisca delle
funzionalità importanti in termini di sicurezza, fornisce
anche delle funzionalità che possono essere utilizzate in
modo scorretto a discapito del cliente a cui si chiede di
adottare questa nuova tecnologia. La prima di queste
funzionlaità è l'attestazione remota che Microsoft descrive
come altamente innovativa nel settore dell'informatica
distribuita in quanto non esiste niente di comparabile nei
computer del giorno d'oggi.
.............
La nostra preoccupazione fondamentale è che il Trusted
Computing è stato concepito deliberatamente per
supportare dei modelli di sicurezza in cui il proprietario di
un computer TC viene considerato una minaccia. Questi
modelli di sicurezza rappresentano l'eccezione e non la
regola nella storia dei computer e della sicurezza delle
comunicazioni e non fanno parte delle caratteristiche per le
quali il TC viene proposto al pubblico.
...............
L'attestazione è appropriata per prevenire l'eventualità che
il software di un computer venga cambiato all'insaputa del
suo proprietario, ad esempio da un virus. Sfortunatamente
il modello di attestazione proposto dal TCG può
ugualmente prevenire che il software di un computer venga
Even as trusted computing architectures provide security benefits, they may
include features that can be abused, to the detriment of the customers who
are asked to adopt the technology. Chief among these features is remote
attestation, which Microsoft describes as "break[ing] new ground in
distributed computing" because no comparable feature exists in current
computers
.............
Our most fundamental concern is that trusted computing systems are being
deliberately designed to support threat models in which the owner of a
"trusted" computer is considered a threat. These models are the exception
rather than the rule in the history of computer and communications security,
and they are not part of the rationales for trusted computing publicly offered
by its proponents.
...............
cambiato con la piena consapevolezza e la piena
approvazione del proprietario. Mentre il proprietario rimane
sempre in grado di cambiare il software, la presenza del TC
gli può impedire di comunicare con altri computer se egli
effettua questi cambiamenti. Dato che una terza parte in
questo momento non ha nessun modo affidabile di stabilire
che programma state usando, questa terza parte non ha
nessun modo affidabile di obbligarvi ad usare un
programma specifico. Questo aspetto della tecnologia
corrente è quasi sempre un vantaggio per l'utente, in
termini di libertà di scelta, di competizione tra produttori di
software, di interoperabilità e di possibilità di controllo sul
sistema da parte dell'utente, e di conseguenza nessuno
schema di attestazione che cambi questa situazione può
essere di beneficio per l'utente.
Seth Schoen arriva anche a proporre una possibile soluzione a
questo problema e la chiama Owner Override (sovrascrittura
da parte dell'utente). Ne parleremo in dettaglio più avanti nel
testo.
Memorizzazione sigillata (Sealed Storage)
La memorizzazione sigillata non deve essere confusa con la
semplice memorizzazione protetta. La memorizzazione
protetta consiste nel crittografare un file prima di scriverlo su
disco. Questo file può essere copiato e spostato come
qualunque normale file ma solo chi conosce la password
necessaria può aprirlo e accedere al suo contenuto (testo,
Attestation is appropriate for the purpose of preventing the software on a
computer from being changed without the knowledge of the computer's
owner (for instance, by a virus). Unfortunately, the attestation model in TCG's
current design can equally effectively prevent the software on a computer
from being changed deliberately by the computer owner with his or her full
knowledge and consent. While the owner is always free to alter software,
attestation adds a new risk: doing so may now eliminate the computer's ability
to interoperate with other computers. Because third parties currently have no
reliable way to tell what software you are using, they have no reliable way to
compel you to use the software of their choice. This aspect of the status quo
is almost always a benefit for computer owners -- in terms of improved
competition, software choice, software interoperability, and owners' ability to
control their computers -- and therefore no attestation scheme that changes
this situation is likely to be beneficial to consumers.
musica, film, etc.). Nella memorizzazione sigillata viene
aggiunta una ulteriore condizione. Non basta più la password
per decrittare il file: bisogna anche usare lo stesso programma
e lo stesso ambiente che sono stati usati per crittografarlo. Il
programma e l'ambiente vengono certificati grazie alle
funzionalità di attestazione descritte in precedenza.
Ma a cosa serve questa nuova caratteristica? Perchè
condizionare l'apertura del file all'uso dello stesso programma
usato per crittografarlo? Non basta la conoscenza della
password a dimostrare che si è legittimamente autorizzati a
farlo?
Se ci limitiamo ad esaminare le normali esigenze crittografiche
dell'utente, questa funzionalità è chiaramente inutile e
probabilmente dannosa. La sua utilità diventa chiara se ci
mettiamo nella posizione di chi vende musica o film su
Internet. Normalmente, i file contenenti musica e film vengono
trasferiti sul computer dell'utente in formato crittografato e
per accedervi è necessario possedere una password di accesso
che si acquista in rete. In questo modo, il file può essere
trasferito senza problemi da una macchina all'altra e solo chi
possiede la password ne può godere. Questo però lascia
aperta la porta a chiunque sia disponibile a rimettere a
disposizione di altri sia il file crittografato che la password.
Basta copiare il file su un'altra macchina, fornire la password
al programma di decrittazione ed il gioco è fatto. Questo è ciò
che avviene da sempre con i programmi protetti da password
come MS Office ed AutoDesk AutoCAD, ad esempio.
Se la decrittazione non è più condizionata solo alla
conoscenza della password, ma bisogna anche usare
esattamente la stessa macchina che è stata utilizzata al
momento dell'acquisto del file, questa copia abusiva non può
più essere effettuata.
Input/output protetto (Protected Input/Output)
Sia Microsoft, con NGSCB, che Intel, con LaGrande,
aggiungono alle specifiche del TCG una funzionalità
originariamente non prevista: la protezione crittografica dei
canali di comunicazione tra l'utente ed il computer. Sfruttando
le funzionalità di codifica e decodifica dei flussi di dati in
tempo reale messe a disposizione dall'hardware TC, le
comunicazioni che avvengono tra il mouse e la tastiera da un
lato e il computer dall'altro vengono crittografate e rese
impenetrabili agli estranei. Lo stesso avviene per i flussi di dati
che arrivano da Internet o dai lettori (CD, DVD, MP3, MPEG,
etc.) presenti sul computer e che sono diretti allo schermo ed
alle casse acustiche.
Anche questa è una funzionalità piuttosto curiosa: per quale
motivo è necessario proteggere i flussi di dati che scorrono
all'interno del computer?
Ufficialmente, questa caratteristica serve a proteggere questi
flussi di dati dai programmi spia che rilevano la pressione dei
tasti della tastiera (key logger) o che registrano quanto viene
visuallizato sullo schermo (screen capture). Viste sotto questa
luce queste funzionalità sono sicuramente un passo avanti in
termini di sicurezza.
Tuttavia, se si osservano queste funzionalità sotto un'altra
luce le cose cambiano in modo significativo. Cosa succederà ai
programmi che al giorno d'oggi vengono usati per "catturare" i
flussi di dati audio e video e quindi per salvare abusivamente
una copia di brani musicali e di film coperti da copyright? Che
succederà
ai
programmi
come
Total
Recorder
(http://www.highcriteria.com/),
SoundRecorder
(http://www.soundrecorder.net/),
Audio
Haijack
(http://www.rogueamoeba.com/audiohijackpro/) e MPlayer
per Linux? Ovviamente questo tipo di programmi non potrà
più funzionare.
Avviamento protetto (Protected Launch)
Grazie alle funzionalità di attestazione messe a disposizione
dal Fritz Chip, i computer dotati di tecnologia TC sono in
grado di fotografare una determinata configurazione
hardware/software e di controllare in seguito se essa sia stata
modificata o meno. Questa funzionalità viene sfruttata dai
computer TC per fotografare i vari stadi dell'avviamento del
sistema e per verificare in seguito che nessun elemento critico
sia stato sostituito da un altro simile ma non uguale. In altri
termini, questa funzionalità permette al computer di
accorgersi se è stata inserita una nuova scheda al posto di una
esistente o se un certo elemento del sistema operativo sia
stato sostituito.
Ufficialmente, questa funzionalità serve per rilevare gli effetti
di una contaminazione da virus e per difendere il sistema da
eventuali hacker che abbiano accesso fisico al sistema.
Qualunque programma che fosse stato sostituito da una copia
contaminata da virus verrebbe immediatamente bloccato. Se
un hacker avviasse il computer da un sistema operativo
diverso da quello originale, ad eempio un CD Live di Linux,
non potrebbe comunque accedere ai dati protetti
crittograficamente presenti sul disco rigido (Un tipo di
protezione peraltro già disponibile grazie ai file system
crittografici di Windows e di Linux).
Tuttavia, se questa funzionalità dovesse realmente servire
soltanto a questo, non si capisce né per quale motivo vengano
rilevati anche i cambiamenti all'hardware né per quale motivo
questa funzionalità non sia sottoposta al controllo dell'utente.
Dopotutto, l'utente ha pienamente il diritto di cambiare un
elemento hardware o software del suo computer.
Se si guarda questa funzionalità da un altro punto di vista,
diventa tutto molto più comprensibile. Cosa succede se
l'utente decide di installare una scheda TV "pirata" che è in
grado di salvare su disco i film trasmessi via satellite in barba
alle protezioni digitali applicate da chi trasmette? La nuova
scheda viene immediatamente rilevata ed il resto del sistema
si rifiuta di collaborare, rendendo impossibile la copia abusiva.
Che succede se si cerca di avviare l'intero sistema con un
sistema operativo diverso da Windows Vista, ad esempio
Linux? Il sistema si avvia ma le funzionalità TC necessarie per
accedere ai file protetti rimangono inaccessibili.
In altri termini, questa funzionalità non serve tanto a difendere
l'utente da un ipotetico hacker o dai virus. Questa funzionalità
serve soprattutto per proteggere gli interessi di chi detiene i
diritti di copyright sui file multimediali dall'azione dell'utente
del sistema.
Come funziona il Trusted Computing?
Date queste funzionalità, come funziona un sistena dotato di
Trusted Computing? Come viene avviato? Come vengono
lanciati ed eseguiti i programmi? Cosa succede se si cerca di
eseguire programmi che non sono compatibili con lo standard
TC? Che succede se si cerca di accedere a documenti protetti
dal sistema TC? In questo capitolo cercheremo di rispondere a
queste domande.
Chiariamo subito un punto: un computer dotato di tecnologia
TC può essere avviato con un sistema operativo e dei
programmi di tipo tradizionale, come Linux. In questo caso, si
comporta semplicemente come un qualunque computer di
tipo tradizionale. Questo chiarimento è necessario perchè una
delle principali critiche che vengono mosse al TC è quella che
riguarda una sua sostanziale incompatibilità con tutto ciò che
non si attiene al suo standard. Da più parti si sostiene che il
TC renderà impossibile l'uso di Linux e di molti altri
programmi Open Source. Questo non è vero, od almeno non lo
è a questo livello. Microsoft spiega molto bene questo punto
nelle sue FAQ su NGSCB:
D: Ho sentito che NGSCB imporrà agli utenti di usare
solo software approvato da Microsoft
6
R: Questo è semplicemente falso. Il chip SSC e gli altri
elementi di NGSCB non vengono coinvolti nel processo di
avviamento del sistema operativo e nella sua decisione di
caricare una applicazione che non fa uso di NGSCB. Dato
che non viene coinvolto nel proceso di avvio della
macchina, NGSCB non può impedire di funzionare ad un
programma che non si attiene al suo standard. Solo l'utente
può decidere cosa viene fatto girare sul suo computer.
6 Q: I have heard that NGSCB will force people to run only Microsoft-approved
software.
A: This is simply not true. The nexus-aware security chip (the SSC) and other
NGSCB features are not involved in the boot process of the operating system
or in its decision to load an application that does not use the nexus. Because
the nexus is not involved in the boot process, it cannot block an operating
system or drivers or any nexus-unaware PC application from running. Only
the user decides what nexus-aware applications get to run. Anyone can write
an application to take advantage of new APIs that call to the nexus and related
components without notifying Microsoft or getting Microsoft's approval.
Chiunque può scrivere software che fa uso delle
funzionalità offerte da NGSCB senza bisogno di notificare la
cosa a Microsoft o di ottenere la sua approvazione.
Naturalmente, rimane possibile scrivere software che
richiede NGSCB per funzionare. Questo tipo di applicazioni
può fare uso di tecniche crittografiche e di qualche
meccanismo di gestione delle licenze per funzionare.
Comunque, sarà solo questa applicazione a fare uso di
queste caratteristiche e questo non avrà effetti sulle altre
applicazioni. NGSCB isola una applicazione dall'altra per cui
nessuna applicazione può impedire ad un'altra di
funzionare.
Anche Intel, nella sua LaGrande Technology Overview, parla
chiaro su questo punto:
7
LT permette di lanciare un ambiente protetto senza
riavviare la macchina ed il software tradizionale può
funzionare senza modifiche.
Diverso è il caso di un computer TC che viene avviato con un
sistema operativo e dei programmi di tipo TC (come avviene
anche nel caso di tutti i dispositivi digitali in cui non è
possibile cambiare il software di controllo, come i lettori
DVD/CD da salotto, i telefoni cellulari e via dicendo). In questo
caso, il funzionamento del sistema è molto diverso e segue la
logica prevista dallo standard TC.
Al momento dell'avviamento (bootstrap) il sistema controlla
che nessun elemento hardware o software sia stato sostituito.
Se viene rilevato qualche cambiamento, i dati che erano stati
crittografati prima di questo cambiamento non saranno più
accessibili. Questo è un effetto voluto e serve ad evitare che i
It will be possible, of course, to write applications that require access to
nexus-aware services in order to run. Such an application could implement
access policies that would require some type of cryptographically signed
license or certificate before running. However, the application itself would
enforce that policy and this would not impact other nexus-aware applications.
The nexus and NCAs isolate applications from each other, so it is not possible
for an individual nexus-aware application to prevent another one from
running.
7LT supports the ability to launch protected environments without platform
reboot, and legacy software is able to run unmodified in a standard partition.
dati riservati siano accessibili ad un estraneo che riesce ad
avere accesso fisico al sistema. Al giorno d'oggi, per
bypassare alcuni tipi di protezione, come le password di
sessione di Windows, è sufficiente riavviare il PC da una
distribuzione Live di Linux. Il TC rende impossibile questo tipo
di attacco. Fisicamente, questo effetto viene ottenuto in
questo modo:
• al momento della cifratura dei dati, viene presa una
fotografia del sistema (cioè ne viene calcolato un hash che
lo identifica in modo univoco)
• al
momento della decifrazione viene nuovamente
fotografato il sistema e si verifica che esso non sia stato
modificato.
• solo se il sistema è rimasto identico a sé stesso, il Fritz
Chip rilascia le chiavi di cifratura necessarie per accedere ai
dati. In caso contrario, queste chiavi rimangono al sicuro
all'interno del Fritz Chip, dove nessun programma non
autorizzato può arrivare.
In alcuni casi, come nel caso della sostituzione di un elemento
hardware, è possibile ritornare in possesso di questi dati
usando una particolare procedura detta di "migrazione delle
chiavi". Questo permette di aggiornare o riparare il sistema
senza perdere i dati che esso contiene.
Se il sistema parte regolarmente, è possibile eseguire su di
esso dei programmi che fanno uso della tecnologia TC. In
questo caso, sono disponibili tutte le protezioni offerte dalla
tecnologia TC:
–
I programmi possono essere eseguiti in ambienti isolati e
protetti da ogni interferenza esterna. Anche la memoria da
loro utilizzata per immagazzinare i dati viene protetta da
accessi non autorizzati.
–
Tutti i canali di comunicazione tra l'utente ed il dispositivo
(mouse, joystick, game pad, microfono, tastiera, schermo
o casse audio) sono protetti da accessi non autorizzati.
–
In alcuni casi, anche le comunicazioni tra i componenti
interni (schede) ed esterni (stampanti) del computer sono
protette crittograficamente.
–
Il sistema ed ogni suo componente hardware e software
può essere identificato in modo univoco e si può verificare
che non sia stato modificato rispetto al precedente
controllo.
–
I dati memorizzati sul computer possono essere
crittografati in modo tale che non sia possibile decrittarli
su un'altra piattaforma nemmeno conoscendo la password
di accesso.
–
Il computer può essere "certificato" e può ottenere
l'accesso a servizi particolarmente critici su Internet (home
banking) od a servizi commerciali di altri tipo (iTunes ed
altri rivenditori di brani musicali su Internet).
L'utente non deve preoccuparsi in modo particolare del TC. Il
sistema è in grado di effettuare tutte le operazioni necessarie
da solo, senza nessuna assistenza da parte sua. Secondo la
terminologia tipica del settore, la tecnologia TC è
“trasparente” (cioè “invisibile”) per l'utente. La presenza del
sistema TC diventa visibile solo quando l'utente tenta di
accedere a dati cifrati e gli viene chiesto di identificarsi (di
solito fornendo una password). Nell'uso normale, un sistema
TC è sostanzialmente indistinguibile da un sistema
tradizionale.
D'altra parte, le differenze tra i due sistemi esistono e sono
rilevanti. Ad esempio, l'utente non può più effettuare le
seguenti operazioni:
–
copiare abusivamente un CD od un DVD
–
registrare abusivamente un brano musicale od un film da
Internet o da un canale radio/TV satellitare o digitale
terrestre
–
usare software non legalmente acquistato
Come abbiamo già detto, su un sistema TC possono essere
usati programmi non TC. La principale limitazione che si
incontra in questo caso è che i dati creati con applicazioni TC
non saranno accessibili. La possibilità di rendere inutilizzabili i
programmi tradizionali sui sistemi TC esiste, ma non è
prevista dalle specifiche tecniche del TC. Approfondiremo
questo punto cruciale in una apposita sezione nella seconda
parte del libro.
Le differenze tra un sistema tradizionale ed un sistema TC si
notano solo quando si tenta di effettuare una delle seguenti
operazioni.
Accedere ad un servizio di rete protetto
Quando si tenta di accedere, ad esempio, ad un servizio come
iTunes (un famoso negozio di musica online gestito da Apple)
è necessario registrarsi, cioè farsi riconoscere dal sistema e
”firmare” il registro degli accessi. Fino ad ora il servizio
richiedeva che l'utente provvedesse di persona a questa
procedura, nota come login, digitando nome utente e
password. In futuro sarà il computer TC stesso a provvedere e
lo farà inviando al sistema remoto un identificatore digitale
che svolgerà due funzioni: da un lato certificherà in modo
univoco l'identità del sistema chiamante e dall'altro
certificherà che l'hardware ed il software non hanno subito
cambiamenti rispetto ad un momento precedente ritenuto
“affidabile” dal servizio di rete. Al momento della prima
registrazione, il servizio di rete può stabilire se un
interlocutore remoto è “affidabile” utilizzando le capacità
crittografiche del sistema TC per identificare l'hardware ed il
software utilizzati dall'interlocutore stesso. Se in seguito
anche uno solo di questi elementi viene cambiato, il sistema si
rifiuta di concedere l'accesso al servizio.
Accedere a dati protetti (locali e/o remoti)
Quando si tenta di accedere a dati cifrati, sul proprio disco
rigido o su un server di rete, è il sistema TC a registrarsi al
posto dell'utente e lo fa inviando lo stesso tipo di certificato
usato per accedere a servizi remoti. Anche in questo caso il
certificato provvede ad identificare in modo sicuro l'utente ed
a identificare in modo altrettanto sicuro l'hardware ed il
software che egli utilizza. Se anche uno solo di questi elementi
viene cambiato, il sistema si rifiuta di decifrare i dati e renderli
accessibili.
Spostare dati e/o programmi da una macchina all'altra
Spostare dati o programmi da un macchina all'altra è
logicamente equivalente a cambiare tutti o quasi tutti i
componenti del computer su cui risiedono questi dati o questi
programmi. Di conseguenza, il sistema TC si rifiuterebbe di
rendere accessibili i dati cifrati e/o di rendere utilizzabili i
programmi che sono sottoposti ad una licenza d'uso che non
preveda esplicitamemte il diritto dell'utente di cambiare
hardware.
Per risolvere il problema dello spostamento legittimo di dati e
programmi da un sistema all'altro è prevista una apposita (e
piuttosto complessa) manovra di “migrazione delle chiavi
crittografiche”.
Ripristinare dati e/o programmi dopo un backup
Anche la manovra di rirpistino (restore) dei dati e dei
programmi dopo un backup (ed un eventuale crash del
sistema) è logicamente equivalente a cambiare tutto o parte
del sistema su cui sono ospitati i dati ed i programmi protetti
dal sistema TC. Anche in questo caso si rende necessaria una
manovra di migrazione delle chiavi.
Un problema di terminologia
Molti analisti hanno fatto notare che esiste un serio problema
di terminologia in tutta la documentazione che riguarda il TC.
Ad esempio: un sistema Trusted Computing (Elaborazione
Fidata) per chi è fidato? Chi è l'utente del sistema, nella
accezione usata dai documenti ufficiali sul TC? Chi è il
proprietario dei dati che vengono protetti dal TC?
Ecco come descrive questo problema di linguaggio Catherine
Flick nella sua tesi di laurea:
8
Il linguaggio usato dalle aziende coinvolte nel progetto
Trusted Computing è spesso ambiguo, in netto contrasto
con il linguaggio, molto chiaro, solitamente usato nei
documenti tecnici di questo tipo. Nella maggior parte dei
casi, simili ambiguità servono a confondere od a depistare
il lettore o sono la conseguenza di definizioni iniziali non
adeguate.
Vediamo allora di esaminare alcune di queste ambiguità.
Chi è l'Utente del Sistema?
Nella documentazione tecnica, normalmente l'utente è la
persona che accede al sistema (direttamente dalla tastiera o
attraverso una rete) per ottenere un servizio. Nel caso di un
computer personale (desktop o portatile) si tratta quasi
sempre del proprietario o comunque della persona che ha in
affidamento il computer, ad esempio un dipendente
dell'azienda che lo ha comprato. Nel caso di un server, è la
persona che vi accede dalla rete per ottenere il servizio.
Nella documentazione ufficiale sul TC non sempre l'utente è la
persona che ha in affidamento il computer o la persona che
accede ad esso per ottenere un servizio. A volte, con il termine
"utente" si intende l'utente dei servizi messi a disposizione
dalla piattaforma TC, non l'utente del computer e nemmeno
l'utente dei servizi forniti dal server.
L'utente dei servizi messi a disposizione dalla piattaforma TC
è una persona od una azienda che utilizza questi servizi per
mantenere uno stretto controllo su un programma o su un file
di dati dopo aver trasferito questo file sul computer di
qualcun'altro. Ad esempio, se acquistate un brano musicale da
iTunes usando un computer TC, l'utente del sistema TC che
risiede sul vostro computer è iTunes, non voi. Infatti, è iTunes
che usa i servizi messi a disposizione dal vostro computer per
difendere i propri diritti sul file digitale che avete acquistato
8 The language used by the companies involved in the Trusted Computing
initiative is oftentimes ambiguous, in sharp contrast to the language more
usually used in the specification of new computer systems or protocols
[Information Sciences Institute, 1981]. Most of the time these ambiguities
either serve to confuse or mislead, or are the result of inadequate definition to
begin with.
ed assicurarsi che non ne facciate copie abusive.
Chi è il Proprietario dei Dati?
Nella documentazione tecnica, il proprietario dei dati è
solitamente la persona che possiede (od ha in affidamento) il
computer sul quale risiedono i dati. I vostri dati sono quelli
che risiedono sul vostro disco rigido.
Nella terminologia usata dalla documentazione ufficiale del
TC, il proprietario dei dati è la persona che ha creato quei dati
o che può vantare su di esso dei diritti di proprietà (ad
esempio il diritto d'autore), anche quando questi dati non
risiedono più su un computer di proprietà di questa persona.
In altri termini, se Michel Jackson decide di rilasciare su
internet un suo brano musicale, il proprietario di quel file (cioè
di tutte le innumerevoli copie esistenti di quel file) è sempre
Michel Jackson, anche se il file risiede sul vostro disco rigido.
Il sistema TC continuerà fedelmente a difendere i diritti del
proprietario Michel Jackson qualunque cosa voi ne pensiate.
A chi si garantisce l'affidabilità del sistema?
Per chi è affidabile il sistema? A chi viene garantita la
sicurezza?
Normalmente, tutte le preoccupazioni degli specialisti di
sicurezza sono rivolte a rendere il sistema affidabile e sicuro
per la persona che ha acquistato il sistema stesso e/o lo usa
abitualmente.
Nel caso della tecnologia TC, molte delle preoccupazioni dei
progettisti sono invece rivolte a rendere il sistema sicuro ed
affidabile per chi entra in contatto con esso sulla rete ed
intrattiene relazioni commerciali con il suo proprietario. In
altri termini, se acquistate un brano musicale su Internet da
iTunes, il sistema TC del vostro computer si preoccupa di
rendere il vostro sistema sicuro ed affidabile per iTunes, non
per voi (od almeno non solo per voi).
Questo sconcertante aspetto della tecnologia TC viene
sottolineato da tutti gli analisti che si sono occupati di essa.
Tra questi, Ross Anderson, nelle sue FAQ, è particolarmente
esplicito:
23. Ma la sicurezza dei PC non è una buona cosa?
La domanda è: sicurezza per chi?
............
Visto in questi termini il TC non fornisce la stessa sicurezza
all'utente e al venditore di PC, al fornitore di software e
all'industria dei contenuti. Non aggiunge valore per
l'utente, anzi lo distrugge. Si limita ciò che si può fare sul
proprio PC per poter disporre di applicazioni e servizi che
estraggono più denaro all'utente. Questa è la definizione
classica di cartello monopolistico un accordo industriale
che modifica i termini del commercio per diminuire il
surplus per il consumatore.
Il 24 Giugno del 2002, ExtremeTech ha persino pubblicato un
articolo di Brett Glass intitolato proprio "Microsoft Palladium:
security
for
whom?".
Vedi:
http://www.extremetech.com/article2/0,3973,263367,00.asp
.
Cosa significa fidato e cosa significa affidabile?
Nella documentazione tecnica del TC viene fatta una sottile
distinzione tra trusted (fidato) e trustworthy (affidabile).
Un sistema è trusted (fidato) quando contiene informazioni
cruciali e quindi si dipende da esso.
Un sistema è trustworthy (affidabile) quando si può fare
affidamento su di esso perchè è sicuro.
Un sistema che contiene delle informazioni da cui dipende la
vostra sicurezza ma non è protetto in alcun modo è un
sistema trusted ma non non trustworthy. Un sistema
assolutamente impenetrabile ma vuoto è un sistema
trustworthy ma non trusted. Naturalmente, l'obiettivo che tutti
si pongono è quello di avere sistemi trusted e trustworthy.
Esaminando la documentazione del TC si ha spesso
l'impressione che il sistema sia trusted per l'utente, nel senso
che l'utente dipende da esso per alcuni aspetti cruciali, ma
trustworthy per qualcun'altro (di solito il detentore dei diritti
su qualche prodotto digitale).
In che senso una funzionalità è opzionale?
Molte delle funzionalità del TC vengono definite opzionali
(opt-in) ma lo sono veramente?
Catherine Flick è molto esplicita su questo punto:
9
Questa sequenza di piccoli passi verso una posizione di
potere si riflette nella caratteristica, molto pubblicizzata,
secondo la quale l'uso del TC è opzionale. Fornire all'utente
la possibilità di accendere o meno il TC sembra uno sforzo
razionale nella direzione di mantenere il TC sotto il
controllo dell'utente ma, nella realtà, se il TC diventerà
onnipresente come molti si aspettano, il semplice fatto di
dover portare a termine il lavoro quotidiano ne imporrà
l'uso dato che l'accesso ai dati crittografati ed ai server di
rete sarebbe impossibile in caso contrario.
Anche Ross Anderson è d'accordo su questa valutazione dei fatti:
12. Brutta storia.
disattivarlo?
Ma
non
posso
semplicemente
Certo - a meno che il tuo amministratore di sistema abbia
configurato la macchina in modo che il TC sia vincolante è sempre possibile disattivarlo. E' possibile utilizzare il PC
con i privilegi di amministratore ed utilizzare applicazioni
non sicure.
Comunque resta un piccolo problema. Se disabiliti il TC, il
chip Fritz non rilascerà le chiavi necessarie per decriptare i
9 This sequence of small movements towards a hold of power is reflected
openly in the widely publicised “opt-in” nature of Trusted Computing. Giving
users an option on whether to turn on the Trusted Computing mechanisms
seems like a reasonable effort to keep it controlled by the user, but in reality,
if Trusted Computing becomes as ubiquitous as some vendors seem to think
it will [Hewlett-Packard, 2003], the very process of carrying out everyday work
will require it to be on, as access to encrypted files and authentication to servers requiring attestation will otherwise be denied.
tuoi file ed accedere al tuo conto corrente. Le tue
applicazioni TC-conformi non funzioneranno bene o per
niente. Sarà come passare da da Windows a Linux
oggigiorno; puoi avere maggiore libertà, ma questo
comporta avere meno scelta. Se le applicazioni TC saranno
più attraenti per la maggior parte delle persone, o saranno
più
profittevoli
per
i
venditori
di
applicazioni,
semplicemente non potrai utilizzarle - esattamente come
molte persone devono utilizzare Microsoft Word
semplicemente perchè tutti i loro colleghi ed amici gli
spediscono documenti in Microsoft Word. Entro il 2008 è
possibile che i costi per disattivare le funzioni TC siano
semplicemente intollerabili.
Praticamente tutti gli osservatori indipendenti sono d'accordo sul fatto che entro pochi anni ci sarà ben poco di opzionale nell'uso del TC. Questo pericolo è talmente chiaro che Intel ed il TCG sono corse ai ripari pubblicando un esplicito anatema contro queste forzature all'interno dei loro rispettivi documenti di autoregolamentazione. Ecco cosa afferma Intel nel documento "LaGrande Technology Policy on Owner/User Choice and Control":
Scelta e Controllo
10
Principio #1: “La piattaforma deve avere un meccanismo
semplice per assicurare la libertà di scelta nell'uso della
piattaforma.”
Il proprietario del PC deve avere la possibilità di scegliere
se usare le funzionalità di LT e deve avere la possibilità di
controllare le singole funzionalità in modo ragionevole.
Ed ecco cosa asserisce il TCG nelle sue "Best Practices":
11
Principio di Controllabilità
10 Choice and Control
Policy Statement #1: “LT based platforms must have a straightforward
mechanism for ensuring choice in controlling the LT operation.”
PC owner must have a choice whether they want to “opt-in” to LT protections
and, to the degree feasible, maintain control over the various functions.
11 Controllability Principle
Ogni utente deve effettivamente avere la possibilità di
scegliere se usare le funzionalità del TCG o meno. Di
conseguenza, il proprietario può disabilitare le funzionalità di
TCG.
In che senso il TC è neutrale?
Alcuni dei documenti pubblicati a difesa del TC sostengono
che questa tecnologia sia neutrale. Con questo termine si
intende dire che il TC insè non è né buono né cattivo e si
limita a servire gli scopi del suo utilizzatore.
Catherine Flick è particolarmente lucida nell'esaminare questo
punto:
12
3.2.4 "Neutralità"
Affermare che il TC è neutrale è un modo per negare con
facilità qualunque responsabilità per le applicazioni che
saranno sviluppate grazie ad esso. Le aziende coinvolte
sembrano rendersi conto della natura di lama a doppio
taglio di TC, cioè del fatto che il TC può essere usato per
applicazioni illegali ed antisociali nello stesso modo in cui
può essere usato per applicazioni che queste aziende
vorrebbero vedere associate al loro nome. Microsoft, nel
dichiarare la sua neutralità, scrive:
"NGSCB offre dei meccanismi di costrizione che possono
essere di beneficio per molte parti ma la scelta di usare
queste funzionalità rimane nelle mani dell'utente. Che
l'utente usi queste funzionalità insieme a sistemi anticopia
(DRM) o meno, queste funzionalità permettono all'utente di
Each owner should have effective choice and control over the use and
operation of the TCG-enabled capabilities that belong to them; their
participation must be opt-in. Subsequently any user can reliably disable the
TCG functionality in a way that does not violate the owner’s policy.
12 3.2.4 “Neutrality”
Asserting neutrality over the potential uses of the Trusted Computing system
is an easy way for providers to escape liability for any applications developed
for it. The companies involved seem to realise the “double-edged sword”
nature of Trusted Computing, that is, that it could be used for illegal and
anti-social applications as well as for applications they would want associated
with their company. Microsoft, in claiming its policy-neutral status, writes:
mantenere la riservatezza sui propri dati, di controllare la
condivisione di documenti, di collaborare online con amici
e colleghi e di controllare lo svolgimento di operazioni
delicate sul sistema."
In questo modo Microsoft rimanda ogni responsabilità
sull'uso di NGSCB all'applicazione che ne fa uso. Questo è
una modo facile per sottrarsi a qualunque critica per le
strategie d'uso che emergeranno come standard de facto,
come l'uso di particolari elementi software che ridurranno
l'interoperabilità e favoriranno il lock-in.
Possiamo solo aggiungere che la tesi della neutralità morale
viene solitamente utilizzata per difendere dalle critiche le armi
da fuoco. Si è soliti sostenere questa tesi parlando di un'arma,
non di una tecnologia informatica. Questa inattesa analogia
dovrebbe far riflettere.
“The NGSCB architecture offers policy enforcement mechanisms
that can
benefit many parties, but enforcement remains in the control of users.
Whether or not they use it in conjunction with rights management systems,
people can use such systems to maintain confidentiality, to control the
sharing of their documents, to collaborate online with friends, co-workers or
colleagues, or to control sensitive operations performed on their machines.”
[Microsoft, 2003a]
In this way it delegates all responsibility to the applications that take
advantage of NGSCB. This is an easy way to evade criticism for any de facto
policies that would arise, such as the use of particular pieces of software that
restrict interoperation due to sofware lock-in (as discussed above).
Applicazioni del TC
La sicurezza
Come abbiamo detto all'inizio, il Trusted Computing è stato
concepito per essere la risposta definitiva a molti, se non tutti,
i tipi di minaccia. In particolare, dovrebbe essere utile per
impedire l'accesso al computer agli hacker, ai virus, ai worm,
ai cavalli di Troia, agli adware ed ai programmi spia. Inoltre,
dovrebbe essere utile anche per combattere il fastidioso
fenomeno dello spamming ed alcuni tipi di truffe che vengono
perpetrate su internet, come il phishing. Ma come è possibile
tutto questo? Per capirlo bisogna esaminare questi tipi di
minacce uno ad uno e vedere come agisce il Tc nei loro
confronti.
Hacker
In realtà, non è corretto riferirsi ai malintenzionati digitali con
il termine “hacker”. Questo termine, infatti, è equivalente al
neologismo italiano “smanettone” e non ha alcuna
connotazione negativa. I malintenzionati da cui dovrebbe
difenderci il TC sono piuttosto gli “intruder”. Gli intruder sono
persone, spesso di elevatissimo livello tecnico, che per vari
motivi tentano di penetrare all'interno di sistemi informatici
altrui e di prenderne il controllo.
Il TC combatte gli intruder proteggendo gli elementi
vulnerabili che questi malintenzionati sono soliti sfruttare per
accedere al sistema e per prenderne il controllo. Gli elementi
che il TC protegge sono i seguenti.
• Programmi in esecuzione
• Aree di memoria riservate
• Comunicazioni tra diversi computer
• Comunicazioni
tra
diversi
componenti
dello
stesso
computer
• Documenti
che contengono informazioni riservate (ad
esempio password o parametri di configurazione del
sistema)
• Sequenza di avvio del sistema (bootstrap). Grazie al TC
diventa impossibile aggirare le protezioni del sistema
riavviandolo da un sistema operativo diverso da quello
installato.
La protezione che il TC fornisce contro questo tipo di minaccia
è reale e di innegabile efficacia.
Virus
Il TC provvede a “fotografare” digitalmente i programmi al
momento della loro installazione generando un apposito
“hash”. Qualunque virus che dovesse contaminare uno di
questi programmi provocherebbe una variazione nella sua
struttura tale da alterare questa fotografia digitale. Il sistema
di TC si accorgerebbe immediatamente di questa differenza e
si rifiuterebbe di rilasciare le chiavi necessarie alla
decifrazione dei documenti ed alla attivazione dei programmi.
In questo modo, il virus verrebbe immediatamente bloccato.
Questo meccanismo viene già usato da sistemi software come
TripWire e AIDE che però non sono in grado di bloccare
l'accesso ai dati cifrati e non sono in grado di impedire l'avvio
di altri programmi. Inoltre, trattandosi di programmi, anche
AIDE e TripWire sono soggetti essi stessi ad infezioni e ad
attacchi software di vario tipo. Il TC è per sua natura immune
a questo tipo di attacchi.
Worm
I worm (vermi) sono una particolare tipologia di virus che per il
proprio funzionamento si appoggia agli interpreti di
linguaggio presenti (per nostra sfortuna) in molti programmi
come MS Internet Explorer, MS Outlook, MS Word, MS Excel,
MS PowerPoint e via dicendo. I “virus” che negli ultimi anni
hanno spazzato e devastato Internet erano in realtà quasi
sempre dei worm che sfruttavano l'interprete Visual Basic
contenuto nei programmi Microsoft ed in particolare in MS
Outlook e MS Internet Explorer.
Il TC combatte questo tipo di minaccia impedendo che questi
programmi possano accedere in modo incontrollato a risorse
sensibili, come la rubrica degli indirizzi di Outlook o i file
presenti sul disco.
Diversi antivirus esistenti svolgono via software le stesse
funzioni previste per il TC.
Trojan Horse
I Trojan Horse, o “Cavalli di Troia”, sono semplici programmi
che si spacciano per qualcosa di diverso. Un esempio classico
sono le immagini pornografiche allegate a certi messaggi di
posta che, una volta aperte, si rivelano essere programmi dagli
effetti spiacevoli.
Anche in questo caso, il TC combatte questi programmi
impedendo loro di fare dei danni. Anche in questo caso,
queste funzioni sono le stesse che vengono già svolte da molti
antivirus presenti sul mercato.
Adware/Spyware
Gli adware sono programmi che si installano abusivamente sul
sistema e che infliggono all'utente delle massiccie dosi di
pubblicità non gradita, di solito alterando la pagina di avvio
del browser web. Gli spyware sono programmi spia. Si
installano abusivamente sul sistema e trasferiscono
informazioni importanti al loro creatore. Vengono usati sia per
raccogliere informazioni utili al marketing (pagine web
visitate, gusti dell'utente, etc.) che per sottrarre password.
Questi due tipi di programmi hanno scopi diversi ma agiscono
nello stesso modo: sfruttano alcune vulnerabilità del browser
web e del programma di posta elettronica per installarsi e
modificano la configurazione del sistema per svolgere il
proprio lavoro e per impedire all'utente di disinstallarli. Sono
famosi tra gli utenti perchè è difficilissimo liberarsene.
Il TC combatte questi programmi in tre modi:
• rilevando le modifiche da loro apportate al sistema
• impedendo a questi programmi di modificare il sistema
• impedendo a questi programmi di accedere ad informazioni
riservate
Il TC fornisce degli strumenti di lotta realmente innovativi nei
confronti di questi programmi, qualcosa che gli attuali
programmi di difesa ed i normali antivirus non possono
fornire. Tuttavia, è inevitabile sottolineare che i programmi
adware e spyware esistono e proliferano esclusivamente
nell'ambiente Microsoft (Windows ed Office) a causa della
presenza dell'interprete Basic e di innumerevoli falle di
sicurezza nei programmi. Negli altri ambienti operativi (Linux,
Unix, BSD e McOS X) sono praticamente sconosciuti. Inoltre,
nella maggioranza dei casi è sufficiente usare programmi
non-Microsoft, come Firefox e Thunderbird, per navigare sul
web e leggere la posta per liberarsi di questo problema.
Spamming
Lo spamming è quel fastidioso fenomeno grazie al quale dei
perfetti sconociuti in cerca di facili guadagni si permettono di
inondare le nostre caselle di posta elettronica con ogni sorta
di spazzatura. Nonostante molti utenti siano convinti che
questi sconosciuti possano entrare in possesso del loro
indirizzo di posta elettronica grazie ad una vasta serie di
accorgimenti poco leciti, nella realtà questi spammer si
limitano a generare enormi quantità di indirizzi di posta
“plausibili” ed a tentare l'invio del loro messaggi ad ognuno di
essi. Un tasso di insuccesso del 99% non li spaventa.
Pur trattandosi di un fastidio, più che di una minaccia, lo
spamming ha attirato l'attenzione di molti specialisti ed al
giorno d'oggi viene aspramente combattuto con appositi filtri
posizionati o sui server di posta o sui programmi usati dagli
utenti. Ad esempil Mozilla Thunderbird dispone di un ottimo
filtro antispamming integrato.
Il TC promette di porre fine a questo fenomeno. Grazie alle
capacità crittografiche del TC è infatti possibile implementare
una nuova generazione di programmi di posta “certificati”.
Questi programmi accetterebbero posta solo da utenti
chiaramente identificabili e porrebbero quindi fine al
fenomeno degli spammer.
Una tecnologia simile è peraltro già disponibile (anche da
Poste Italiane) sotto forma della Posta Elettronica Certificata.
Phishing
Il Phishing consiste in questo:
• un malintenzionato crea un sito web apparentemente
identico a quello di una banca (o qualcosa di simile)
• lo stesso malintenzionato invia a milioni di utenti (a caso)
un messaggio che sembra provenire dalla banca a cui
appartiene il sito. Nel messaggio si chiede all'utente di
visitare una pagina del sito della banca (falsificata) e di
inserire la propria password
• normalmente, meno dell'1% degli utenti ci casca ma, dato
che parliamo di milioni di persone, il bottino è spesso
molto buono
Il TC promette di mettere fine a questo tipo di truffa nello
stesso modo in cui promette di mettere fine al fenomeno dello
spamming, cioè certificando in modo digitale il mittente del
messaggio (ed anche il sito web della banca).
La gestione dei sistemi
Una applicazione meno ovvia del TC è la gestione remota dei
sistemi. Con questo termine si fa riferimento ad un vasto
insieme di tecniche che in Italia sono spesso conosciute con il
termine di “teleassistenza”. Il TC fornisce alcune funzionalità
interessanti per questo tipo di applicazione:
• permette di creare un canale di comunicazione protetto tra
il computer che viene assistito e quello che fornisce
assistenza
• permette di limitare l'accesso dell'utente del computer al
sistema (più o meno come avviene oggi nei sistemi che
usano “login” diversi per l'utente normale e per
l'amministratore di sistema)
• permette di controllare se vengono fatte modifiche al
sistema e/o di impedire che vengano apportate queste
modifiche. In casi particolari, potrebbe persino consentire
di ripristinare la situazione precedente ad eventuali
modifiche.
• permette di tracciare con precisione l'uso che viene fatto
del sistema da parte degli utenti
In pratica, una azienda che desiderasse farlo potrebbe
mantenere uno stretto controllo sui propri computer pur
lasciandoli fisicamente nelle mani dei suoi dipendenti. Questa
situazione richiama da vicino quella che veniva proposta dai
“Network Computer” negli anni '90. I Network Computer erano
(od avrebbero dovuto essere) dei computer dotati di
possibilità molto limitate, in pratica una specie di “terminali”,
usati solo per accedere a programmi e dati che risiedevano su
server remoti sui quali l'azienda manteneva uno stretto
controllo.
La protezione dalla copia abusiva (DRM)
Nonostante il fatto che tutte le aziende coinvolte nel progetto
si affrettino a negarlo, l'applicazione più interessante delle
tecnologie TC
è come sistema DRM (Digital Right
Management), cioè come sistema anticopia avanzato. Questa
"seconda natura" del Trusted Computing è talmente evidente
che persino i suoi difensori più accaniti sono costretti a
riconoscerlo. Nel suo rebuttal, David Safford è costretto ad
ammettere:
13
Il TCPA non è un sistema DRM. IL DRM è soltanto una
delle possibili applicazioni di questa tecnologia.
In modo analogo, anche Microsoft è costretta a riconoscere
questo fatto nelle sue NGCSB Technical FAQ:
14
Quindi, applicazioni DRM possono essere sviluppate su
sistemi che sono costruiti sulla architettura NGSCB. I
cambiamenti introdotti da NGSCB all'hardware ed al sistema
operativo permettono di isolare le applicazioni (per evitare
lo snooping ed eventuali modifiche da parte di altre
applicazioni) e di immagazzinare dati segreti per queste
applicazioni e quindi permettono di assicurare che solo il
software di cui si fida la persona che è nella posizione di
garantire l'accesso ai dai od al servizio abbia accesso a
questi dati segreti. Un sistema DRM può trarre vantaggio da
questo ambiente e può aiutare a garantire che i materiali
siano utilizzati solo in accordo con un insieme di regole
mutualmente riconosciute e comprese.
Ma quali sono gli elementi del TC che si sposano in modo
tanto
naturale
con
questo
tipi
di
applicazione?
Sostanzialmente sono i seguenti.
13 TCPA is not DRM. DRM is just one possible application of a trust
component.
14 Thus, DRM applications can be developed on systems that are built under
the NGSCB architecture. The operating system and hardware changes
introduced by NGSCB offer a way to isolate applications (to avoid snooping
and modification by other software) and store secrets for them while ensuring
that only software trusted by the person granting access to the content or
service has access to the enabling secrets. A DRM system can take advantage
of this environment to help ensure that content is obtained and used only in
accordance with a mutually understood set of rules.
Identificazione dell'utente e/o del sistema: la possibilità di
identificare in modo sicuro un sistema od un utente in rete
rende possibile concedere o negare servizi online su base
individuale, tracciare il comportamento dell'utente e persino
“punire” o “disincentivare” in vari modi i comportamenti
sgraditi.
Attestazione remota: la possibilità di verificare che il sistema
usato da un utente remoto non abbia subito cambiamenti,
rispetto ad una situazione iniziale considerata “affidabile”,
permette ad un operatore che gestisca un sito di commercio
elettronico di sottrarsi a vari tipi di “furti” e di “truffe” che ora
affliggono questo settore. Ad esempio, questa funzionalità
rende possibile scoprire se l'utente remoto sta cercando di
collegarsi al sito di commercio elettronico usando
un
programma che non rispetta i criteri richiesti dal fornitore
riguardo alla protezione anticopia e permette quindi di
negargli l'accesso.
Attestazione locale: la possibilità di verificare che il sistema
non abbia subito cambiamenti permette anche ad un
programma eseguito localmente sul computer di sottrarsi a
questo genere di “furti” e di “truffe”. I dati cifrati (musica, film,
testi, etc.) sono disponibili solo se si utilizza un programma
“ammesso” dal fornitore e che quindi si attiene alle sue
richieste per quello che riguarda la protezione anticopia.
Memorizzazione sigillata: la possibilità di cifrare i dati e di
sottoporre la decifrazione alla condizione che il sistema non
abbia subito cambiamenti permette di legare il consumo dei
dati cifrati (musica, film, test, etc.) ad uno specifico sistema
(un determinato computer) e/o all'uso di uno specifico
programma. In questo modo, non è più possibile “consumare”
il materiale protetto su un altro sistema e/o usando un
programma potenzialmente non affidabile (dal punto di vista
del fornitore dei dati).
Protezione dei canali di input e di output: la protezione dei
canali di output che vanno alla scheda video ed alla scheda
audio permette di evitare che musica e film vengano copiati
abusivamente semplicemente catturando il segnale analogico
che và al display ed alle casse audio. Questa tecnica è usata da
programmi come Total Record, ad esempio.
Protezione della memoria: la protezione delle aree di
memoria (RAM) usata dai programmi permette di proteggere i
dati da programmi che fossero intenzionati a copiarli
abusivamente leggendo la memoria stessa.
Secondo tutti gli osservatori, di entrambe le fazioni, il TC
permette di creare sistemi DRM sostanzialmente inviolabili.
Per chiarezza, va ricordato che la tecnologia Trusted
Computing è concepita per essere usata ovunque, non solo sui
computer. Come abbiamo già detto all'inizio, questa
tecnologia verrà usata anche sui lettori di DVD e di CD
portatili, sulle radio, sulle televisioni, sui ricevitori satellitari di
qualunque tipo, persino sui telefoni cellulari. In questo
momento, il Trusted Computing Group conta già circa 110
membri, tra cui Sony, Nokia, Motorola, Hitachi e Philips. Questi
110 membri producono la stragrande maggioranza di ciò che
arriva sugli scaffali dei negozi e detiene quasi la totalità dei
brevetti necessari a produrre un dispositivo digitale di
qualunque tipo.
Alcune applicazioni interessanti del Trusted Computing
Nel marzo del 2004, un osservatore anonimo ha pubblicato
una interessante analisi dei possibili usi positivi del TC sul suo
blog “Unlimited Freedom”, ospitato da un servizio di web
logging anonimo chiamato invisiblog (http://invisiblog.com).
L'articolo originale, in due parti, si chiama “Interesting Uses of
Trusted Computing” ed è reperibile ai seguenti indirizzi.
http://invisiblog.com/1c801df4aee49232/article/0df117d5d9
b32aea8bc23194ecc270ec
http://invisiblog.com/1c801df4aee49232/article/6b607597c
4c3ad8ca8a72fd4cf5d1b91
Qui di seguito riportiamo gli elementi essenziali di questa
analisi.
Elezioni via Internet (Online Elections)
Durante le elezioni per il secondo mandato di George W. Bush,
gran parte degli stati dell'unione hanno fatto largo uso di
sistemi di voto elettronici. Questi sistemi erano (e sono) afflitti
da un grave problema: per ovvie ragioni legate alla segretezza
del voto, non tengono traccia delle votazioni effettuate. In
questo modo, è impossibile verificare che le elezioni si siano
svolte in modo corretto dopo che esse si sono concluse. Il
fatto che questi sistemi siano accessibili solo a tecnici
specializzati (che lavorano per le aziende private che
producono i dispositivi) e solo su mandato degli enti di
sorveglianza, rende di fatto impossibile qualunque tipo di
controllo. Non è difficile immaginare una situazione in cui
viene concesso l'appalto per la fornitura di questo tipo di
attrezzature solo all'azienda che è in grado di garantire, in un
modo o nell'altro, la rielezione dei politici (e futuri candidati)
che firmano il contratto.
Nonostante questa inquietante prospettiva, e nonostante una
lunga serie di difficoltà tecniche già note, c'è ancora chi ritiene
che si dovrebbe sviluppare una tecnologia che consenta di
votare via internet. Questa esigenza è particolarmente sentita
in paesi che, come gli USA, sono caratterizzati da vasti territori
poco abitati dove il solo fatto di recarsi fisicamente a votare
può diventare un problema.
Secondo l'anonimo osservatore di invisiblog, il TC potrebbe
essere utile per garantire la correttezza e la sicurezza di
eventuali elezioni condotte via internet. Grazie alle
funzionalità di identificazione sicura dell'utente e grazie alla
robusta protezione dei canali di comunicazione, sarebbe
possibile condurre le procedure di voto con lo stesso grado di
sicurezza e di anonimato che è ora possibile in cabina
elettorale.
La principale critica che viene mossa a questa ipotesi è che,
semplicemente, non c'è nessun reale motivo di inserire nella
procedura di voto un meccanismo così chiaramente
suscettibile di abusi e così chiaramente incontrollabile come
l'elettronica digitale, Internet ed il Trusted Computing.
Gioci Multi-Giocatore su Internet (Multi-Player Games)
Il TC porterebbe dei grossi vantaggi ai giocatori di
Dungeon&Dragons su Internet, eliminando ogni possibilità di
truffa. Tuttavia, possiamo tranquillamente affermare che si
può
vivere
benissimo
anche
con
un
normale
Dungeon&Dragons frequentato dai soliti bari. Questa non può
essere certo una motivazione ad adottare una tecnologia
carica di insidie come il TC.
Gioco d'Azzardo su Internet (Online Gambling)
Un altro settore che risentirebbe sicuramente in modo positivo
dell'avvento del TC sarebbe quello del gioco d'azzardo via
Internet. A questo proposito, si può solo domandarsi se sia
desiderabile la diffusione del gioco d'azzardo nelle nostre
società, dentro o fuori la Grande Rete.
Transazioni Finanziarie (Financial Transactions)
Il nostro anonimo osservatore fa notare che tutto il settore
dell'Internet Banking e del commercio elettronico risentirebbe
positivamente della nuova atmosfera di fiducia portata dal TC.
Di questo non c'è da stupirsi: il TC è stato sviluppato
soprattutto per supportare questo genere di applicazioni.
Tuttavia, si deve far notare che l'Internet Banking ed il
commercio elettronico godono di ottima salute anche senza il
TC. Basta visitare i siti web di Fineco (www.fineco.it) e di
Amazon (www.amazon.com) per rendersene conto.
VPNs
Le VPN (Virtual Private Networks) sono reti digitali private
(chiuse) che vengono “ritagliate” da una rete globale come
Internet applicando dei protocolli di protezione crittografica ai
dati in transito. Gli utenti vedono queste reti come se fossero
chiuse ed inaccessibili dall'esterno ma, nella realtà fisica,
queste reti sono solo flussi di dati cifrati che scorrono su
Internet insieme a milioni di altri flussi.
Ovviamente il TC renderebbe molto più sicure queste VPN ma,
come è facile verificare, le VPN stesse esistono e proliferano
da anni anche senza questa tecnologia e non mostrano falle di
sicurezza tali da inficiarne l'affidabilità. Va anche detto che chi
ha realmente bisogno di una sicurezza assoluta, come certe
applicazioni bancarie o militari, usa già adesso delle reti
distinte da Internet, e da altre reti, e debitamente protette.
File Sharing (P2P Networks)
Curiosamente, uno dei settori che potrebbe risentire in modo
positivo della introduzione del TC è quello delle reti P2P (Peerto-peer o di “file sharing”). La possibilità di usare identificatori
crittografici, univoci ma anonimi, per identificare i nodi della
rete (cioè gli utenti) e la possibilità di cifrare i flussi di dati
renderebbe queste reti molto più anonime, sicure ed affidabili
di quanto siano attualmente.
Tuttavia, reti che applicano con successo questi principi,
senza ricorrere al TC, esistono e proliferano già da tempo. Si
vedano, ad esempio, le seguenti reti P2P.
ANTs P2P (http://antsp2p.sourceforge.net/)
Mute (http://mute-net.sourceforge.net/)
Freenet (http://freenet.sourceforge.net/)
Remailer Anonimi (Anonymous Remailers)
I remailer sono server che accettano in ingresso un messaggio
di posta elettronica, lo ripuliscono di ogni elemento che possa
mettere un eventuale investigatore sulle tracce del mittente, e
lo inviano al destinatario in forma anonima.
Questo tipo di applicazioni potrebbe trarre grande vantaggio
dall'avvento del TC perchè potrebbe fare uso degli
identificatori crittografici del TC, che sono univoci ma
anonimi, per identificare il mittente e potrebbe usare le
capacità crittografiche del TC per proteggere il contenuto dei
messaggi da sguardi indiscreti.
Anche in questo caso, esistono già diverse applicazioni,
diffuse ed affidabili, che ottengono questo stesso risultato
senza fare uso del TC.
Calcolo Distribuito (Distributed Computing)
Negli ultimi anni si sono diffuse su Internet alcune interessanti
applicazioni di calcolo distribuito. Una delle più famose è il
progetto SETI@Home (http://setiathome.ssl.berkeley.edu/).
Questo progetto crea una gigantesca rete di computer, tutti
coinvolti nello stesso calcolo, usando un apposito programma
client (in questo caso uno screen saver) installato su ognuno
di essi. Queste risorse di calcolo vengono usate dal progetto
SETI (“Search for Extra-Terrestrial Intelligence”, vedi:
http://www.seti.org/) per analizzare i segnali radio
provenienti da varie regioni dello spazio. Progetti simili vengo
portati avanti in vari settori e da varie organizzazioni. Si
vedano i seguenti indirizzi.
http://www.distributed.net/
http://www.distributedcomputing.info/
http://folding.stanford.edu/
http://en.wikipedia.org/wiki/Distributed_computing
L'avvento del TC renderebbe molto più semplice e più sicuro
creare queste grandi reti di calcolo distribuito anche se, come
è possibile verificare su Internet, queste reti sono già state
costruite e vengono già usate da anni, senza bisogno del
supporto fornito dal TC.
Un anonimo osservatore ha fatto notare che si farebbe miglior
uso di queste tecnologie di calcolo distribuito avviando un
programma per la ricerca di intelligenza sul Pianeta Terra (STI,
cioè “Search for Terrestrial Intelligence”). Secondo questo
osservatore, l'esistenza di forme di vita intelligente non
risulterebbe evidente dall'analisi delle tracce radio emesse dal
nostro pianeta (come “Il grande fratello”, “la talpa”, “l'isola dei
famosi”, etc.).
Vendita di cicli macchina (Selling CPU cycles)
Un caso particolare di calcolo distribuito si ha quando
qualcuno, di solito una grande azienda od una università,
decide di vendere i “cicli macchina” od il “tempo di calcolo” di
un computer (di solito un supercomputer molto costoso) a
qualcun'altro, di solito una piccola azienda od un privato. In
questo caso, l'uso del TC renderebbe possibile identificare
l'utente e fatturare il servizio con maggiore facilità e
sicurezza. Questo, sostanzialmente, è un caso particolare
della più vasta categoria concettuale del commercio
elettronico e condivide con essa tutti i vantaggi e gli svantaggi
relativi all'adozione del TC.
Agenti Mobili (Mobile Agents)
Gli agenti mobili sono programmi che possono muoversi in
rete da un computer all'altro per svolgere le loro funzioni. Ad
esempio, sono stati sviluppati agenti mobili che si spostano
fisicamente da un computer all'altro attraverso Internet per
raccogliere informazioni sui documenti disponibili sui vari
server (agenti di indicizzazione). Questo tipo di applicazioni
ha delle pesantissime implicazioni di sicurezza perchè ogni
agente mobile deve avere accesso a risorse potenzialmente
molto delicate sul computer su cui si trasferisce. Molti
osservatori considerano gli agenti mobili una versione ripulita
e socialmente accettabile dei virus informatici.
Grazie al TC sarebbe possibile assicurarsi che l'agente mobile
sia realmente chi dice di essere ed accordargli i necessari
diritti di accesso alla macchina in tutta sicurezza. La
protezione fornita dal TC impedirebbe comunque all'agente
mobile di accedere a dati riservati, sul disco od in memoria, e
gli impedirebbe anche di interferire con le normali attività di
altri programmi.
In questo momento non esiste nulla che possa svolgere la
stessa funzione del TC in questo settore ma resta da chiarire
se la tecnologia degli agenti mobili sia così utile da giustificare
l'introduzione del TC su larga scala.
DRM Aziendale o ERM (Corporate DRM)
Mentre i sistemi DRM (Digital Rights Management) proteggono
dalla copia e dall'uso abusivo i contenuti multimediali
dell'industria del recording (musica e film), i sistemi di DRM
aziendale o ERM (Enterprise Rights Management) proteggono
dalla copia e dall'abuso i documenti aziendali, siano essi
documenti di testo (.DOC, .RTF, .PDF, .TXT, etc.), messaggi di
posta elettronica, sessioni di chat, messaggi istantanei o
messaggi SMS. La tecnologia usata è molto simile nei due casi
e, di conseguenza, entrambi questi sistemi potrebbero
avvantaggiarsi notevolmente delle funzionalità offerte dal TC.
Rimane da stabilire se un simile tipo di controllo aziendale sui
documenti utilizzati dai dipendenti sia legittimo e/o
socialmente desiderabile. Si pensi solo al caso in cui un
superiore invia un ordine per posta elettronica d un
subordinato, costringendolo a fare qualcosa di discutibile, e
poi cancella ogni traccia di quel messaggio usando gli
strumenti messi a disposizione dal TC. Abusi di questo tipo
sono tecnicamente possibili e non è difficile immaginare che
chi conosce meglio questa tecnologia li userà ampiamente a
proprio vantaggio ed a discapito di chi, per ignoranza o per la
propria posizione aziendale, non ha accesso agli stessi
strumenti.
Riservatezza nel commercio in rete (Online Shopping Privacy)
Al giorno d'oggi, se decidete di acquistare un vibratore su
Internet, dovete essere disposti ad affrontare il rischio che,
attraverso lo strumento da voi scelto per pagare (carta di
credito o altro) si possa risalire alla vostra identità. Il TC
potrebbe mettere fine a questo problema. Le sue funzionalità
potrebbero essere usate per triangolare in modo sicuro i
pagamenti tra voi, la vostra banca ed il venditore in modo che
nessuno sappia chi siete e cosa state comprando. Più avanti
ancora, è plausibile che si possa utilizzare il TC per dare vita
ad una forma di carta moneta digitale del tutto anonima e
facilmente spendibile in rete in tutta sicurezza. Studi in questa
direzione sono stati condotti per anni senza mai arrivare ad
una vera diffusione di strumenti di questo tipo proprio a causa
della mancanza di alcune funzionalità crittografiche di base
sui computer.
Tuttavia, una semplice carta di credito prepagata può svolgere
gran parte delle stesse funzioni senza richiedere l'uso del TC.
Le critiche al TC
Un sistema inutile
La prima contestazione che viene mossa al Trusted Computing
è quella di essere un sistema dichiaratamente inutile per
l'utente finale. Questa contestazione è l'effetto, tra l'altro, di
alcune dichiarazioni contenute nella documentazione ufficiale
di Microsoft.
Ad esempio, all'interno delle FAQ relative a NGSCB, Microsoft
afferma:
15
D: NGSCB potrà fermare gli spammer o prevenire le
infezioni da virus?
R: No. A dispetto di qualche esagerazione della stampa,
l'introduzione di NGSCB, in sé e per sé, non fermerà gli
spammer e non contribuirà ad arginare le infezioni.
Tuttavia, usando NGSCB come base, è possibile costruire
una varietà di infrastrutture e di modelli di sicurezza che
possono aiutare a combattere lo spam ed i virus in modi
nuovi e molto efficaci.
In realtà, come spiegano gli autori di queste FAQ, NGSCB può
essere efficacemente usato come base tecnologica per
costruire dei sistemi di difesa molto robusti, anche se, in sé
stessa, questa tecnologia non fornisce nessuno strumento
utile a questo scopo.
Tuttavia, NGSCB ed il Trusted Computing restano comunque
15 Q: Will NGSCB stop spam or prevent viruses?
A: No. Despite some hype in the media, introducing NGSCB enhancements to
the PC ecosystem will not, in and of itself, stop spam or prevent viruses.
However, by using NGSCB technology as a foundation, a number of trust and
infrastructure models can be built to help combat spam and viruses in new
and effective ways.
una tecnologia di utilità molto discutibile. Gran parte delle
funzionalità che questa tecnologia dovrebbe fornire sono già
ampiamente disponibili da tempo. Per difendere i sistemi
attuali da virus, worm, programmi spia e hacker è sufficiente
usare i firewall e gli antivirus già esistenti. Non c'è motivo di
sostituire tutto l'hardware esistente.
Inoltre, come abbiamo già detto, gran parte dei problemi di
sicurezza descritti dagli ideatori del Trusted Computing
affliggono quasi solo l'ambiente Windows. Virus, worm, cavalli
di Troia, programmi spia, adware e molti altri flagelli digitali
sono praticamente sconosciuti nel mondo Apple (McIntosh) ed
in quello Unix/Linux (vedi Appendice C).
Gran parte dei problemi del mondo Windows sono infatti
dovuti a delle gravi falle di sicurezza prodotte, per ragioni
commerciali e strategiche, da Microsoft stessa. Il caso più
clamoroso è la presenza di un interprete Basic (VBA), assai
poco sicuro, all'interno di tutte i programmi prodotti da
Microsoft, tra cui Word, Excel, PowerPoint, Outlook e Internet
Explorer. Questo interprete è responsabile di praticamente
tutte le epidemie di virus che si sono diffuse su Internet degli
ultimi 5 o 10 anni e non è mai stato né rimosso né reso
realmente affidabile.
Per avere un computer sicuro, dal punto del vista dell'utente
finale, sarebbe sufficiente usare un sistema operativo e del
software costruito con la dovuta cautela, come Linux e gran
parte del software Open Source (Mozilla Firefox, Mozilla
Thunderbird, OpenOffice, etc.). Non c'è nessun bisogno di
nuove e sofisticate tecnologie implementate in hardware.
Questa situazione è certamente destinata a cambiare in
futuro, quando un maggior numero di hacker comincerà a
dedicare la propria attenzione a Linux, ma il concetto di base
resta valido: i sistemi informatici possono (e dovrebbero)
essere difesi con strumenti meno invasivi del Trusted
Computing, a partire da una progettazione e da una
implementazione attenta ai problemi della sicurezza.
Sicuro per chi?
Le considerazioni sull'utilità del Trusted Computing portano
direttamente ad un'altra domanda: se il Trusted Computing
non è utile per l'utente finale, a chi serve? In altri termini, se il
mio PC non è sicuro per me, per chi è sicuro?
Nella sua famosa FAQ sul Trusted Computing, il Professor
Ross Anderson dell'Università di Cambridge presenta questa
contestazione in modo molto chiaro:
La domanda è: sicurezza per chi? Tu preferiresti non
doverti preoccupare dei virus, ma neppure il TC li fermerà: i
virus sfruttano il modo in cui le applicazioni software (come
per esempio Microsoft Office e Outlook) utilizzano lo
scripting. Potresti essere insofferente rispetto allo
spamming, ma non sarà possibile eliminare neppure
questo.
.......
Visto in questi termini il TC non fornisce la stessa sicurezza
all'utente e al venditore di PC, al fornitore di software e
all'industria dei contenuti. Non aggiunge valore per
l'utente, anzi lo distrugge. Si limita ciò che si può fare sul
proprio PC per poter disporre di applicazioni e servizi che
estraggono più denaro all'utente.
Ross Anderson non è il solo a criticare il Trusted Computing in
questo modo. Praticamente tutti gli analisti che si sono
occupati del Trusted Computing sono concordi nell'affermare
che un computer che usa questa tecnologia è da considerarsi
sicuro per il produttore dell'hardware, del software e dei
contenuti multimediali presenti su di esso, ma non per l'utente
che ha comprato e pagato questo oggetto. Questa critica non
viene adeguatamente contestata nemmeno dai più autorevoli
sostenitori del Trusted Computing. Ad esempio, David Safford
si limita a rispondere alle critiche di Anderson in questo
modo:
16
“Visti in questi termini, TCPA e Palladium non fanno lo
stesso sforzo per proteggere l'utente ed il fornitore del
computer, del software o dei materiali. Questa tecnologia
16 "Seen in these terms, TCPA and Palladium do not so much provide security for the
user as for the PC vendor, the software supplier, and the content industry. They do not
add value for the user, but destroy it." Personally, I find the ability to protect my private
keys, and to protect my encrypted data very important and very valuable.
non aggiunge valore per l'utente ma anzi lo distrugge.”
Personalmente, trovo la possibilità di proteggere le mie
chiavi crittografiche ed i miei dati molto importante e molto
prezioso.
In effetti, nell'architettura del Trusted Computing sono
presenti degli elementi che hanno poco o niente a che fare con
la sicurezza dell'utente e sono invece chiaramente destinati a
proteggere gli interessi dei fornitori di software e di contenuti.
Il primo di questi elementi è l'attestazione remota. Come
abbiamo visto in precedenza, con questo termine si definisce
la procedura con cui un computer (od un altro dispositivo) si
identifica quando contatta un server remoto o quando tenta di
accedere ad una risorsa protetta (che può essere, ad esempio,
un file crittografato). In pratica, si tratta della stessa procedura
con cui l'utente si identifica quando si collega ad un sito web
protetto, come un sito di Home Banking. In questo caso,
tuttavia, è il computer ad identificarsi, senza che l'utente
debba (o possa) intervenire. Inoltre, il computer invia un
identificatore digitale che descrive la sua identità e la struttura
del suo sistema. Se l'utente cambia un dispositivo od un
programma, questo identificativo cambia a sua volta. Grazie a
questa funzionalità, la controparte remota può sapere se il
sistema è cambiato rispetto a quando è stato “certificato” (ad
esempio, può scoprire se è stato installato software in grado
di bypassare le protezioni).
Francamente, è molto difficile pensare che questo meccanismo
sia utile all'utente. Qualunque altro meccanismo di
autenticazione, come le normali password, è più che
sufficiente per le necessità dell'utente e delle aziende. Né le
aziende né gli utenti individuali hanno realmente la necessità
di sapere cosa c'è installato sul computer della persona con
cui stanno parlando. Questa è una esigenza che può avere
piuttosto chi vende software e contenuti multimediali ed è
quindi esposto al rischio di copie abusive.
Il secondo elemento che lascia perplessi è la protezione
crittografica dei canali di comunicazione tra i vari componenti
del computer. Dato che l'utente ha legittimamente comprato
tutti questi elementi e può vantare su di essi una lunga serie
di diritti, per quale motivo le comunicazioni tra questi
componenti devono essere precluse alla sua analisi? Secondo
gli ideatori del Trusted Computing, questa funzionalità serve a
proteggere i dati in transito (le password) dall'azione di
programmi spia. In realtà, la protezione contro questi
programmi spia è già disponibile da anni, sotto forma di
antivirus generici e di programmi di rilevamento più specifici.
La vera ragione che ha spinto gli ideatori di NGSCB e LaGrande
a volere questa funzionalità può essere facilmente dedotta
leggendo il
rebuttal di David Safford. Commentando le
critiche di Lucky Green, Safford dice:
17
“[TCPA] chip: il chip è resistente alle manomissioni e
montato direttamente sulla scheda madre.” Beh, no. Il chip
TCPA non è particolarmente resistente nei confronti di un
attacco messo in atto dal suo proprietario. Nei Criteri
Comuni di Valutazione del TCPA, questo tipo di resistenza
è specificamente non inclusa tra gli obiettivi da
raggiungere. La versione IBM di questo chip viene venduta
sotto forma di scheda LPC e non è particolarmente protetta
contro attacchi fisici locali. Questo non è mai stato un
obiettivo in quanto questo sistema è stato sviluppato per
proteggere i dati dell'utente contro attacchi esterni via
software.
In effetti, quello che dice David Safford è vero. Il Fritz Chip
proposto dal Trusted Computing Group, e prodotto da IBM, è
semplicissimo da aggirare: basta sfilarlo dalla sua slot sulla
scheda madre.
Proprio per questo motivo l'architettura di Intel (LaGrande) e
quella di Microsoft (NGSCB, ex-Palladium) hanno aggiunto alle
specifiche del Trusted Computing Group due elementi che
non erano originariamente previsti: l'implementazione della
tecnologia Trusted Computing all'interno delle CPU e la
protezione crittografica delle comunicazioni tra questi
elementi. In questo modo, l'utente non ha più modo di
17 "[TCPA] chip: tamper resistant, surface mounted". Well, no. The TCPA chip is not
particularly tamper resistant against owner attack. In the Common Criteria Evaluation
target for TCPA, hardware tamper resistance is specifically not included as a goal. The
IBM version ships as an LPC daughterboard, and is not specially protected against
local hardware attacks. This was never a requirement, as the goal was to protect user
data against external software attack".
disabilitare queste funzionalità e non può nemmeno
intercettare i flussi di dati tra un elemento e l'altro. L'utente è
stato efficacemente tagliato fuori dal computer che ha
comprato e regolarmente pagato. In pratica, l'utente viene
trattato alla stregua di un avversario o, peggio, di un virus.
Ross Anderson riporta una esplicita ammissione di un
funzionario Microsoft su questo modo di intendere i rapporti
con l'utente:
Un modo caritatevole di guardare al TC è stato promosso
da Roger Needham che ha diretto la ricerca Microsoft in
Europa: esistono alcune applicazioni in cui si desidera
limitare le azioni dell'utente. Per esempio si potrebbe voler
impedire alla gente di intervenire sul contachilometri prima
di vendere l'auto. Nello stesso modo, se vuoi gestire i DRM
su un PC allora devi considerare l'utente come un nemico.
L'ultimo elemento, forse il più inquetante, che fa ritenere che
il Trusted Computing sia una tecnologia che protegge il
venditore più che l'acquirente, è la possibilità di veto e di
interferenza che un server remoto può avere sul dispositivo
dell'utente.
La documentazione di LaGrande afferma:
18
L'agente remoto può esaminare le credenziali per
verificare
se
questa
chiave
pubblica
rappresenti
effettivamente un TPM reale. Inseguito può usare questa
chiave per verificare la firma digitale sui dati ed infine per
estrarre i dati stessi. A questo punto, i dati estratti possono
essere confrontati con varie liste per verificare
se
l'ambiente è accettabile per l'agente remoto.
In altri termini, l'utente (il suo dispositivo) deve lasciarsi
identificare poi il server remoto decide se e cosa l'utente può
fare basandosi su una "lista" non meglio definita. Questo, in
pratica, equivale a dire che chi gestisce il server può decidere
di fornire o meno un servizio od un prodotto sulla base
18 The remote agent may examine the credentials to determine that this
public key does; in fact, represent a real TPM, then uses the public key to
verify the signature on the record and, then extracts the data from the record.
The extracted data may now be checked against various lists to determine if
this is an environment acceptable to the remote agent.
dell'identità del dispositivo (cioè dell'utente) e della sua
configurazione (del software installato). Se il programma che
usate per ascoltare la radio via internet finisce sulla lista nera
del fornitore, allora niente radio (anche se avete già pagato
l'abbonamento).
Questa caratteristica di veto diventa ancora più pericolosa se
la si vede unita alle caratteristiche di gestione remota dei
sistemi Trusted Computing. Nel capitolo "Applicazioni del
Trusted Computing" abbiamo detto che l'implementazione di
Intel e di Microsoft rendono possibile la creazione di un canale
protetto preferenziale per gli amministratori di sistema.
Questo vuol dire che se il server remoto o l'amministratore di
rete trova sul vostro computer qualcosa che non gradisce,
teoricamente (e forse anche praticamente) lo può rimuovere
d'autorità, può installare un aggiornamento od un programma
sostitutivo senza nemmeno dirvelo. Questa caratteristica è
esplicitamente supportata da Microsoft già da molto tempo,
sotto forma degli aggiornamenti automatici del sistema di
Windows Update. In teoria (e forse anche in pratica) questo
sistema potrebbe inviare una lettera di denuncia alla Polizia se
trova sul computer dei file protetti da copyright provenienti da
fonti sospette. Secondo Anderson, una tecnologia di questo
tipo, chiamata "Traitor Tracement" è stata effettivamente
studiata da Microsoft per diversi anni.
Anche in questo caso, è veramente difficile ipotizzare una
applicazione sensata di queste funzionalità se non per
proteggere i diritti dei fornitori di software, contenuti
multimediali e servizi su Internet.
Usi ed Abusi
Una delle più gravi critiche che viene mossa al TC è che questa
tecnologia si presta incredibilmente bene ad abusi di vario
genere da parte delle aziende, dei governi e dei produttori di
hardware, di software e di contenuti. Molti specialisti hanno
fatto notare che c'è molta differenza tra quello che si può
tecnicamente fare con il Trusted Computing e ciò che è
effettivamente previsto dai progetti di Intel, AMD, Microsoft e
degli altri produttori. Questo fa nascere il sospetto che mentre
le aziende dichiarano di avere degli scopi del tutto legittimi e
sostanzialmente limitati, le reali applicazioni a cui stanno
pensando siano ben altre. Naturalmente le aziende respingono
in modo deciso questi sospetti. Ad esempio, David Safford
rigetta le accuse che vengono mosse al TC da Ross Anderson
nel seguente modo.
19
Il Fritz Chip controlla che i componenti hardware siano
sulla lista dei componenti approvati dal TCPA, che il
software sia stato certificato e che nessun elemento abbia
un numero di serie revocato. Se sono state apportate
modifiche significative alla macchina, allora la macchina
deve essere collegata ad Internet e ricertificata”. Nulla di
questo esiste in nessun punto delle specifiche TCPA od in
nessun prodotto sul mercato. Mentre queste cose possono
essere teoricamente fatte su qualunque sistema operativo,
presentarle come realtà, invece che come pura
speculazione, è un atto irresponsabile.
20
“C'è un momento nel quale tuttavia non si può spegnere il
Fritz Chip: non si può fare in modo che esso ignori il
software piratato. Anche se il sistema viene avviato in
modalità untrusted, il Fritz Chip controlla ugualmente che il
sistema operativo non si trovi sulla lista dei numeri di serie
revocati.” Queste sono altre speculazioni presentate come
fatti. Non esiste nessuna lista di numeri di serie revocati.
Questa lista può essere creata? Si, questo può essere fatto,
con o senza il TCPA. Non c'è limite alla lista di cose stupide
che può essere fatta con una macchina di Turing completa.
19 "Fritz checks that the hardware components are on the TCPA approved list,
that the software components have been signed, and that none of them has a
serial number that has been revoked. If there are significant changes to the
PC’s configuration, the machine must go online to be re-certified." None of
this exists anywhere in the TCPA specifications, or shipping product. While
these things could theoretically be done on any operating system, to present
them as existing fact, rather than the pure speculation that they are is
irresponsible.
20 "There is one respect, though, in which you can’t turn Fritz [TCPA] off. You
can’t make him ignore pirated software. Even if he’s been informed that the
PC is booting in untrusted mode, he still checks that the operating system
isn’t on the serial number revocation list." Here is more pure speculation
presented as fact. There is no "serial number revocation list". Could someone
create such a list? Yes, this could be done, with or without TCPA. There is no
end to the infinite number of stupid things that could be done on a Turing
complete system. TCPA simply does not do this.
TCPA semplicemente non fa niente di tutto questo.
Le affermazioni di Safford, tuttavia, non sono riuscite a porre
termine alla discussione su questo argomento. Il punto debole
di queste rassicurazioni è che i TPM del TCG, l'architettura
LaGrande di Intel, l'architettura Presidio di AMD e lo strato
software NGSCB di Microsoft sono cose molto diverse tra loro
e che implementano funzionalità altrettanto diverse. Anche
David Safford ne è consapevole ed infatti nel suo rebuttal
avverte:
21
Questo report analizza questi documenti contrari al TCPA
mettendo in risalto gli errori che contengono e
dimostrando che leloro conlcusioni sul TCPA sono
semplicemente sbagliate. Questo documento difende solo
TCPA. Palladium ed i sistemi DRM devono difendersi da
soli.
Safford difende i TPM del TCG ma i computer che troveremo sugli
scaffali dei negozi nei prossimi anni saranno invece dotati di
LaGrande o Presidio, che usano i TPM al loro interno ma che ne
ampiano anche enormemente le funzionalità. I TPM originali, da soli,
saranno presumibilmente usati più che altro su dispositivi meno
complessi come i lettori CD/DVD stand-alone, i ricevitori satellitari, i
lettori portatili, le radio e via dicendo. Di conseguenza, le
rassicurazioni di David Safford non sono applicabili ai computer.
Anche ammesso che le aziende del TCG si attengano strettamente
ai criteri stabiliti dal consorzio, ed a cui si riferisce Safford, questo
fornirà qualche garanzia solo riguardo ai TPM del TCG. I computer
basati su LaGrande, Presidio o TrustZone seguiranno altri criteri,
molto meno garantisti per l'utente.
Come se non bastasse, le rassicurazioni di Safford non sono del
tutto attendibili nemmeno nel caso dei più semplici dispositivi digitali
portatili o da salotto, cioè quelli su cui dovrebbero essere installati i
TPM del TCG da soli. I produttori di questi dispositivi non sono
obbligati ad attenersi alle regole del TCG. L'adesione alle linee guida
del TCG, infatti, è del tutto volontaria e non sono previste sanzioni
21 This report analyzes these anti-TCPA papers, pointing out these errors in
detail, and showing that their conclusions about TCPA are simply wrong. This
paper defends only TCPA. Palladium and DRM have to defend themselves.
per i trasgressori. Di conseguenza, questi produttori possono
benissimo installare sui loro dispositivi i TPM del TCG ed usarli come
componenti di una architettura più complessa, ad esempio di tipo
DRM. Cosa possano fare queste architetture di secondo livello
dipende solo dalla volontà di chi le implementa.
Ma quali sono gli abusi a cui si prestano questi sistemi? Tra le
cose che si possono teoricamente fare con questa tecnologia,
ma che non sono ufficialmente previste nella documentazione
dei produttori, gli analisti ne hanno identificate alcune davvero
inquietanti. Le analizziamo qui di seguito.
Identificazione degli utenti
Grazie al TC si potrebbero identificare con certezza i
dispositivi digitali ed i loro utenti sulle reti (Internet, Wireless e
qualunqe altra rete). Anche se il TCG sostiene che questo non
sia possibile, grazie alla disponibilità di infiniti alias
crittografici, questa garanzia è completamente basata sulla
buona fede di chi scrive il software. Chiunque può creare
software che utilizza le chiavi crittografiche del TPM per
identificare in modo certo l'utente in rete. Non c'è nulla che gli
impedisca di farlo, a parte i buoni propositi del TCG.
Obbligare l'utente ad usare del software così concepito, ed a
lasciarsi identificare, è semplice: basta negargli l'accesso a
qualche risorsa particolarmente appetibile se non lo fa.
DRM
Il TC permetterebbe di imporre a viva forza il rispetto dei
diritti dell'autore e del distributore di contenuti multimediali,
in modo molto più rozzo ed aggressivo di quanto sia
attualmente previsto dalle legislazioni americane ed europee.
Come abbiamo già visto, il DRM è quasi una seconda natura
per il TC, al punto che gran parte delle sue funzionalità
sembrano concepite apposta per questo scopo.
Traitor Tracking
Il TC permetterebbe di denunciare automaticamente i
trasgressori. Più esattamemte, il TC fornirebbe le funzionalità
di base necessarie a questo scopo, come l'identificazione
dell'utente e le funzionalità per “misurare” il software e
l'hardware che egli usa. Scrivere il software che implementa le
funzionalità di secondo livello necessarie per completare
l'opera, e costringere l'utente ad accettarlo, non sarebbe certo
un problema per colossi come Microsoft e Intel. Come
abbiamo già visto, sono già stati fatti degli studi su una
tecnologia che agisce proprio in questo modo.
Intercettazioni
Il TC potrebbe rendere possibile intercettare le comunicazioni
tra gli utenti. Questa è una conseguenza della posizione
privilegiata di cui gode chi controlla il TC (azienda, governo,
fornitore, etc.) rispetto all'utente del computer. Grazie a TC,
una azienda potrebbe facilmente imporre ai suoi dipendenti
l'uso di programmi di sua scelta e dotati di backdoor e/o di
funzionalità di spionaggio. Questo potrebbe essere fatto
anche da un fornitore hardware/software nei confronti dei
suoi clienti. In ogni caso, l'utente e/o proprietario del sistema
si troverebbe nella impossibilità di reagire proprio a causa
delle protezioni messe in atto dal TC.
Interferenze
Il TC potrebbe mettere i governi, le aziende ed i produttori di
hardware, software e di contenuti nella posizione di poter
interferire attivamente nelle comunicazioni tra gli utenti e nel
loro lavoro quotidiano. Anche questo sarebbe possibile grazie
alla posizione privilegiata di cui gode il sistema TC nei
confronti dell'utente e, di conseguenza, del potere di cui
dispone chi è in grado di controllare il sistema TC. Non è
difficile immaginare programmi che reagiscono attivamente a
determinate azioni “sgradite” dell'utente, ad esempio
reinstallando software che l'utente ha disinstallato o inviando
messaggi all'esterno. Non è nemmeno difficile immaginare
programmi che cancellano o modificano comunicazioni in
corso tra gli utenti (e-mail e web ma anche audio/video) sulla
base di criteri imposti da un fornitore o da un ente esterno
(polizia, governo, azienda, etc.). Queste funzionalità
potrebbero dare vita ad una nuova forma, estremamente
temibile, di censura e di controllo. Tutte queste applicazioni
sono esplicitamente vietate dai documenti del TCG e dei
principali sviluppatori di sistemi TC ma, secondo alcuni
osservatori, resta comunque possibile realizzarle.
Concorrenza Sleale
Il TC potrebbe essere usato da chi controlla il sistema TC per
disabilitare o rimuovere software sgradito dal computer
dell'utente o per impedirgli di funzionare. Nonostante tutte le
assicurazioni delle aziende del TC, creare questo tipo di
applicazione rimane possibile. Ocorre soltanto scrivere il
software necessario. Obbligare l'utente ad usarlo non sarebbe
un problema per colossi come i membri del TCG e per le
grandi aziende loro clienti.
In realtà, questo tipo di concorrenza sleale, o di vendor-lock,
è già insito nel fatto che i programmi utilizzino la
memorizzazione sigillata per proteggere i documenti da essi
creati. Se Word genera documenti cifrati che solo Word, e solo
a certe condizioni, può decifrare, nessun altro programma al
mondo potrà mai fargli concorrenza. Programmi come
ABIWord e OpenOffice sarebbero immediatamente tagliati
fuori dal mercato.
Installazione
dell'utente
ed
aggiornamento
automatico
a
dispetto
Il TC potrebbe rendere possibile installare automaticamente
del software sul sistema, od aggiornare quello esistente, senza
che l'utente venga avvisato. A dire il vero, questo è già un
evento abituale per chi usa Windows e Windows Update.
Censura
Il TC potrebbe permettere di creare e mettere in atto delle liste
di proscrizione di programmi, contenuti e forse persino utenti
che si desidera emarginare. Anche questo è tecnicamente
possibile. Il livello di privilegio di cui gode TC sul sistema è
tale da impedire all'utente di aggirare simili liste di
proscrizione.
Come si può vedere, i rischi di abuso sono decisamente gravi.
Rimane tuttavia una domanda a cui è necessario dare una
risposta: anche ammesso che queste applicazioni siano
tecnicamente
possibili, i produttori sono realmente
intenzionati ad implementarle?
Purtroppo, su questo punto non è possibile farsi molte
illusioni: queste cose sono tecnicamente possibili e verranno
implementate quasi certamente da uno o dall'altro dei
produttori. Le ragioni di questo pessimismo estremo sono
molte. La prima è che i produttori conivolti nel progetto
Trusted Computing sono oltre un centinaio. Statisticamente è
molto probabile che qualcuno di loro, presto o tardi, si faccia
tentare da queste possibilità. La seconda ragione è che esiste
una fortissima pressione da parte delle software house e delle
aziende del recording per adottare queste soluzioni. Non è un
mistero, ad esempio, che la RIAA (Recording Industry
Association of America) abbia sempre fatto pressioni in questo
senso presso il Congresso USA. Il terzo motivo è che non c'è
nessuno in questo momento in grado di opporsi. L'adozione di
queste tecnologie è soggetta solo alla accettazione (più o
meno forzata) da parte dei clienti. Non esistono leggi, né in
USA né in Europa né altrove, che regolino l'adozione di queste
tecnologie o le disciplinino in qualunque modo. Infine, ci sono
gli inquietanti precedenti di molte aziende coinvolte nel
progetto Trusted Computing. Microsoft, tanto per fare un
esempio, è famosa per usare tecniche molto aggressive,
spesso al limite della legalità, per conquistare e mantenere le
sue posizioni di mercato.
Chi controlla?
Come abbiamo appena visto, il Trusted Computing è una
tecnologia che può essere facilmente utilizzata per molte
applicazioni ufficialmente non previste dai suoi ideatori, molte
delle quali decisamente sfavorevoli per il legittimo proprietario
del dispositivo, chiaramente dannose per la salute del mercato
e forse pericolose per la libertà di espressione, per la
democrazia e persino per la sicurezza nazionale. Ad essere
sinceri, questa tecnologia di presta talmente bene a vari tipi di
abuso da far pensare che ci sia qualcosa di intenzionale in
questa sua seconda natura.
A questo punto, sorge spontanea una domanda: chi controlla
che questa tecnologia sia usata soltanto per fini legittimi?
Incredibilmente nessuno. In questo momento, non esiste
nessun ente di sorveglianza su questa tecnologia, né in USA,
né in Europa, né in nessun'altra parte del mondo. L'uso di
questa tecnologia è regolato solamente dalla natura del
contratto d'acquisto sottoscritto (di solito implicitamente) tra il
produttore/venditore e l'acquirente/utente. Non c'è nessuno
che vigili sui contenuti di questo contratto e non c'è nessuno
che vigili sul fatto che l'acquirente sia realmente informato e
realmente consenziente nel momento in cui lo sottoscrive.
Tutto quanto avviene nello stesso contesto legale che regola
l'acquisto di una lavatrice, senza nessuna particolare
eccezione e senza nessuna particolare cautela. Si tratta
chiaramente di una situazione in cui le aziende (soprattutto se
consorziate, come nel caso del TCG) possono far valere in
modo quasi illimitato il loro maggiore peso contrattuale ed in
cui all'utente, spesso ignaro, non resta che subire
passivamente una pesante vessazione.
Per capire come si sia arrivati a questa allucinante asimmetria
di diritti tra produttori e consumatori, bisogna tornare molto
indietro negli anni, all'origine del concetto di DRM. Nell'Aprile
del 1941, in piena Seconda Guerra Mondiale e sotto la
dittatura fascista di Benito Mussolini, il Governo Italiano ha
emanato una legge per la tutela del diritti d'autore, la legge N°
633
(vedi:
http://www.interlex.it/testi/l41_633.htm
e
http://www.giustizia.it/cassazione/leggi/l633_41.html ). Il
testo di questa legge prevede tra l'altro una norma che
autorizza il produttore a fare uso di dispositivi tecnologici (di
qualunque tipo) a difesa del diritto d'autore:
Art. 102-quater
1. I titolari di diritti d'autore e di diritti connessi nonché del
diritto di cui all'art. 102-bis, comma 3, possono apporre
sulle opere o sui materiali protetti misure tecnologiche di
protezione efficaci che comprendono tutte le tecnologie, i
dispositivi o i componenti che, nel normale corso del loro
funzionamento, sono destinati a impedire o limitare atti
non autorizzati dai titolari dei diritti.
Questo diritto del produttore è stato poi riconosciuto anche
dalla legislazione americana con una legge emanata nel 2001
e diventata subito famosa: il Digital Millenium Copyright Act
(DMCA). Nel 2003 l'Unione Europea, senza nessuna
discussione democratica degna di nota, ha fatto proprie
queste norme ed ha emanato una direttiva nota come
European Union Copyright Directive (EUCD). Con un insolito
zelo, il Governo Berlusconi ha immediatamente provveduto ad
emettere vari decreti e varie leggi di attuazione per ribadire i
principi del DMCA/EUCD e rinforzare ulteriormente i principi
della Legge 633 del 1941, tra cui la famosa "Legge Urbani"
(Legge
128/2004,
vedi:
http://www.parlamento.it/parlam/leggi/04128l.htm).
Grazie a queste leggi, in questo momento, in tutto il mondo
occidentale è illegale sia mettere fuori uso i dispositivi di
protezione che tentare di esaminare il loro funzionamento. In
altri termini, da un lato viene riconosciuto il diritto dei
produttori di utilizzare questi sistemi di protezione e di
decidere, senza alcun controllo e senza alcun confronto con
l'utente, come questi dispositivi debbano funzionare.
Dall'altro, viene vietato all'utente di prendere qualunque
iniziativa per difendersi. Questo precedente, che riguardava
solo i DRM, ha aperto la strada all'uso di sistemi di protezione
dal significato più ampio, come sono appunto i sistemi di
Trusted Computing. Grazie a questa vastissima ed inusuale
coperatura legislativa, varata quasi all'insaputa della
popolazione, i produttori sono quindi liberi di fare quasi tutto
quello che desiderano. In particolare, possono decidere di
inserire
quello
che
vogliono
nei
prodotti
che
commercializzano e non devono rendere conto a nessuno
della natura e del funzionamento dei dispositivi utilizzati.
All'acquirente/utente viene lasciato solo il diritto di astenersi
dall'acquisto, se gli è possibile, o di rivolgersi ad altri prodotti,
se disponibili. Questa situazione è così chiaramente vessatoria
che persino le aziende produttrici sono state costrette a
riconoscerlo.
Ecco cosa afferma il TCG a questo proposito nel suo “Design,
Implementation, and Usage Principles for TPM-Based
Platforms”:
22
L'informatica ed Internet hanno cambiato in modo
fondamentale il valore e l'importanza dell'informazione. La
tecnologia TC, quando correttamente implementata, ha la
capacità di migliorare enormemente la sicurezza delle
piattaforme collegate ad Internet. Nello stesso tempo, come
molte tecnologie di sicurezza, il TC può essere usato in
modo inappropriato per minare i diritti umani fondamentali
dell'utente riguardo alla riservatezza ed al controllo sulla
piattaforma.
In vista di questi possibili abusi della
tecnologia TC, il TCG ha lavorato con grande impegno per
definire degli elementi costitutivi per il sistema di sicurezza
che favoriscano il controllo della piattaforma da parte
dell'utente, la riservatezza, l'interoperabilità e la portabilità
dei dati. Il TCG riconosce che le forze del mercato, i
comportamenti coercitivi ed una carente implementazione
possono fare molto per indebolire questi principi e che c'è
poco che il TCG possa fare per impedire ad un produttore o
22 Computing and the Internet have fundamentally changed the value and
importance of information. TCG technology, when properly implemented, has
the capability to greatly improve the security of platforms on the Internet. At
the same time, as with most security technologies, TCG technology could also
be used inappropriately to undermine basic human rights of privacy and
platform owner/user control. In light of this possibility for misuse of TCG
technology, the TCG has worked very hard to specify building blocks for a
security system that favors platform owner/user control, user privacy,
interoperability, and data portability. The TCG realizes that market forces,
coercive behavior, and poor implementations can do much to weaken these
principles and that there is little the TCG organization can do to prevent a
manufacturer or system designer from subverting the goals of privacy and
control, if they are determined to do so. What TCG can do, however, is to say
that such implementations fit neither the spirit of the TCG organization nor
the letter of the TCG Principles.
ad un progettista di sovvertire questi obiettivi di
riservatezza e di controllo, se queste persone sono
determinate a farlo. Ciò che può fare il TCG, tuttavia, è
asserire con chiarezza che questo tipo di implementazioni
non rispettano né la lettera né lo spirito dei principi stabiliti
dal TCG.
Il TCG non è stato il solo a correre ai ripari per difendersi da
questo tipo di critiche. Negli ultimi anni, quasi tutte le aziende
coinvolte nel progetto TC si sono dotate di apposite "linee
guida" sull'uso "moralmente accettabile" di queste tecnologie.
Il TCG ha pubblicato le sue norme nel Maggio del 2005, sotto
forma
di
"Best
Practices"
(vedi:
https://www.trustedcomputinggroup.org/downloads/bestprac
tices/Best_Practices_Principles_Document_v1.0.pdf ). Questo
documento ha ottenuto una accoglienza largamente
favorevole. Ad esempio, Stefan Bechtold, un ricercatore di
Stanford attivo nel settore delle leggi sul mondo digitale, ha
apprezzato i seguenti punti.
1. Il TCG e la progettazione dell'interfaccia utente
23
Innanzitutto, ci sono due motivio per cui il TCG dovrebbe
essere apprezzato. A pagina 12 di questo documento, il
TCG consiglia di coinvolgere degli specialisti di
progettazione dell'interfaccia utente sin dalle prime fasi di
implementazione di un sistema TC. Ritengo che questo sia
un punto molto importante e che possa contribuire a
risolvere sul nascere molte questioni legate alla gestione
del sistema e delle politiche di sicurezza.
2. Conflitti che sono per loro natura irrisolvibili
In secondo luogo, questo documento dovrebbe essere
23 1. TCG and human interface design
First, there are two issues which the TCG should be applauded for. On page
12 of the document, the TCG recommends to involve human interface experts
early on in the process of designing TCG-enabled systems. I think this is a
very important point which could avoid quite a lot of policy-related problems
from the beginning.
2. Conflicts that are inherently unsolvable
Second, the document should also be applauded for not trying to solve
conflicts that are inherently unsolvable.
apprezzato per il fatto che non cerca di risolvere conflitti
che sono per loro natura irrisolvibili.
Anche Bruce Schneier si è espresso positivamente su alcune
parti di questo documento:
24
Si tratta sostanzialmente di un buon documenti, sebbene
esistano alcune valide critiche. Apprezzo il fatto che questo
documenti affermi che l'uso coercitivo di una tecnologia, ad
esempio forzare l'utente ad usare una tecnologia DRM, sia
inappropriato.
L'uso di sistemi coercitivi per forzare l'uso delle
funzionalità del TPM non è un uso appropriato della
tecnologia TC.
Apprezzo anche il fatto che il documento cerchi di
salvaguardare la riservatezza dell'utente:
“Tutte le implementazioni di componenti TC dovrebbero
assicurarsi che questi componenti non possano essere usati
in modo inappropriato per raccogliere informazioni
sull'utente e sul suo comportamento.”
Tuttavia, tutti gli osservatori rilevano un punto critico
fondamentale di questo approcio: il rispetto di queste Best
Practices è del tutto volontario. Nessun ente di controllo è
preposto a sorvegliare la loro applicazione da parte della
aziende e nessun tribunale è in grado di emettere sanzioni nei
confronti dei trasgressori. Stefan Bechtold lo dice molto
chiaramente:
24 It's basically a good document, although there are some valid criticisms. I
like that the document clearly states that coercive use of the technology -forcing people to use digital rights management systems, for example, are
inappropriate:
The use of coercion to effectively force the use of the TPM capabilities is
not an appropriate use of the TCG technology.
I like that the document tries to protect user privacy:
All implementations of TCG-enabled components should ensure that the
TCG technology is not inappropriately used for data aggregation of personal
information
Mancanza di obbligatorietà. A pagina 13, il documento
afferma: “ Il TCG riconosce che le forze del mercato, i
comportamenti coercitivi ed una carente implementazione
possono fare molto per indebolire questi principi e che c'è
poco che il TCG possa fare per impedire ad un produttore o
ad un progettista di sovvertire questi obiettivi di
riservatezza e di controllo, se queste persone sono
determinate a farlo.“
25
Questo porta alla conclusione che, mentre il TCG spende
molte buone parole riguardo
ai problemi di
implementazione del TC, non offre nessun meccanismo
sanzionatorio per prevenire questo tipo di problemi.
Piuttosto, il TCG si affida alle forze del mercato, alla
autoregolazione, alle parole ed ed alle buone intenzioni dei
progettisti.
Anche Schneier è d'accordo su questo punto:
26
Lamentele a parte, si tratta di un buon documento e noi
tutti dovremmo sperare che le aziende ne seguano i
principi. L'adesione è completamente volontaria ma è il tipo
di documento a cui i governi e le aziende potrebbero
guardare e di cui potrebbero richiedere il rispetto da parte
dei fornitori.
Nel Settembre 2003, Intel ha pubblicato un documento di
autoregolamentazione chiamato "LaGrande Technology Policy
on Owner/User and Control". In questo documento, Intel
25 Lack of enforcement: On page 13, the document states: "TCG realizes that
market forces, coercive behavior, and poor implementations can do much to
weaken these principles and that there is little the TCG organization can do to
prevent a manufacturer or system designer from subverting the goals of
privacy and control, if they are determined to do so.
.........
This all leads to the conclusion that, while TCG has nice words to say about
the policy problems of trusted computing, it does not offer any sanctioning
mechanisms that help to to prevent such problems. Rather, TCG relies on
market forces, self regulation, nice words and positively biased technology
design.
26 Complaints aside, it's a good document and we should all hope that
companies follow it. Compliance is totally voluntary, but it's the kind of
document that governments and large corporations can point to and demand
that vendors follow.
riconosce esplicitamente la necessità di
autocontrollo nell'uso di queste tecnologie:
una
forma
di
27
Intel ritiene che una chiara, non ambigua definizione di
una politica di implementazione sia molto importante nel
momento in cui l'industria si imbarca in un progetto teso a
migliorare la sicurezza dei PC. Queste politiche dovrebbero
fornire una guida per lo sviluppo responsabile dei prodotti,
aiutare a definire dei modelli di utilizzo che si appoggino
alle funzionalità di LaGrande ed aiutare gli acquirenti a
prendere decisioni di acquisto più consapevoli.
ed ancora:
28
Intel ritiene che l'adesione a queste politiche, od a
politiche equivalenti, sia fondamentale per ottenre tutti i
benefici di LaGrande e delle tecnologie complementari e di
conseguenza
incoraggerà
vigorosamente
i
suoi
collaboratori a fare proprie queste linee guida ed a
implementarle.
Purtroppo, anche riguardo a questo documento di Intel
valgono le stesse critiche già fatte al documento del TCG: si
tratta di linee guida che nessuno a tenuto a rispettare.
Nemmeno Intel si lega a doppio filo a questo suo documento:
29
Nello stesso momento, riconosciamo che molti aspetti
legati alla implementazione di queste politiche dipendono
dallo sviluppo hardware e software di fornitori esterni e
sono quindi fuori dalla portata di Intel.
Microsoft non è meno esplicita nel riconoscere che esiste un
27 Intel believes that a clear, unambiguous statement of policy is very
important as the industry embarks on a path toward greater PC security.
These policies should provide guidance for responsible product development,
help define use models that rely on LT capabilities, and help buyers make
more informed purchase decisions.
28 Intel believes adherence to these or equivalent policies is critical to delivering the full benefits of LT and complementary security technologies, and will vigorously encourage our fellow travelers in the industry to internalize and implement these policies.
29 At the same time, we recognize that many aspects of successful policy
implementation depend on software and hardware development from third
party providers whose implementations are outside Intel’s direct control.
problema morale legato all'uso di queste tecnologie ed alla
assenza di un controllo esterno. Ad esempio, nelle sue FAQ
affronta uno dei possibili casi di abuso:
30
D: Come si può essere sicuri che il Nexus ed i componenti
correlati facciano esattamente quello che dichiarano?
R: Microsoft renderà largamente disponibili i sorgenti del
software utilizzato in modo che sia esaminato e valutato.
Tuttavia, Microsoft non ha ancora pubblicato nessun documento che specifichi quale dovrebbe essere l'uso "corretto" di NGSCB.
30 Q: How can anyone be sure that the nexus and related components do
exactly what you claim they do?
A: Microsoft will make widely available for review the source code of the
trusted computing base so it can be evaluated widely and validated.
I rischi del TC
The Overridden User
Il primo e più importante rischio che si corre con l'adozione su
larga scala di questa tecnologia è semplicemente quello di
vedere "sovrascritta" la volontà dell'utente. Questo rischio è
stato battezzato "Overridden User", cioè "Utente sovrascritto"
o "utente scavalcato".
Come abbiamo visto, il TC rende disponibili molti strumenti
per ottenere questo risultato. Che questi strumenti siano stati
ufficialmente creati per contrastare vari tipi di minaccia, poco
importa: rimangono comunque utilizzabili per schiacciare
l'utente e ridurlo al ruolo di puro consumatore passivo e privo
di volontà.
Su questo punto, tutti gli osservatori sono d'accordo. Ecco
come si esprime Ross Anderson nella sua FAQ:
A tutti gli effetti, le specifiche TCG, trasferiranno il
controllo definitivo del tuo computer da te stesso a
chiunque abbia scritto il software che utilizzi. (Molto di più
di ciò che succede ora.)
Catherine Flick conclude la sua tesi di alurea in questo modo:
A meno di drastiche modifiche alle specifiche ed alla
implementazione, il TC non sarà in grado di fornire una soluzione
al problema della sicurezza dei computer e delle reti senza
imposserasi silenziosamente del diritto alla riservatezza e della
libertà di scelta dell'utente.
31
31 Overall, Trusted Computing will not, without major modifications to
specifications and implementations, be able to deliver a solution to the
problems of computer and network security without severely encroaching on a
user’s privacy and freedom of choice.
Seth Schoen, da parte sua, si esprime in questo modo:
32
La mancanza di controllo da parte dell'utente sul
contenuto dell'attestazione è il problema centrale della
attuale proposta di Trusted Computing. Si tratta di un
difetto di progettazione inaccetabilmente grave che deve
essere corretto prima che il Trusted Computing possa
diventare una tecnologia di chiaro vantaggio per l'utente.
Pericoli per la Competizione Commerciale
Uno dei primi rischi del Trusted Computing ad essere
identificato, e tuttora uno dei più discussi, è rappresentato
dalla possibilità di usare questa tecnologia per creare un
"cartello" di produttori di hardware, di software e di contenuti,
a danno della libera concorrenza e del consumatore.
Il Professor Ross Anderson, nella sua famosa FAQ, descrive il
problema nel modo seguente.
Il secondo, e più importante, beneficio per Microsoft è che
TC incrementerà esageratamente i costi per passare da
prodotti Microsoft (come Office) a prodotti concorrenti
(come OpenOffice). Per esempio uno studio legale che
voglia passare da Office a OpenOffice oggi dovrebbe
semplicemente installare il software, formare i dipendenti e
convertire i file esistenti. Nel giro di cinque anni una volta
che essi abbiano ricevuto documenti protetti con il TC da
magari un migliaio di differenti clienti, essi dovrebbero
avere il permesso (nella forma di certificati digitali) da
ciascun specifico cliente per poter migrare i loro file nella
nuova piattaforma. Lo studio legale, in pratica, non vorrà
questo, e in questo modo saranno ancora più impediti nel
passaggio ad un altro software. In questo modo Microsoft
potrà alzare ulteriormente i prezzi.
Gli Economisti che hanno studiato l'industria del software
concludono che il valore di un business informatico è
32 The lack of computer-owner control of the content of attestations is the
central problem with the current trusted computing proposals. It is an
unacceptably grave design flaw that must be remedied before the trusted
computing architecture as a whole package will be of clear benefit to
computer owners.
equivalente al costo totale che hanno i consumatori nel
passare alla concorrenza; entrambi sono equivalenti al
valore attuale netto dei pagamenti futuri dei clienti del
software vendor. Questo significa che un dominatore in un
mercato maturo, come Microsoft con i suoi prodotti Office,
può crescere più velocemente del mercato solo se esso
vincola i suoi clienti molto strettamente. Ci sono vari alcune
perplessità riguardo a questa teoria, ma l'idea di base è ben
conosciuta tra i capitani dell'industria del software. Ciò
spiega il commento di Bill Gates che ` Noi siamo arrivati a
ciò pensando alla musica ma poi abbiamo realizzato che le
e-mail ed i documenti sono ambiti molto più interessanti'.
In modo simile, anche il nostro Paolo Attivissimo denuncia
questo rischio:
Applicando questa tecnologia al software, le conseguenze
si fanno ancora più interessanti. Supponiamo che siate
affezionati alla vostra copia di Office, che ha sempre
funzionato ragionevolmente bene e conoscete a menadito,
per cui non sentite il bisogno di spendere denaro per la
nuova versione. Attualmente potete tenere Office sul vostro
PC a tempo indeterminato. Ma con Palladium, all'uscita di
Office 2004 Microsoft potrebbe bloccare l'esecuzione del
vecchio Office sul vostro PC, obbligandovi ad acquistare la
nuova versione. Benvenuti nell'era del software a tempo. Si
prega di infilare un'altra monetina nella fessura, grazie.
Che non si tratti dell'incubo software di due ubriaconi lo
dimostrano le rassicurazioni che sono costretti a fornire
Microsoft e Intel su questo punto. Microsoft, nelle sue FAQ,
sostiene quanto segue.
33
D: Ho sentito che NGSCB obbligherà gli utenti ad usare
33 Q: I have heard that NGSCB will force people to run only Microsoftapproved software.
A: This is simply not true. The nexus-aware security chip (the SSC) and other
NGSCB features are not involved in the boot process of the operating system
or in its decision to load an application that does not use the nexus. Because
the nexus is not involved in the boot process, it cannot block an operating
system or drivers or any nexus-unaware PC application from running. Only
the user decides what nexus-aware applications get to run. Anyone can write
an application to take advantage of new APIs that call to the nexus and related
components without notifying Microsoft or getting Microsoft's approval.
solo software approvato da Microsoft.
R: Questo è semplicemente falso. Il chip SSC e le altre
componenti di NGSCB non sono coinvolte nel processo di
avvio del sistema operativo o nella decisione di caricare una
applicazione che non utilizza queste funzionalità. Dato che
NGSCB non è coinvolto nel processo di avvio, non può
impedire ad un sistema operativo, ad un driver o ad una
applicazione non-NGSCB di funzionare. Solo l'utente può
decidere quali applicazioni NGSCB far girare sul suo
computer. Chiunque può scrivere un programma che usa le
nuove API per accedere alle nuove funzionalità di NGSCB
senza doverlo notificare a Microsoft e senza dover ottenere
nessuna autorizzazione.
Ovviamente, sarà possibile scrivere delle applicazioni che
richiedono la presenza si NGSCB per funzionare. Questo
tipo di applicazioni potranno implementare qualche tipo di
politica di accesso che richieda un certificato digitale o una
licenza per funzionare. Tuttavia, sarà l'applicazione stessa
ad imporre questa politica e questa non potrà influenzare
le altre applicazioni. NGSCB isola le applicazioni le une
dalle altre per cui una applicazione non può impedire ad
un'altra di funzionare.
Queste rassicurazioni, tuttavia, non sono molto efficaci.
Microsoft è riuscita ad imporre al mercato i suoi prodotti
(certamente non privi di problemi) anche senza il Trusted
Computing. La disponibilità di questa tecnologia, che lega
indissolubilmente l'utente al suo fornitore, può solo rinforzare
enormemente il potere contrattuale di Microsoft e degli altri
membri del TCG. Non è necessario un guinzaglio elettronico
visibile per ottenere questo vendor-lock: è sufficiente il lockin (la dipendenza) tra i documenti ed il loro programma di
gestione per ottenere questo effetto. Il caso di Word, citato da
It will be possible, of course, to write applications that require access to
nexus-aware services in order to run. Such an application could implement
access policies that would require some type of cryptographically signed
license or certificate before running. However, the application itself would
enforce that policy and this would not impact other nexus-aware applications.
The nexus and NCAs isolate applications from each other, so it is not possible
for an individual nexus-aware application to prevent another one from
running.
tutti gli analisti, è esemplare.
Questo problema è talmente cruciale che recentemente
persino il governo del Massachusset ha votato una legge che
obbliga le amministrazioni locali e statali ad usare formati dei
documenti "liberi" proprio per evitare questo vendor-lock (vedi
ad essempio: http://www.electricnews.net/frontpage/news9634903.html ).
Le stesse FAQ di Microsoft riportano anche un interessante
nota riguardo a Linux:
34
D: Linux, FreeBSD e gli altri sistemi operativi open source
possono
funzionare
su
hardware
sviluppato
per
l'architettura NGSCB?
R: Praticamente qualunque programma che funziona su una
macchina Windows-compatibile al giorno d'oggi funzionerà
anche su una macchina NGSCB (Ci sono alcune eccezioni
esotiche comunque un utente che attualmente usa sia
Linux che Windows potrà avere esattamente queste stesse
funzionalità su una macchina NGSCB)
D: Linux, FreeBSD e gli altri sistemi operativi open source
potranno dotarsi di una architettura Trusted Computing
simile a NGSCB?
R: Tecnicamente, è possibile scrivere un nexus che sia in
grado di interagire con altri sistemi operativi su una
macchina NGSCB. Tuutavia, gran parte dell'architettura
NGSCB è coperta da brevetti e ci sono degli aspetti di
34 Q: Can Linux, FreeBSD or another open source operating system run on
hardware developed for the NGSCB architecture?
A: Virtually anything that runs on a Windows-based machine today will still
run on a NGSCB machine (there are some esoteric exceptions*; a user with a
machine that currently runs both Linux and Windows would be able to have
that same functionality on an NGSCB machine).
Q: Could Linux, FreeBSD or another open source operating system create a
similar trust architecture?
A: From a technology perspective, it will be possible to develop a nexus that
interoperates with other operating systems on the hardware of a nexus-aware
PC. Much of the NGSCB architecture design is covered by patents, and there
will be intellectual property issues to be resolved. It is too early to speculate
on how those issues might be addressed.
copyright che dovrebbero essere risolti. In questo momento
è presto per speculare su come questi aspetti legali
verranno affrontati.
Le rassicurazioni fornite da Microsoft sono però accettate solo
con pesanti riserve da molti analisti. Mentre è certamente vero
che Linux, BSD e molti altri Unix (come Solaris) potranno
essere installati ed usati su hardware NGSCB (come pure su
Intel LaGrande e AMD Presidio), è anche ovvio che molti
programmi
che ora rimpiazzano programmi ufficiali di
Microsoft e di altri produttori smetteranno di funzionare.
Questo è il caso dei molti client alternativi per la
messaggistica istantanea, come Kopete, e di molti player
multimediali, come Xine. Questo è dovuto al fatto che questi
programmi fanno uso di formati di file e protocolli di
comunicazione proprietari di Microsoft e di altri produttori. Se
fin'ora questi file e questi protocolli erano aperti ad una (pur
difficile) opera di reverse engineering, dopo l'avvento di TC
saranno
protetti
crittograficamente
e
completamente
inviolabili. Senza queste alternative "open" ai sistemi
proprietari, Linux perderà parte del suo interesse come
sistema desktop.
Pericoli per la Democrazia e per Internet
L'aspetto del Trusted Computing che in assoluto preoocupa di
più gli analisti è la possibilità di usarlo per controllare le
comunicazioni tra gli utenti, la stampa e Internet. Secondo
molti osservatori, il Trusted Computing è seriamente in grado
di mettere la parola fine alla libertà di espressione (non solo
su Internet) ed alla democrazia.
Nella sua FAQ, il Professor Ross Anderson descrive il seguente
scenario.
I potenziali abusi si estendono molto oltre le tensioni
commerciali e le guerre economiche e giungono fino alla
censura politica. Mi aspetto che questo avvenga un passo
alla volta. All'inizio alcune forze di polizia ben intenzionate
eseguiranno un ordine relativo ad una foto pornografica di
un bambino, oppure a un manuale su come sabotare i
segnali
ferroviari.
Tutti
i
computer
TC-conformi
cancelleranno, o almeno riferiranno su, questi documenti
criminali. Dopo di ciò in una causa per diffamazione,
oppure in un caso di diritti sul copyright, otterrà una
sentenza da una corte civile per la distruzione dei
documenti in questione. Magari Scientology invierà sulle
blacklist il famoso Fishman Affidavit. La polizia segreta di
un dittatore potrà punire l'autore di un testo di un
dissidente semplicemente cancellando ogni documento
esso abbia creato utilizzando quel certo sistema - il suo
nuovo libro, la sua dichiarazione dei redditi, magari anche
le cartoline di compleanno dei suoi figli - a dispetto
dell'esito giudiziario della vicenda. Nel West una corte
potrebbe utilizzare la dottrina per la confisca per 'oscurare'
una macchina che sia stata usata come deposito per una
foto pornografica di un bambino. Una volta che gli avvocati,
la polizia ed i giudici si renderanno conto delle potenzialità
di questo sistema la goccia diverrebbe un fiume in piena.
Questa potenzialità nasce da una caratteristica del sistema di
Trusted Computing nota come "Distruzione automatica dei
documenti". Ecco come la descrive lo stesso Ross Anderson:
Un punto centrale è la distruzione automatica dei
documenti. A seguito dei contenuti di alcune email
imbarazzanti emerse in un recente caso anti-trust,
Microsoft ha deciso una politica per cui tutte le email
interne vengono distrutte dopo sei mesi. TC renderà questa
possibilità disponibile a tutte le aziende che adottino
piattaforme Microsoft. (Pensate a come sarebbe stato utile
tutto ciò per Arthur Andersen nella gestione caso Enron).
TC può essere usato per assicurarsi che i documenti
dell'azienda possano essere letti solo su PC dell'azienda
stessa a meno che una persona autorizzata decida che essi
sono esportabili. Saranno possibili anche controlli molto
fantasiosi: per esempio se spedisci un'email imbarazzante
per il tuo superiore egli potrà emanare un messaggio per
provvedere alla sua cancellazione ovunque esso sia giunto.
Sarà possibile anche incrociare i domini: per esempio
un'azienda potrà specificare che la sua corrispondenza
legale possa essere vista esclusivamente da tre persone
nello studio legale e dalle loro segretarie. (Studio legale
potrebbe cercare di evitare ciò perchè gli altri componenti
dello studio sono responsabili congiuntamente: ci
potrebbero essere negoziazioni interessanti sul modo in cui
le persone cercheranno di ridurre le tradizionali relazioni di
fiducia a relazioni programmate.)
L'allarme su questo punto è stato appena smorzato dalle
dichiarazioni di Microsoft su questo punto. Nelle sue FAQ,
Microsoft sostiene quanto segue.
35
D: Alcune persone sostengono che il fatto di usare
Windows su una macchina TC permetterà a Microsoft o ad
altre parti di rilevare e rimuovere da remoto il software
“piratato” sul mio computer. Questo è vero?
R: No, non è vero. NGSCB non include nessun meccanismo
che permetta di rilevare, rimuovere o disabilitare un file od
un programma che si trova sul PC. Infatti, NGSCB è stato
costruito basandosi sul principio che nessuna politica
venga imposta senza l'approvazione dell'utente. Microsoft è
fermamente contraria ad inserire funzionalità di questo tipo
all'interno delle macchine TC e non è intenzionata a farlo.
Solo il proprietario del PC, sia esso una persona od una
azienda, ha la possibilità di decidere cosa possa essere
installato ed usato su una macchina TC. I programmi che
girano su macchine TC, esattamente come quelli che girano
oggi su macchine Windows, faranno solo ciò che è
concesso loro di fare sulla base dei parametri di sicurezza
definiti per quella macchina. Non soltanto NGSCB rispetta i
controlli dell'utente ma addirittura li rinforza.
Come abbiamo già detto, lo scopo del nexus, degli NCA e
35 Q: Some people have claimed that running the Windows operating system
with the nexus will enable Microsoft or other parties to detect and remotely
delete unlicensed software from my PC. Is this true?
A: This is not true. NGSCB does not include mechanisms that delete or disable
any content or file that currently runs on a PC. In fact, the NGSCB architecture
is built on the premise that no policy will be imposed that is not approved by
the user. Microsoft is firmly opposed to putting "policing functions" into
nexus-aware PCs and does not intend to do so. A machine's owner, whether
an individual or enterprise, has sole discretion to determine what programs
run on the nexus-aware system. Programs that run under nexus-aware
systems, just like programs that run under Windows, will do whatever they are
allowed to do, based on the security settings on the user's machine. NGSCB
not only respects existing user controls, it strengthens them.
dei componenti ad essi relativi è quello di generare
certificati digitali riguardo alla identità del codice e di
proteggere dati secreti da altre applicazioni TC e da
normali applicazioni Windows, sia di tipo utente che di tipo
kernel. Le funzionalità aggiunte a Windows come parte del
progetto NGSCB non includono nessun componente che
renda più facile rilevare o cancellare file.
Purtroppo, quella che sembra una rassicurazione non lo è.
NGSCB non fornisce strumenti per rilevare o cancellare
programmi ma è perfettamente in grado di rendere
inaccessibile i documenti crittografati creati con le
applicazioni che sfruttano le funzionalità di NGSCB. Questa
capacità di proteggere i documenti, anche dopo che essi sono
stati rilasciati al pubblico, è una delle caratteristiche
fondamentali del Trusted computing ed è alla base dei suoi
impieghi nel DRM e nell'ERM (Enterprise Rights Management).
Lo scenario presentato da Anderson rimane quindi
perfettamente credibile.
Pericoli per la Sicurezza e la Sovranità delle Nazioni
Un aspetto poco studiato del Trusted Computing è il suo
impatto sulla sicurezza nazionale degli stati esterni agli USA e
sulla loro sovranità nazionale. Per capire quali sono le origini
di queste preoccupazioni bisogna ricordare quale sarà
l'ampiezza del fenomeno Trusted Computing.
As stated earlier, the function of the nexus, NCAs and related components is
to make digitally signed statements about code identity and to protect secrets
from other nexus-aware applications and regular Windows kernel- and usermode spaces. Enhancements to the Windows operating system introduced as
part of NGSCB do not have any features that make it easier for an application
to detect or delete files.
Come abbiamo detto nei primi capitoli, praticamente tutti i
produttori esistenti di hardware e gran parte dei produttori di
software stanno adottando questa tecnologia. Anche i pochi
dissidenti che ancora esistono saranno presto piegati alla
volontà della maggioranza a causa del peso giocato dai
brevetti tecnologici. Qualunque azienda che volesse costruire
CPU prive di tecnologie Trusted Computing dovrebbe riuscire
a superare lo sbarramento rappresentato dai brevetti in mano
a Intel, Motorola, IBM e Microsoft.
Di conseguenza, non saranno solo i computer dei privati
cittadini e delle aziende ad essere de facto obbligati ad
adottare questa tecnologia. Anche i computer usati per il
normale lavoro quotidiano dalle amministrazioni pubbliche,
dalle amministrazioni locali, dai governi, dai ministeri, dagli
uomini politici, dai partiti, dalle polizie e dalle forze armate
saranno presto "contaminati" da questa tecnologia. Inoltre,
come abbiamo già detto, il fenomeno non riguarda solo i
computer: anche i telefoni cellulari, le radio digitali, le
televisioni digitali (satellitari e terrestri), i lettori ed i
masterizzatori di CD e DVD, i lettori di MP3, i navigatori
satellitari e praticamente ogni altro dispositivo digitale
saranno presto costretti ad adottare questa tecnologia. In
pratica, gli unici dispositivi che potrebbero sottrarsi a questa
"epidemia" sono i rarissimi dispositivi digitali costruiti su
misura per ragioni funzionali o strategiche, come i sistemi di
controllo della armi (missili e cannoni) ed i sistemi di
comunicazione protetta usati dagli eserciti.
A questo punto, diventa chiaro che praticamente tutti i paesi
del mondo si troveranno ad avere il loro sistema nervoso nelle
mani di chi controlla questa tecnologia. In realtà, il problema è
già presente da almeno 20 anni ed è già molto grave. Sin
dall'avvento di MS/DOS (1984) era già chiaro che la diffusa
presenza di un sistema informatico standard (PC IBM +
MS/DOS) in tutta la struttura amministrativa e di controllo di
un paese poteva rappresentare un problema, sia per il rischio
di backdoor che per l'evidente dipendenza da un fornitore
straniero per applicazioni ormai cruciali per la vita di una
nazione. L'avvento del Trusted Computing non fa altro che
rendere il problema più evidente e più grave.
Ross Anderson descrive la situazione nel modo seguente.
Ciò ha interessanti implicazioni per la sicurezza nazionale.
Ad un TCG symposium a Berlino, ho provato a spiegarlo in
questi termini: nel 2010 il Presidente Clinton potrebbe
avere due pulsanti sulla sua scrivania - uno che spedisce
missili in Cina ed un altro che spegne tutti i computer in
Cina - provate ad indovinare quale dei due spaventa di più i
Cinesi? (A questo punto un uditore impertinente ha chiesto:
'E se ci fosse un bottone per spegnere i PC in Europa?').
Tutto ciò potrebbe essere un'esagerazione, ma lo sarebbe
di poco. Le politiche tecnologiche e le politiche del potere
si sono intrecciate dai tempi dell'impero romano ed i
legislatori prudenti non possono evitare di considerare le
implicazioni strategiche del TC. Potrebbe essere piuttosto
difficile per un governo passare tutti i suoi sistemi
informatici da Windows a GNU/Linux all'apice di una crisi
internazionale.
Come se non bastasse, negli anni '90 il caso di Echelon (vedi
Appendice A) ha reso evidente che non è assolutamente
possibile fare affidamento sulla correttezza dei paesi che
forniscono questi beni ad alto contenuto tecnologico.
Ma quali sono i rischi che potremmo correre?
Il primo e forse ol più grave rischio è legato al fatto che i chip
TPM, come pure le CPU e l'hardware LaGrande e Presidio,
potrebbero non essere prodotti secondo le specifiche
dichiarate dai rispettivi produttori. In altri termini, questi
aggeggi potrebbero contenere backdoor usate per spiare gli
utenti o per prendere il controllo dei loro sistemi.
Seth Schoen è uno degli autori che riconosce in modo più
esplicito l'esistenza di questo problema:
36
Problema: verifica delle implementazioni
Come possono essere sicuri i proprietari di hardware TC
che i loro sistemi siano stati implementati nel rispetto delle
specifiche pubblicate? (Ruediger Weiss)
36 Problem: Verification of implementations
How can computer owners know that their trusted computing hardware has
been implemented according to its published specifications? (Ruediger Weiss)
Questo è un problema importante per qualunque
componente crittografico hardware, non solo per il TC ma,
dato che finora la maggior parte dei PC non inlcudeva
nessun dispositivo crittografico, la maggior parte degli
utenti di PC semplicemente non ha mai avuto motivo di
preoccuparsi di questo problema. Mentre qualunque
componente hardware può contenere delle backdoor o
delle funzionalità non documentate, l'hardware crittografico
ha la caretteristica speciale di avere accesso ad
informazioni riservate ed avere la possibilità di divulgare
queste informazioni attraverso canali protetti, ad esempio
attraverso i certificati digitali usati nella attestazione. Di
conseguenza è importante assicurasi che i produttori
implmentino questi dispositivi nel modo corretto, senza
includere funzionalità non documentate che potrebbero
permettere a loro, od a terze parti, di avere accesso non
autorizzato a queste informazioni riservate.
Stabilire cosa è realmente in grado di fare un microchip non è
facile. Per riuscirci è necessario un laboratorio attrezzato e dei
tecnici adeguatamente preparati. Di conseguenza, è molto
difficile che venga varato un piano generalizzato di controllo
sui chip che vengono acquistati dai paesi non produttori, con
il rischio che negli uffici di polizie, governi, forze armate e
servizi segreti finiscano grandi quantità di dispositivi
"contaminati" da cimici elettroniche del tutto invisibili ed
ineliminabili.
Controllare il software che controlla questi chip non è meno
difficile. Microsoft, bontà sua, dimostra di essere consapevole
di questo problema e di voler rassicurare i suoi utenti. Nelle
sue FAQ asserisce quento segue.
This is an important problem for all cryptographic hardware, not just trusted
computing hardware. But since most PCs have not previously contained any
specialized cryptographic hardware, most PC users simply haven't had
occasion to worry about this problem in the past. While any hardware could
contain back doors or undocumented features, cryptographic hardware is
unique in that it has access to important secret information as well as
opportunities to leak that information through undetectable covert channels
(for example, in attestation certificates). Thus, it is important to assure that
trusted computer hardware manufacturers implement the specifications
correctly, without including undocumented features that would allow them or
third parties to obtain unauthorized access to private information.
37
D: Le agenzie governative (cioè i servizi segreti) non
richiederanno un accesso nascosto a questi sistemi (le
cosidette backdoor)?
R: Microsoft non inserirà mai una backdoor in un suo
prodotto e resisterà fieramente ad ogni richiesta in tal
senso.
ed ancora:
38
D: Come si può essere sicuri che il nexus e gli altri
componenti coinvolti facciano esattamente quello che
dichiarano di fare?
R: Microsoft renderà pubblico il codice sorgente di queste
applicazioni in modo che possa essere esaminato e
convalidato.
Purtroppo, entrambe queste rassicurazioni lasciano il tempo
che trovano. Microsoft potrebbe benissimo usare un sorgente
diverso da quello pubblicato per compilare i suoi Nexus ed
NCA. L'unico modo di accorgersene sarebbe quello di
effettuare una complessa analisi del programma compilato che
viene distribuito, con tutti i problemi già accennati per il
controllo su larga scala dei componenti hardware. L'alternativa
è quella di compilare personalmente questi programmi a
partire dai sorgenti, una attività normalmente fuori dalla
portata tecnica dell'utente medio.
Anche ammesso che si potesse contare su programmi NGSCB
assolutamente attendibili, rimarrebbe poi il problema dei
programmi di livello superiore, cioè delle applicazioni.
Qualunque programma di intrattenimento, ad esempio un
banale lettore di file MP3, potrebbe essere contaminato da
codice spia. Dato che programmi di questo tipo sarebbero
protetti
crittograficamente,
in
modo
sostanzialmente
37 Q: Won't government agencies want a back door?
A: Microsoft will never voluntarily place a back door in any of its products and
would fiercely resist any attempt to require back doors in products.
38 Q: How can anyone be sure that the nexus and related components do
exactly what you claim they do?
A: Microsoft will make widely available for review the source code of the
trusted computing base so it can be evaluated widely and validated.
inviolabile, dal Trusted Computing per difendere i proprietari
dei diritti d'autore sui contenuti, l'utente non avrebbe modo di
esaminare questi programmi e verificare cosa essi siano
realmente in grado di fare.
In altri termini, la sicurezza introdotta nel sistema con la
motivazione ufficiale di difendere l'utente da attacchi software,
renderebbe impossibile per l'utente difendersi da attacchi
software perpetrati proprio attraverso questi strumenti.
Come se tutto questo non bastasse, sono possibili altre forme
molto pericolose di abuso anche usando hardware e software
assolutamente affidabili. Per capire come questo sia possibile
è sufficiente riprendere in esame l'esempio appena riportato
ed estenderlo alle sue conseguenze logiche. Ammettiamo per
un attimo che un nuovo, piccolo produttore di software decida
di immettere sul mercato un nuovo programma multifunzione
simile a Microsoft Outlook. Questi programmi, chiamati PIM
(Personal Information Manager) sono solitamente composti da
un programma per la gestione della posta elettronica,
un'agenda ed una rubrica. In alcuni casi includono anche un
programma di messaggistica istantanea, un programma per la
consultazione dei newsgroup (usenet) ed un browser web.
Dato che questo tipo di programmi è spesso in grado di
trattare contenuti "sensibili" (posta elettronica, contenuti
multimediali coperti da copyright e via dicendo), è legittimo
aspettarsi che facciano uso delle protezioni offerte dal Trusted
Computing. Se uno di questi programmi dovesse contenere
una backdoor software, potrebbe usare le protezioni offerte
dal TC per rendere invisibile la backdoor all'utente. Lo stesso
programma potrebbe usare i privilegi di comunicazione con
l'esterno che gli vengono (logicamente) riconosciuti dall'utente
per spedire copia dei documenti ad un ente esterno (CIA, KGB,
NSA, Mossad, etc.). Questo programma potrebbe persino
consentire ad un agente di questi servizi di prendere il
controllo del computer e spedire posta a nome dell'utente.
Non c'è praticamente limite a quello che potrebbe fare un
simile aggeggio.
Questo esempio rende evidente un punto debole molto grave
dell'intera logica del Trusted Computing: l'utente può essere
subdolamente convinto (o tecnicamente costretto) ad
installare un programma di tipo Trusted Computing ed a
garantirgli dei pericolosi privilegi di accesso a dati e funzioni
del suo sistema. A quel punto, l'utente può perdere
completamente e definitivamente il controllo. Data la
posizione di vantaggio del produttore, sia da un punto di vista
tecnico che commerciale, questa situzione è tutt'altro che
insolita. Gli utenti Microsoft sono stati convinti (o costretti) ad
usare Internet Explorer e Multimedia Player per anni, molto
tempo prima che il Trusted Computing si affacciasse
all'orizzonte.
Vie di Fuga e strumenti di Difesa
Vie di fuga (chip alternativi)
La via maestra ad un mondo privo di Trusted Computing
sarebbe quello di produrre, distribuire ed usare hardware
privo di questa tecnologia. Purtroppo, però, quasi tutti i
produttori mondiali di hardware (e buona parte dei produttori
di software e di contenuti) hanno già adottato, almeno sulla
carta, il Trusted Computing. Molti di loro stanno già
producendo dispositivi dotati di questa tecnologia.
Come se non bastasse, questo è solo uno dei problemi da
risolvere per arrivare a produrre hardware "Trusted Computing
free". Anche ammesso di trovare un produttore disponibile ad
inimicarsi il resto del mondo, rimarrebbe da risolvere il
problema dei brevetti. La tecnologia dei microchip è stata
letteralmente creata tra gli anni '60 e '70 da Intel, Motorola e
Texas Instruments, tutte aziende che fanno parte del TCG. Al
giorno d'oggi è praticamente impossibile produrre un
qualunque microchip senza fare uso di almeno uno dei loro
brevetti. Questi brevetti scadranno solo tra decine di anni e
fino a quel momento è francamente difficile credere che
queste aziende siano disposte a cedere i diritti per il loro
impiego ad aziende che farebbero loro una concorrenza
spietata sul mercato. Si tenga presente, infatti, che questi
prodotti "alternativi "sarebbero molto più appetibili degli
originali proprio perchè privi delle limitazioni imposte dal
Trusted Computing.
Gli unici produttori che sembrano essere in grado di sottrarsi
a questa regola sono i cinesi e, forse, i russi. Una azienda
cinese, la BLX IC Design, in collaborazione con l'Institute of
Computing
Technology
cinese,
ha
già
sviluppato
autonomamente diversi processori sui quali sembra che le
aziende americane non potranno vantare diritti legali, tra cui il
famoso Dogson V ("Dragon V"). Sebbene questi processori
siano ancora molto più lenti e molto meno interessanti dei
chip prodotti da Intel ed AMD, potrebbero diventare
estremamente appetibili sul mercato mondiale proprio grazie
all'assenza di tecnologie TC. Il presidente venezuelano Hugo
Chavez ha addirittura avviato una joint venture tra industrie
venezuelane e cinesi proprio con l'intento di arrivare a
produrre computer non basati su tecnologia americana. Dietro
a questa decisione c'è chiaramente una certa preoccupazione
per la sicurezza nazionale e per la sovranità del governo, oltre
ad una ovvia preoccupazione per l'indipendenza dell'industria
venezuelana.
Tecnicamente, anche alcuni altri produttori di secondo piano
sarebbero in grado di seguire le orme delle aziende cinesi ma
se sarà effettivamente questa la strada che decideranno di
seguire è tutto da vedere. Anche le aziende cinesi potrebbero
facilmente cambiare idea sull'opportunità di aprire una vera
guerra industriale e commerciale con l'occidente su questo
argomento.
Strumenti di difesa (legali)
L'altra principale possibilità di lotta contro la diffusione del
Trusted Computing è rappresentato dalle iniziative legali.
Come abbiamo sottolineato più volte, il Trusted Computing
fornisce le basi per una nuova generazione di sistemi DRM ed
ERM molto aggressivi ed invasivi. Sulla base di questa
constatazione, è possibile che il Trusted Computing venga
trascinato in tribunale da individui ed associazioni che già si
oppongono all'uso di sistemi DRM.
Contro l'uso incontrollato di sistemi DRM si sono già espresse
sia la Corte Suprema Australiana che la Corte d'Appello di
Parigi. Si tratta quasi sempre di sentenze che non mettono in
discusssione il diritto del produttore di usare sistemi DRM ma
piuttosto l'impelementazione di questi sistemi. Tuttavia,
queste sentenze sembrano aprire finalmente la strada ad una
discussione democratica ed approfondita sull'uso di queste
tecnologie di controllo.
Ecco, ad esempio, come riporta la notizia sulla decisione dei
francesi la rivista online "Punto Informatico" (http://puntoinformatico.it/p.asp?i=53207 ):
Negli scorsi mesi l'associazione francese di difesa dei
consumatori Que Choisir, ha vinto alcune cause pilota
particolarmente significative. Con una sentenza del 22
aprile 2005, la Corte d'appello di Parigi ha giudicato
illegittime queste protezioni, ponendo fine a un
contenzioso che opponeva Ufc-Que Choisir a Universal
Pictures Video France, distributore di DVD.
(vedi
anche
ApogeOnLine:
http://www.apogeonline.com/webzine/2005/05/05/01/200505050101 )
Ed ecco come Punto Informatico parla della sentenza
australiana (http://punto-informatico.it/p.asp?i=55425&r=PI )
, focalizzata su un problema di gestione geografica
differenziata dei diritti:
Ed è anche per questo che i giudici hanno voluto esprimersi
più in generale sulle limitazioni geografiche imposte da
Sony per poter gestire in modo differenziato prezzi e
modalità distributive dei propri titoli: secondo i giudici
questo genere di misure comprimono i diritti dei
consumatori e riducono anche la competizione sul mercato.
Se i sistemi DRM si dimostreranno sempre più vulnerabili a
contestazioni legali di questo tipo, è molto probabile che i
sistemi Trusted Computing vengano presto attaccati nello
stesso modo.
Taming the Beast (iniziative politiche e legali)
Sin dalla prima apparizione del Trusted Computing, alla fine
degli anni '90, diversi analisti si sono sforzati di proporre
alcune modifiche in grado di "addomesticare la belva". Uno di
questi è Seth Schoen di EFF. Ecco come Schoen presenta la sua
idea, nota come "Owner Override", nel suo articolo "Trusted
Computing Promise and Risk":
39
Una soluzione: l'Owner Override
La mancanza di controllo da parte del proprietario del PC
39 A solution: Owner Override
sul contenuto dell'attestazione è il problema centrale della
proposta corrente di tecnologia TC. Si tratta di un difetto di
progetto molto grave ed inacettabile che dovrà essere
risolto prima che il TC, come sistema, possa diventare uno
strumento benefico per il proprietario del PC.
Una semplice misura, che noi chiamiamo “Owner Override”
potrebbe risolvere questo problema semplicemente
ristabilendo l'impossibilità per altre persone di sapere che
cosa l'utente stia usando, a meno che l'utente stesso non
decida che sia meglio lasciarglielo sapere. L'Owner Override
modifica in modo sottile la natura dei benefici di sicurezza
portati dall'attestazione. Attualmente, l'attestazione dice ad
altre persone se il vostro software è stato modificato. Nel
nostro schema (Attestazione + Owner Override),
l'attestazione permetterebbe alla terza parte solo di sapere
se il software è stato cambiato a vostra insaputa. Di
conseguenza, il rilevamento di attività illecite sarebbe
comunque possibile ma, se decidete di apportare
deliberatamente delle modifiche al vostro sistema, potreste
mantenere nascoste queste modifiche, esattamente come
potete fare oggi, per impedire alla controparte di usare le
vostre scelte per discriminarvi.
Catehrine Flick, nella sua tesi di laurea del 2004, esamina la
proposta di Seth Schoen nel seguente modo.
The lack of computer-owner control of the content of attestations is the
central problem with the current trusted computing proposals. It is an
unacceptably grave design flaw that must be remedied before the trusted
computing architecture as a whole package will be of clear benefit to
computer owners.
A simple measure we call Owner Override could fix the problem by restoring
others' inability to know for certain what software you're running -- unless
you decide you would be better off if they knew. Owner Override subtly
changes the nature of the security benefit provided by attestation. Currently,
attestation tells remote parties whether the software on your computer has
been changed. Attestation plus Owner Override would let remote parties know
if the software on your computer has been changed without your knowledge.
Thus, detection of illicit activity would still be practical. If, however, you had
made deliberate changes on your own computer, you could conceal them, just
as you can today, to prevent someone else from using your choices as a
reason to discriminate against you.
40
Sebbene l'Owner Override possa migliorare alcuni aspetti
del TC, è anche possibile che abbia delle serie
controindicazioni:
- l'Owner Override potrebbe degradare la sicurezza
complessiva del sistema rendendolo più complesso e
quindi più difficile da gestire. ad esempio, la possibilità di
inviare informazioni false ad una terza parte potrebbe non
essere di grande utilità se la generazione di
queste
informazioni non fosse automatizzata, almeno in parte, e
questo potrebbe introdurre dei seri problemi di sicurezza.
- l'Owner Override potrebbe instillare nell'utente un falso
senso di sicurezza
- l'Owner Override potrebbe rendere la maggior parte dei
sistemi DRM inefficaci, per buoni i cattivi che siano.
Nel complesso, l'Owner Override è un buon punto di
partenza per la discussione ma non dobvrebbe essere visto
come la soluzione definitiva ai problemi del TC, soprattutto
perchè, a causa delle ragioni appena menzionate,
difficilmente Micorosoft o qualunque altra azienda del TC
produrrà mai un sistema che incorpori questa idea di Seth
Schoen.
Anche William Arbaugh, un Professore del Dipartimento di
Computer Science dell'Unibersità del Maryland, tenta di
proporre una ricetta per salvare il Trusted Computing da una
condanna senza appello. Ecco come presenta i suoi 5 punti in
un articolo del 2002 intitolato "The TCPA; What's wrong;
What's right and what to do about" 41:
40 Although Owner Override would improve some parts of Trusted
Computing, it would be likely to have several drawbacks:
– Owner Override might degrade the overall security of the system by making
it more complex, and thus more difficult to control; for example, the sending
of false information to remote entities would not be much use unless the
generation of the information was at least partly automated (because the
information would be complicated enough to be extremely burdensome for a
human to memorise and type), and such automation could lead to serious
security holes;
– Owner Override might instil a false sense of security in users of networked
applications; and
1. Consentire all'utente di caricare i propri "root
certificates" e fornire il codice sorgente degli strumenti
necessari. Questo eliminerebbe la possibilità di aggirare la
GPL e permetterebbe all'utente di usare qualsiasi sistema
operativo di sua scelta, pur mantenendo inacessibili i
contenuti protetti.
2. Permettere all'utente di disabilitare completamente il
TPM, in modo che l'utente possa usare il suo sistema come
un normale PC tradizionale.
3. Consentire una completa riservatezza delle informazioni.
Sfortunatamente, per capire come sia possibile fornire
questo tipo di garanzia è necessario ancora molto lavoro di
ricerca sui sistemi a conoscenza zero o sui meccanismi con
chiavi di gruppo.
4. Lavorare con la comunità Open Source per abilitare le
funzionalità del TPM anche su altri sistemi operativi. Questo
dovrebbe idealmente includere il rilascio dei sorgenti di
alcuni programmi di esempio sotto una licenza compatibile
con la GPL.
5. Tenere dei corsi a programmatori open source,
sostenitori della riservatezza delle informazioni e
ricercatori attivi nel settore della sicurezza. Questo
permetterebbe di capire meglio questa tecnologia.
Nel suo Rebuttal,
David Saffor esamina questi punti nel
– Owner Override would render most DRM (good or bad) applications
ineffective. On the whole, Owner Override is a good starting point for
discussion about modifications to Trusted Computing, but it should not be
seen as an overall solution to the issues Trusted Computing raises. And this is
doubly so since, for the reasons of control mentioned above (and others
omitted for lack of space) neither Microsoft nor any other member of the
Consortium is likely to ever build a system incorporating Schoen’s idea.
41
1. Allow owners to load their own (or others) trusted root certificates, and
provide the source code for tools that do so. This eliminates the ability
to circumvent the GPL and permits owners to use any operating system
and applications of their choice. It may, however, prevent the owner/user
from viewing content that is protected.
2.
Allow the TPM to be completely disabled. This will permit users to utilize
the information device completely free of any TCPA capabilities.
seguente modo
42
.
1. "Consentire agli utenti di caricare i propri certificati". I
sistemi TCPA non hanno e non usano nessun certificato. La
sola chiave privata che non può essere cancellata e caricata
arbitrariamente dall'utente è la coppia pubblica di chiavi di
accettazione che, presumibilmente, viene creata sul chip al
momento della produzione, e la la parte pubblica registrata
dal produttore. Non ha nessun senso che l'utente possa
cancellare o rimpiazzare questa chiave di accettazione dato
che solo la chiave di accettazione registrata dall'utente può
essere usata a questo scopo. Se si desidera avere questa
funzionalità di accettazione, si deve avere una chiave di
questo tipo. Se non si ha bisogno di questa funzionalità, si
può disabilitare completamente l'accesso a queste chiavi.
Tutte le altre chiavi possono essere arbitrariamente caricate
o cancellate. Si noti che IBM non registra, e non ha mai
resgitrato, nessuna di queste chiavi semplicemente perchè
nessuno glielo ha mai chiesto.
2. "Consentire all'utente di disabilitare completamente il
TPM". Questo è certamente possibile con le attuali versioni
IBM. Si tratta infatti di una scheda LPC che può essere
sfilata dal suo supporto eliminando qualunque chiave
esistente (Il BIOS TCPA si lamenterà di questo e sarà
necessario caricare del software non-TCPA). Disabilitare il
TCPA in BIOS è più conveniente. Queta procedura lascia in
vita alcuni comandi non pericolosi ma tutte le funzionalità
di base vengono disabilitate. Questo è completamente
sotto il controllo del proprietario del sistema. Su Linux, si
può decidere se caricare o meno il driver del TPM. Se non si
carica il driver, nessuna applicazione può avere accesso alel
fuinzionalità del TPM. Questo è completamente sotto il
vostro controllo.
3.
Allow for complete privacy. Doing this, unfortunately, requires more
research into zero knowledge systems, or group keying mechanisms.
4.
Work with the open source community to enable the use of TPM features.
Ideally, this would include the release of example source using the TPM
under an open source approved license.
5.
Hold a technical workshop for open source, privacy advocates, and
security researchers. This will allow the community to better learn about
the TCPA and provide better input.
3. "Consentire una completa riservatezza". Disabilitando la
chiave di accettazione principale (endorsement key) si
ottiene una riservatezza assoluta. Ovviamente, mantenere
la riservatezza mentre si utilizza una qualunque forma di
accettazione (endorsement) è molto difficile. La complessa
logica di gestione delle chiavi è in realtà intesa proprio ad
assicurare la riservatezza grazie alla generazione di infinite
identità alternative. Le spcifiche fanno del loro meglio epr
fare in modo che la chiave di accettazione principale venga
usata solo per certificare queste identità astratte. L'utente
può scegliere una autorità di certificazione esterna a cui
permettere di collegare una di queste chiavi alla sua reale
identità. Se necessario, si possono usare identità diverse in
contesti diversi. Questo è completamente sotto il controllo
dell'utente.
4. "Lavorare con la comunità Open Source". Certamente!
Abbiamo già una implementazione funzionante su Linux e
stiamo lavorando per rendere open source tutti I dettagli.
5. "Tenere dei corsi". Questa è una buona idea,
specialmente dopo che il punto 4 sarà diventato una realtà.
Il TC è una tecnologia complessa, specialmente nelle parti
che riguardano l'inizializzazione e la gestione.
Come è facilmente comprensibile, non sembra che sia
possibile "domare la belva" attraverso qualche emendamento
delle specifiche. Catherine Flick è molto esplicita su questo
punto:
43
Non c'è nulla che possa essere aggiunto alle specifiche
correnti del TC che lo possa trasformare in un
compromesso accettabile per tutte le parti. Concedere
42 "Allow owners to load their own trusted root certificates." The TCPA chip does not have or load any certificates. The only private key that cannot be cleared and
arbitrarily loaded by the owner is the endorsement public key pair, which
possibly is created on the chip at manufacture time, and the public part
recorded by the manufacturer. It does not make any sense for the user to
delete or replace the endorsement key, as only the original endorsement key
recorded by the manufacturer can be used for this endorsement. If you want
endorsement, you have to have that key. If you don’t want endorsement, you
can disable all access to the key. All other keys can be arbitrarily loaded and
deleted. Note that IBM does not currently, and never has, recorded any
endorsement keys, anyway, because no customers have asked for it.
all'utente l'accesso alle chiavi crittografiche vorrebbe dire
rendere inefficaci I sistemi DRM. Permettere all'utente di
modificare I valori usati per l'attestazione vorrebbe dire
creare problemi durante le attestazioni e ritrovarci in una
situazione non migliore di quella attuale. Mi sembra che il
TC, sebbene sia un buon punto di inizio per una seria
discussione sulla sicurezza dei computer in rete, non sia
destinato a fornire la risposta giusta alle varie parti
coinvolte, ed in particolare all'utente finale. Tuttavia, il DRM
potrebbe non essere considerato una parte indispensabile
del sistema complessivo e, in questo caso, dare all'utente le
chiavi del sistema, e consentirgli di decifrare le
informazioni memorizzate su di esso, non dovrebbe
rappresentare un problema. Questo consentirebbe di
mantenere I vantaggi che il TC offre sul piano della
sicurezza.
2. "Allow the TPM to be completely disabled." This is certainly possible with the
existing IBM version. It is an LPC bus daughterboard, which can simply be
unplugged, and doing so clears all keys. (The TCPA BIOS will complain, and
the TCPA-less version needs to be loaded.) Disabling the TCPA in BIOS, is
more convenient. It does leave some harmless commands active, but all
sensitive commands are disabled. It is completely under the control of the
system owner. Under Linux, you can choose whether or not to load the TCPA
device driver. If you don’t load the driver, no application can access the chip
at all. This is completely under your control.
Conclusioni
Opinioni
Prima di arrivare a delle conclusioni, vorremmo ricordare
brevemente cosa pensano del TC i principali osservatori che se
ne sono occupati.
Ross Anderson
Visto in questi termini il TC non fornisce la stessa sicurezza
all'utente e al venditore di PC, al fornitore di software e
all'industria dei contenuti. Non aggiunge valore per
l'utente, anzi lo distrugge. Si limita ciò che si può fare sul
proprio PC per poter disporre di applicazioni e servizi che
estraggono più denaro all'utente. Questa è la definizione
classica di cartello monopolistico un accordo industriale
che modifica i termini del commercio per diminuire il
surplus per il consumatore.
William Arbaugh
44
Il TCPA come è inteso ora è inaccettabile ma tecnologie
come questa promettono dei grandi vantaggi in termini di
sicurezza. Io spero che il TCPA ascolti i suggerimenti che le
3. "Allow for complete privacy." Disabling the endorsement key provides complete
privacy. Ensuring complete privacy while using any form of endorsement key
is clearly very difficult. The operations around the Endorsement Key are
actually meant to protect user privacy by enabling the generation of multiple
abstracted identities. The specification went to great lengths to define a
process whereby the Endorsement Key functionality is limited to the
generation of these identities only. A privacy CA can be selected by the user
as the only entity that can link the Endorsement key with a specific identity. A
different privacy CA can be used for each identity if desired. The user has
complete control over the choice of if and how to use the endorsement key.
34 "Work with the open source community" . Absolutely! We have all the basic TCPA
code running on Linux, and are actively working to GPL the basic driver and
interface library.
vengono fatti e li adotti, in modo che si possano avere gli
aspetti migliori senza avere i peggiori.
Seth Schoen
45
Riconosciamo che un miglioramento dell'hardware possa
essere un modo di migliorare la sicurezza dei computer ma
trattare l'utente come se fosse un avversario non
rappresenta un progresso in questo settore. I problemi
legati alla interoperabilità, alla competizione leale tra
aziende sul mercato, al controllo del sistema da parte
dell'utente e su altri aspetti sono talmente seri che siamo
costretti ad esprimere una raccomandazione contro
l'adozione di tecnologie come il TC finchè questi problemi
non saranno stati risolti. Per fortuna, questi problemi non
sembrano insormontabili per cui saremmo lieti di poter
lavorare con l'industria per risolverli.
Catherine Flick
46
Ho stabilito che il TC, nella sua veste attuale, non può
essere una soluzione di lungo termine ai problemi della
sicurezza e che potrebbe, di fatto, compromettere gli sforzi
che vengono fatti nel tentativo di combattere attività
antisociali ed illegali così come potrebbe restringere i diritti
degli utenti.
...............
A dispetto dell'approfondita analisi sulla discussione in
corso riguardo a possibili miglioramenti del TC per
renderlo accettabile, resta difficile stabilire se questi
compromessi non possano portare ad una situazione in cui
il TC, rigiutato come unico progetto di grandi ambizioni,
non venga poi riproposto sotto forma di piccoli
miglioramenti cumulativi. Gli argomenti esaminati in questa
tesi mostrano che non ci sarebbe motivo di sorprendersi di
fronte a questa tattica.
.................
Le modifiche che potrebbero essere apportate al TC
5. "Hold a technical workshop". This is a really good idea, particularly after (4) is
done. TCPA is a complex device, and the specification is hard to understand,
particularly the initialization/management parts.
potrebbero non migliorare affatto la situazione ed alcuni
compromessi potrebbero persino creare più problemi di
quanti ne risolvano. Nel complesso, senza delle drastiche
modifiche alle spcifiche ed alla implementazione, il TC non
potrà fornire una risposta ai problemi di sicurezza senza
minare pesantemente il diritto alla riservatezza ed alla
libertà di scelta degli utenti.
Paolo Attivissimo
Per le grandi aziende, Palladium è davvero la Soluzione
Finale: Linux e Apache eliminati, pirati dei media debellati, i
programmatori indipendenti sul lastrico. Chi controlla
Palladium controlla tutti i computer e, dietro gentile
richiesta, controlla anche la libertà di lettura. Un quadretto
desolante.
Considerati i nomi e i capitali che appoggiano l'iniziativa
Palladium/TCPA, sembra che ci si debba arrendere
all'inevitabile. Soprattutto dopo gli eventi dell'11 settembre,
c'è
un'insensata
corsa
mondiale
ad
abbracciare
incondizionatamente qualsiasi tecnologia che prometta
anche vagamente di darci maggiore sicurezza. E'
fondamentale, invece, distinguere fra sicurezza reale e
paccottiglia commerciale.
Da questa breve galleria di commenti, dovrebbe risultare
chiaro un fatto: sin dalla sua prima apparizione il Trusted
Computing è stato accolto da un coro unanime di pesanti
critiche, di proteste e di contestazioni. Raramente nella storia
43 There is nothing one can add to the current Trusted Computing
specifications that would be an adequate compromise for all parties. Giving
the owner access to keys used for encryption purposes would defy Digital
Rights Management applications. Allowing the owner to change the PCR
values would lead to problems with attestation in trusting reported values,
and the potential for Trusted Computing to leave us no better off than we are
now. It seems to me that the Trusted Computing initiative, while an excellent
start in investigating the realms of securing the computer and network, is not
going to be the best answer for many of the parties concerned, particularly
typical end-users. Perhaps, however, the DRM applications are not necessary
to the overall improvement to security that Trusted Computing would offer,
and in this light, giving the user the keys to the system, and thus the ability to
decrypt information stored on the system, would be appropriate in order to
keep an even standing in the realms of interoperation and user control.
dell'uomo si è potuto assistere ad un giudizio così negativo,
così deciso e così unanime da parte del pubblico e degli
specialisti di settore riguardo all'introduzione di una nuova
tecnologia. Per ritrovare una accoglienza altrettanto negativa
bisogna tornare con la memoria all'introduzione della bomba
all'idrogeno e delle armi biologiche. In effetti, c'è anche chi
arriva a paragonare il Trusted Computing ad un virus o ad un
nuovo tipo di arma di distruzione di massa. Questo passo di
Ross Anderson, che abbiamo già citato nel testo, è un esempio
di questo tipo di contestazioni:
Ciò ha interessanti implicazioni per la sicurezza nazionale. Ad un
TCG symposium a Berlino, ho provato a spiegarlo in questi
termini: nel 2010 il Presidente Clinton potrebbe avere due pulsanti
sulla sua scrivania - uno che spedisce missili in Cina ed un altro
che spegne tutti i computer in Cina - provate ad indovinare quale
dei due spaventa di più i Cinesi? (A questo punto un uditore
impertinente ha chiesto: 'E se ci fosse un bottone per spegnere i
PC in Europa?').
Questa reazione violentemente negativa si è sviluppata
nonostante il fatto che praticamente tutti gli osservatori
riconoscano la necessità di intervenire in modo drastico per
migliorare la situazione della sicurezza informatica. In altri
termini: se la diagnosi che è stata effettuata dagli specialisti
del TC viene considerata corretta, non si può dire lo stesso per
la terapia che essi propongono. L'avversione di molti
osservatori nei confronti del TC non è quindi figlia del
pregiudizio o dell'ignoranza. Questa avversione nasce da un
attenta analisi di questa tecnologia da parte di molte delle
44 The TCPA as it stands now is unacceptable. But, technology such as TCPA
offers great promise for improving information security. I hope that the TCPA
technical committee listens to these suggestions and/or others, and takes
action to improve the specification so that we can have the good, but not the
bad.
45 We recognize that hardware enhancements might be one way to improve
computer security. But treating computer owners as adversaries is not
progress in computer security. The interoperability, competition, owner
control, and similar problems inherent in the TCG and NCSCB approach are
serious enough that we recommend against adoption of these trusted
computing technologies until these problems have been addressed.
Fortunately, we believe these problems are not insurmountable, and we look
forward to working with the industry to resolve them.
migliori menti del settore. Il TC dovrebbe essere il “sistema
immunitario tecnologico” della prossima Internet ma, agli
occhi degli osservatori, somiglia molto di più ad un virus.
Cammuffato da sistema di sicurezza che dovrebbe difenderci
dai pericoli di Internet, il TC si comporterebbe invece da virus
e rischierebbe di contaminare i computer di tutto il mondo con
sistemi di controllo in grado di imporre censure, vendor-lock
ed altre forme di vessazione agli utenti.
La reazione negativa del pubblico rende evidente anche un
altro elemento di questa tecnologia: il Trusted Computing è
qualcosa che difende gli interessi degli industriali a discapito
degli interessi della popolazione. Se così non fosse, non si
assisterebbe ad una frattura tanto profonda, e tanto
drammatica, tra l'industria ed i governi da un lato e la
popolazione e gli specialisti dall'altro. Da un lato l'industria
difende l'introduzione di questa tecnologia con una caparbietà
mai vista prima e dall'altro il popolo della rete si organizza in
comitati di lotta per combatterla. Da un lato l'industria arriva
persino ad ordire manovre lobbystiche, che molti considerano
poco trasparenti, per aprire la strada a questa tecnologia e
dall'altra gli specialisti cominciano a cercare fonti alternative di
hardware e di software. Se non esistesse un chiaro e
drammatico conflitto tra gli interessi delle due parti, tutto
questo non succederebbe. Come se non bastasse, nel bel
mezzo di questa battaglia, molti governi di destra,
tradizionalmente inclini a considerare la popolazione come un
nemico da cui difendersi, si trasformano nei più entusiastici
sostenitori di questa nuova tecnologia. Se ancora non siamo di
fronte alla battaglia finale per il controllo della nostra vita
46 I have established that Trusted Computing, in its current state, will not be
an effective long-term solution to security woes, and could in fact hinder
efforts to stamp out illegal and anti-social activities as well as restrict honest
consumers’ rights to carry out legitimate activities.
............
Despite having looked closely at the dialogue on the changes required for
NGSCB to be acceptable to business clients, it is hard to know whether or not
such a compromise will result in NGSCB being taken to pieces to reappear as a
series of smaller-scale endeavours, but the issues raised in this thesis show
that such a move would not be surprising.
..............
digitale, certo questa situazione non è tra le più rassicuranti.
Diagnosi corretta, terapia sbagliata
Quasi tutti gli osservatori che si sono occupati del Trusted
Computing sembrano essere d'accordo su di un punto: mentre
la diagnosi di David Safford, e degli altri specialisti che
sostengono il TC sullo stato della sicurezza informatica, è
sostanzialmente corretta, la terapia che essi propongono, cioè
il Trusted Computing, è invece sbagliata. Al giorno d'oggi
nessuno si permetterebbe mai di sostenere che la situazione
della sicurezza informatica non sia preoccupante. Tutti gli
osservatori sono d'accordo sul fatto che la situazione sia
ormai insostenibile e che quindi sia necessario trovare una
soluzione definitiva a questo problema. Tuttavia, sulle ragioni
di questo stato di cose e, di conseguenza, sulle tecniche da
usare per risolvere il problema, non esiste lo stesso livello di
consenso.
Come abbiamo già detto in precedenza, il TCG ed i sostenitori
del Trusted Computing ritengono che sia necessario dotare i
nostri computer di un apposito “sistema immunitario”
tecnologico per difenderli dai virus e dagli intruder. Questo
sistema immunitario sarebbe rappresentato proprio dal
Trusted Computing. Viceversa, gli avversari del Trusted
Computing ritengono che questo sistema immunitario sia
sostanzialmente inutile e potenzialmente molto pericoloso.
La terapia che propongono gli avversari del Trusted
Computing è meno tecnologica e più orientata all'elemento
umano del sistema. Sostanzialmente, si compone dei seguenti
elementi.
• Un diverso modo di produrre software, che consenta di
mantenere uno stretto controllo ed un alto livello di
Modifications likely to be made to Trusted Computing will not necessarily
improve the system at all, and even as a compromise may end up creating
more problems than they solve. Overall, Trusted Computing will not, without
major modifications to specifications and implementations, be able to deliver
a solution
to the problems of computer and network security without severely
encroaching on a user’s privacy and freedom of choice.
sorveglianza sulle caratteristiche reali dei programmi per
computer. Questo modo di costruire software è quello
usato da almeno 15 anni dal mondo Open Source ed ha già
ampiamente dimostrato la sua validità grazie a
realizzazioni di tutto rispetto come Linux, Apache, FreeBSD,
OpenOffice, Mozilla e via dicendo.
• Un maggiore livello di consapevolezza dell'utente. Questo
obiettivo può essere ottenuto sia attraverso un'opera di
formazione che attraverso delle modifiche al software. Ad
esempio, oltre a tenere corsi agli utenti, è possibile renderli
più consapevoli della reale struttura e del reale
funzionamento del loro computer evitando di sottrarre al
loro controllo degli elementi critici del sistema (come si è
soliti fare in ambiente Windows nel tentativo di
“semplificare” la gestione del sistema).
• Una maggiore presenza di personale specializzato. Ormai
dovrebbe essere chiaro a tutti che non si può fare
innovazione tecnologica senza il personale necessario.
Laddove sono presenti server, anche di tipo non
commerciale, è necessario prevedere la presenza di
personale qualificato.
Sebbene questo approcio possa sembrare più complicato e più
costoso rispetto al Trusted Computing, in realtà è molto più
naturale e meno rischioso. Questo approcio è già stato
collaudato ampiamente nell'arco dei 15 anni di vita di Linux e
del software GNU e di esso sappiamo per certo che funziona.
Non si può dire lo stesso del TC. Inoltre, l'adozione di
software FLOSS (Free/Libre Open Source Software), quasi
sempre gratuito, non comporta costi aggiuntivi, non richiede
la sostituzione dell'hardware e non presenta rischi di
dipendenza dal fornitore. La principale ragione che dovrebbe
far pendere la bilancia a favore dell'approcio FLOSS, tuttavia, è
un altra: questo approcio non comporta rischi per la
democrazia e per la sicurezza nazionale.
The root of evil
A differenza di quello che si potrebbe pensare, tuttavia, il
problema principale del TC non risiede nella tecnologia in sé o
nella sua implementazione. Come fa notare David Safford, non
c'è nulla di intrinsecamente malvagio nel Trusted Computing:
47
Non c'è limite al numero infinito di cose stupide che
possono essere fatte con un sistema di Turing completo.
Alcuni altri osservatori assimilano il Trusted Computing alle
armi: non è l'arma che uccide ma il suo utilizzatore (come è
giustamente previsto dalle leggi in qualunque paese del
mondo).
Tuttavia, proprio questa analogia rende dolorosamente chiara
la vera natura del Trusted Computing: questa tecnologia è un
potente strumento di controllo (cioè uno strumento di potere)
che rischia di invadere ogni angolo della nostra esistenza
personale e sociale. In un certo senso, il Trusted Computing è
davvero molto simile alle armi usate dalla Polizia per imporre
il rispetto delle leggi.
Se il "fenomeno" Trusted Computing viene osservato sotto
questa luce diventa immediatamente chiaro che il controllo di
questa tecnologia non può essere lasciato nelle mani delle
aziende produttrici e, dietro le quinte, della CIA, della NSA e
del governo USA.
Come abbiamo già detto, Ross Anderson chiarisce questo
punto con un esempio inquietante:
Ciò ha interessanti implicazioni per la sicurezza nazionale.
Ad un TCG symposium a Berlino, ho provato a spiegarlo in
questi termini: nel 2010 il Presidente Clinton potrebbe
avere due pulsanti sulla sua scrivania - uno che spedisce
missili in Cina ed un altro che spegne tutti i computer in
Cina - provate ad indovinare quale dei due spaventa di più i
Cinesi? (A questo punto un uditore impertinente ha chiesto:
'E se ci fosse un bottone per spegnere i PC in Europa?').
Tutto ciò potrebbe essere un'esagerazione, ma lo sarebbe
di poco. Le politiche tecnologiche e le politiche del potere
si sono intrecciate dai tempi dell'impero romano ed i
legislatori prudenti non possono evitare di considerare le
implicazioni strategiche del TC. Potrebbe essere piuttosto
47 There is no end to the infinite number of stupid things that could be done
on a Turing complete system.
difficile per un governo passare tutti i suoi sistemi
informatici da Windows a GNU/Linux all'apice di una crisi
internazionale.
La radice del male, quindi, risiede nella assoluta assenza di
discussione democratica attorno al suo impiego e nell'assoluta
assenza di controllo da parte dei governi. Qualunque possa
fare il Trusted Computing, lo fa al sistema nervoso delle
nostre case, delle nostre aziende e dei nostri governi. Non è
ammissibile che questa tecnologia venga introdotta sul
mercato ed utilizzata senza nessun controllo.
Tempo per una industria nazionale dell'hardware
In realtà, quanto abbiamo appena detto del Trusted
Computing è vero per tutta la tecnologia digitale. Le nostre
aziende, i nostri governi, le nostre forze armate e noi stessi
dipendiamo pesantemente dai computer e da molti altri
dispositivi digitali per praticamente ogni aspetto della nostra
vita quotidiana. Come hanno ampiamente dimostrato le
innumerevoli epidemie di virus informatici degli anni passati,
qualunque cosa che colpisca questo sistema nervoso rischia di
mettere in ginocchio il paese.
Altri paesi, meno dipendenti del nostro dagli USA, hanno già
puntato il dito contro questa dipendenza e stanno sviluppando
la tecnologia necessaria per produrre hardware sul loro
territorio. In questo modo, potranno sottrarsi ad una sottile
forma
di
controllo
che
altrimenti
rischierebbe
di
compromettere il loro sviluppo economico, sociale e
democratico. L'Italia, come tutta l'Europa dovrebbe prendere
coscienza di questo problema ed iniziare ad affrancarsi dal
grande fornitore americano.
Per fortuna, negli ultimi 10 anni, questa dipendenza è già
stata risolta nel settore del software. Sistemi operativi come
Linux e BSD, programmi open source come OpenOffice,
Mozilla e molti altri hanno reso i paesi non-USA molto meno
dipendenti di un tempo dai programmi dello Zio Sam. Ora è
tempo di rendere questi paesi indipendenti dall'hardware
americano.
Una luce in fondo al tunnel?
In questo momento (Dicembre 2005) Microsoft ha posto in
stato di attesa il suo progetto NGSCB. A quanto pare, NGSCB
non dovrebbe vedere la luce prima del 2008, sotto forma di
componente del secondo service pack previsto per questo
sistema operativo.
Intel ed il consorzio TCG, invece, lavorano a spron battuto ai
loro rispettivi progetti. Secondo Intel, il suo TC (LaGrande)
dovrebbe cominciare ad essere disponibile nel 2006. Come
abbiamo già detto, almeno 6 membri del TCG producono già i
Fritz Chip.
Dei progetti di AMD (Presidio) e di Apple si sa poco. Secondo
molti osservatori, AMD dovrebbe ricalcare abbastanza
fedelmente la logica di Intel sia come caratteristiche del
sistema che come tempistica di introduzione sul mercato.
Apple dovrebbe seguire a ruota.
Non sembra quindi giustificato l'ottimismo di chi vede nel
“delay” imposto da Microsoft a NGSCB una specie di “resa
preventiva” di fronte alla resistenza del mercato. Microsoft
stessa sostiene che NGSCB sia ancora vivo e vegeto (“alive and
kicking”, nelle loro parole). Microsoft, Intel e molti altri
produttori continuano a lavorare freneticamente su questa
tecnologia e possono godere dell'appoggio di molti dei più
potenti governi del mondo. Senza una decisa azione di
contrasto da parte dell'opinione pubblica, il TC invaderà il
mercato molto prima di quanto si possa credere.
Supporti
Associazioni
Against TCPA: http://www.againsttcpa.com/ (inglese)
No1984: http://www.no1984.org/ (Italiano)
Alcei: http://www.no1984.org/ (italiano)
EFF: http://www.eff.org (inglese)
Bibliografia
Trusted Computing Platforms : Design and Applications
by Sean W. Smith
Trusted Computing Platforms: TCPA Technology in Context
by Siani Pearson
Linkografia
http://www.consumersdigitalrights.org/cms/index_en.php
http://www.complessita.it/tcpa/
http://www.cs.umd.edu/~waa/TCPA/TCPA-goodnbad.html
http://www.eff.org/Infrastructure/trusted_computing/20031001_tc.php
http://www.apogeonline.com/webzine/2002/07/02/01/200207020102
http://www.apogeonline.com/webzine/2002/10/01/01/200210010102
Glossario
Termine
Descrizione
Adware
Programma che visualizza annunci
pubblicitari contro la volontà dell'utente.
Applicazione
Programma usato come strumento di
lavoro, ad esempio Word o d Excel.
Autenticazione
Procedura con cui un utente si fa
riconoscere dal sistema.
Best Practices
Migliori Pratiche. Con questo termine si
intendono le pratiche di laboratorio e di
ufficio necessarie per garantire i risultati
attesi da una procedura complessa.
BIOS
Basic Input/Output System. Insieme di
programmi che provvede all'avviamento
iniziale del computer.
Blog
Contrazione di "Web Log", cioè "diario del
web". Diario personale pubblicato su
Internet.
Board
Scheda
Boot – Bootstrap Sequenza di avvio del computer.
BSD
Berkeley Software Distribution. Classe di
sistemi operativi simili a Unix.
Cavallo di Troia
Programma "malvagio" che si cammuffa da
programma legittimo. Noto anche come
Trojan Horse.
CD Live
CD che contiene una versione di un sistema
operativo (di solito Linux) che può essere
usata direttamente dal CD, senza procedere
ad una installazione sul computer.
Chiave
Qualcosa di simile ad una password.
Cloning
Tecnica di clonatura di un CD o DVD utile a
bypassare le protezioni anticopia.
Contenuti
Multimediali
Testi, immagini, filmati, audio e musica che
possono fare parte di (essere contenuti in)
un documento multimediale.
Copyright
Diritto d'autore
CPU
Central Processing unit. Microchip centrale
di un computer.
Cracker
Specialista di tecniche per la rimoszione
della protezione dalla copia da documenti e
programmi.
CRC32
Tipo di Hash usato per fotografare lo stato
di un file.
Creative
Commons
Licenza di utilizzo di documenti simile alla
GPL.
Crittografia
Tecnica che permette di rendere leggibile
un documento al solo destinatario.
Cypher
Specialista di crittografia o crittoanalista.
Digest
Hash
DMCA
Digital Millenium Copyright Act. Legge
federale americana che protegge i privilegi
delle industrie del recording.
Doughterboard
Scheda figlia (scheda video scheda audio,
etc.)
DRM
Digital Rights Management, Gestione
Digitale dei Diritti. Con questo termine
vengono indicati tutti i vari sistemi
utilizzati dai produttori per difendere i
contenuti multimediali (testi, musica, film,
etc.) dalla copia abusiva o comunque da
forme di consumo non autorizzate.
EFF
Electronic Frontier Fundation.
Organizzazione si volontari a difesa dei
diritti dei cittadini nel mondo digitale.
ERM
Enterprise Rights Management, cioè
Gestione dei Diritti Digitali in Impresa. Con
questo termine si indicano gli strumenti
usati per difendere dalla copia e dalla
distribuzione non autorizzate i documenti
generati all'interno di un azienda
(documenti di bilancio, oferte commerciali,
etc.)
EUCD
European Union Copyright Directive.
Direttiva Europea che protegge i privilegi
delle industrie del recording.
EULA
End User License Agreement. Contratto di
licenza tra produttore e utente di un
programma per computer.
Exploit
Tecnica che sfrutta una falla di sicurezza di
un servizio.
FAQ
Frequently Asked Questions o Frequently
Answered Questions, cioè "Domande poste
di frequente" o "domande a cui si è data
frequentemente una risposta". Documento
esplicativo scritto nella forma di coppie
domanda/risposta.
FIC
File Integrity Check. Tecnica di
monitoraggio che permette di rilevare se
uno o più file sono stati modificati.
File
Oggetto informatico che può contenere un
documento od un programma.
Firewall
Letteralmente "Parete parafiamma".
Programma (o dispositivo di rete) che
protegge un computer od una rete da
possibili tentativi di attacco provenienti da
Internet.
Flusso di Dati
Flusso di dati digitale usato per trasmettere
musica, film ed altri contenuti. Noto anche
come "stream".
Fonderia
Stabilimento che permette di produrre
microchip (slang).
Fritz Chip
Nome confidenziale dei TPM e SSC.
GPG
GNU Privacy Guard. Versione libera e
gratuita di PGP.
GPL
GNU Public License. Licenza di utilizzo del
software libero ed aperto.
Hacker
"Smanettone"
Hardware
Insieme di uno o più componenti
elettronici.
Hash
Sequenza di caratteri (di solito 32 – 1024)
che identifica in modo univoco un file.
IDS
Intrusion Detection System. Sistema di
sorveglianza e di rilevamento delle
intrusioni.
Implementazione Realizzazione
Input
Insieme di informazioni fornite ad un
programma.
Interprete
Programma in grado di leggere ed eseguire
sequenze di istruzioni.
Intruder
Specialista di tecniche di intrusione i
sistemi e reti informatiche.
Kernel
Elemento fondamentale del sistema
operativo.
LaGrande
Nome del progetto Intel per il TC.
LAN
Local Area Network, cioè Rete Locale.
LGPL
Lesser Public License. Licenza di utilizzo
del software libero ed aperto. Più liberale
della GPL.
Linux
Sistema Operativo libero e gratuito di
classe Unix
Lock (Lock-in)
Blocco
Malware
Programma malvagio.
McOS
Sistema Operativo degli Apple MacIntosh.
MD5
Tipo di Hash usato per fotografare lo stato
di un file.
Microchip
Circuito integrato.
Motherboard
Scheda madre (quella che contiene la CPU)
Mozilla
Insieme di programmi per la navigazione
sul web e per la posta elettronica, liberi e
gratuiti.
NGSCB
Next-Generatio Secure Computing Base.
Nuovo nome del progetto Microsoft per il
Trusted Computing (ex-Palladium).
NSA
National Security Agency. Agenzia USA,
simile alla CIA, che si occupa di spionaggio
digitale e di intercettazioni.
OpenOffice
Versione libera e gratuita di MS Office
Output
Insieme di informazioni che un programma
fornisce all'utente.
Override
Sovrascrittura
Overview
Descrizione sommaria
Owner
Proprietario
Palladium
Vecchio nome del progetto Microsoft per il
Trusted Computing
Partizione
Parte di un disco rigido dedicato ad un uso
particolare.
PDA
Personal Data Assistant. Si chiamano così i
"Palm Top" (computer palmari) dotati di un
sistema operativo e di programmi
applicativi che li rendono simili a computer
portatili.
PGP
Pretty Good Privacy. Programma di
crittografia.
Presidio
Nome del progetto AMD per il TC.
Rebuttal
Documento di risposta ad una critica
Review
Recensione di uno o più articoli relativi ad
uno specifico argomento.
RIAA
Recording Industry Association of America.
Associazione delle industrie che producono
CD e DVD.
Sistema
Insieme di componenti hardware e software
che nell'insieme vive come oggetto digitale
riconoscibile ed autonomo (computer o
simili)
Sistema
Operativo
Insieme di programmi che forniscono i
servizi fondamentali alle applicazioni ed
all'utente.
Smartphone
Marchio registrato di Microsoft che indica
un telefono cellulare dotato di sistema
operativo e di programmi applicativi che lo
rendono molto simile ad un computer
portatile.
Software
Insieme di uno o più programmi per
computer.
Spamming
Pratica di inviare posta indesiderata ad
utenti su Internet.
Spyware
Programma spia.
SSC
Security Support Component. Nome dato da
Microsoft ai TPM (Fritz Chip)
SSH
Secure SHell. Programma di connessione
remota protetta crittograficamente.Viene
usato per collegarsi a sistemi fisicamente
lontani attraverso Internet.
SSL
Secure Socket Layer. Tecnologia che
protegge crittograficamente le
comunicazioni tra server e client sul web.
Molto usato dalle banche.
TCG
Trusted Computing Group. Consorzio che
si occupa dello sviluppo delle specifiche per
lo standard del Trusted Computing.
TCPA
Trusted Computing Platform Alliance.
Consorzio di sviluppo del TC ora sostituito
dal TCG.
Tecnologia
Insieme di tecniche e di componenti
hardware e/o software che, insieme,
vengono usati per dare vita ad un prodotto
od un servizio.
TPM
Trusted Platform Module. Microchip che
implementa le funzionalità crittografiche di
base del TC.
Unix
Categoria di Sistemi Operativi ispirati ad un
modello iniziale creato negli anni '70 dalla
At&T.
Urbani (Legge)
Legge Italiana di attuazione della EUCD.
User
Utente
Vendor-Lock
Blocco del venditore. Tecnica con cui si lega
il cliente al venditore.
Virus
Programma in grado di contagiare altri
programmi con una copia di sé stesso.
Worm
Programma in grado di sfruttare le falle di
sicurezza di un serizio di rete o di un
interprete per creare altre copie di sé
stesso.
Appendici
Appendice A: I documenti
TCG TPM ARCHITECTURAL OVERVIEW
https://www.trustedcomputinggroup.org/groups/TCG_1_0_Architecture_Over
view.pdf
Presso il sito del Trusted Computing Group sono disponibili
molti documenti che spiegano i vari aspetti di questa
tecnologia. Uno dei più comprensibili è questa "overview".
TCG DESIGN, IMPLEMENTATION,
PLATFORMS
AND
USAGE PRINCIPLES
FOR
TPM-BASED
https://www.trustedcomputinggroup.org/specs/bestpractices/
Queste sono le "Best Practices" del Trusted Computing Group
per la progettazione, la produzione e l'uso di questa
tecnologia. Si tratta dello stesso documento che viene
esaminato da Bruce Schneier in un suo articolo.
Questo documento contiene diverse importanti ammissioni
riguardo alla potenziale pericolosità di questa tecnologia.
Questo stesso documento contiene anche un apprezzabile
proposta di norme comportamentali per ridurre i rischi
collegati al TC.
Purtroppo, come Schneier stesso fa notare, l'adesione a questo
protocollo, ed il rispetto delle relative norme, è del tutto
volontario e non sono previste sanzioni.
MICROSOFT NGSCB ARCHITECTURAL OVERVIEW
www.microsoft.com/resources/ ngscb/documents/NGSCBhardware.doc
Documento ufficiale di MS che spiega a grandi linee come sia
organizzato il loro sistema NGSCB.
MICROSOFT NGSCB SECURITY MODEL OVERVIEW
www.microsoft.com/resources/ ngscb/documents/NGSCB_Security_Model.doc
Documento ufficiale MS che descrive il modello di sicurezza su
cui si basa NGSCB.
MICROSOFT NGSCB TECHNICAL FAQ
http://www.microsoft.com/technet/archive/security/news/ngscb.mspx
Raccolta di domande e risposte su NGSCB pubblicata da
Microsoft.
LAGRANDE ARCHITECTURAL OVERVIEW
http://www.intel.com/technology/security/downloads/LT_Arch_Overview.htm
Documento ufficiale di Intel che descrive l'architettura del
sistema LaGrande.
LAGRANDE TECHNOLOGY POLICY
ON
OWNER/USER CHOICE
AND
CONTROL
http://www.intel.com/technology/security/downloads/LT_Policy_statement_0
_8.htm
Documento ufficiale che descrive la strategia scelta da Intel
per assicurare il godimento di alcuni diritti fondamentali
all'utente.
TRUSTED COMPUTING FAQ
di Ross Anderson
Originale Inglese: http://www.cl.cam.ac.uk/users/rja14/tcpa-faq.html
Traduzione Italiana: http://www.complessita.it/tcpa/
Le Trusted Computing FAQ (Frequently Answered Question)
del Professor Ross Anderson dell'Università di Cambridge sono
considerate la più importante analisi indipendente mai
pubblicata su questa tecnologia. Da queste FAQ sono state
derivate innumerevoli altre analisi ed innumerevoli articoli.
Purtroppo, queste FAQ sono afflitte da un gran numero di
imprecisioni e da alcuni evidenti errori.
Poco dopo la loro pubblicazione, infatti, le FAQ di Anderson
sono state sottoposte ad una attenta analisi e ad una lucida
contestazione da parte di David Safford, un ricercatore
dell'IBM coinvolto nel progetto TCPA. Il "Rebuttal" di Safford ha
messo in risalto i numerosi punti deboli delle FAQ ma non è
ugualmente riuscito a togliere attendibilità e forza critica alle
parole di Anderson. Nella sostanza, l'analisi di Anderson viene
ancora ritenuta pienamente valida da quasi tutti gli osservatori
indipendenti.
Questo documento è disponibile in appendice.
CLARIFYING MISINFORMATION
ON
TCPA (AKA TCPA REBUTTAL)
di David Safford
Originale Inglese: www.research.ibm.com/gsal/tcpa/tcpa_rebuttal.pdf
David Safford è un ricercatore dell'IBM coinvolto nel progetto
TCG (ex-TCPA) ed è l'autore del principale e più autorevole
documento di difesa del Trusted Computing.
L'analisi di Safford è particolarmente lucida ed accurata. Alcuni
degli errori tecnici che egli rileva nei documenti di Ross
Anderson, Lucky Green e William Arbaugh sono innegabili e
devono essere tenuti presenti per una reale comprensione del
fenomeno.
Tuttavia, l'analisi di Safford è specifica della implementazione
standard, "di base", del TC, cioè quella promossa dal Trusted
Computing Group (ex trusted Computing Platform Alliance), e
come tale è di utilità molto limitata. Il TC che arriverà
realmente sui mercati è infatti qualcosa di molto più ampio e
molto diverso dai Fritz Chip del TCG. Il prodotto
comunemente disponibile sugli scaffali dei negozi sarà
costruito sulla base delle specifiche TCG ma sarà anche dotato
di molte funzionalità non previste da questo standard. Quando
si parla di TC, è più corretto fare riferimento a NGSCB di
Miscrosoft, LaGrande di Intel e Presidio di AMD. Nessuna di
queste implementazioni viene esaminata e/o difesa da David
Safford in questo documento.
THE
NEED FOR
TCPA
di David Safford
www.research.ibm.com/gsal/tcpa/why_tcpa.pdf
Documento di David Safford che spiega quali sono le minacce
a cui sono esposti i moderni computer ed in quale modo il
Trusted Computing può essere usato per affrontarle.
TC,
PROMISES AND RISKS
di Seth Schoen (EFF)
http://www.eff.org/Infrastructure/trusted_computing/20031001_tc.php
La Electronic Frontier Fundation è la principale organizzazione
di difesa dei diritti digitali degli individui a livello mondiale e
Seth Schoen è uno dei suoi più autorevoli analisti.
Il documento di Schoen è considerato uno dei più attendibili e
meglio focalizzati, al punto che persino David Safford vi
riconosce un sincero tentativo di contribuire costruttivamente
alla discussione sul TC ed al miglioramento di questa
tecnologa.
Il principale contributo di Schoen all'analisi è una proposta
rivolta a mitigare gli effetti negativi del TC mentre si cerca di
mantenere la sua utilità come sistema di sicurezza. Questa
proposta, nota come Owner Override, è stata però già bocciata
come irrealizzabile, e comunque inutile ,sia da David Safford
che da Catherine Flick.
Questo documento è disponibile in appendice.
WHAT
GOOD AND WHAT BAD WITH
TC
di William Arbaugh
http://www.cs.umd.edu/~waa/TCPA/TCPA-goodnbad.html
Per ammissione di David Safford, questo è uno dei documenti
di analisi più accurati e più equilibrati che siano stati scritti su
TC.
In questo documento appaiono alcuni suggerimenti che
vengono comentati da Safford nel suo rebuttal.
THE
CONTROVERSY OVER
TC
di Catherine Flick
luddite.cst.usyd.edu.au/~liedra/
misc/Controversy_Over_Trusted_Computing.pdf
Questo documento è una tesi di laurea presentata nel Giugno
2004 all'Università di Sidney, in Australia, ed è in assoluto una
delle analisi più equilibrate, lucide ed approfondite che siano
state finora pubblicate su questo argomento. L'autrice fornisce
sia una attenta analisi tecnica della tecnologia Trusted
Computing, sia una accurata analisi dei documenti che sono
stati pubblicati negli ultimi anni a favore o contro questa
tecnologia.
NO, PALLADIUM
NON È UN (BRUTTO) SOGNO
di Paolo Attivissimo
http://www.apogeonline.com/webzine/2002/10/01/01/200210010102
Articolo molto esplicito di uno dei più noti osservatori italiani
PALLADIUM,
LA SOLUZIONE FINALE SECONDO
MICROSOFT
ED INTEL
di Paolo Attivissimo
http://www.apogeonline.com/webzine/2002/07/02/01/200207020102
Articolo molto esplicito di uno dei più noti osservatori italiani
Appendice B: Echelon
Echelon è una rete di spionaggio globale gestita da USA,
Inghilterra, Australia, Canada e Nuova Zelanda. Si ritiene che
sia in grado di intercettare ed analizzare circa 3 miliardi di
comunicazioni al giorno tra telefonate, fax, messaggi di posta
elettronica ed altre tipologie.
Sebbene sia stata creata con l'intento di combattere lo
spionaggio sovietico, Echelon è stata usata in realtà
soprattutto per spiare l'attività delle aziende europee intente a
concorrere sui mercati internazionali per ottenere appalti
miliardari. Grazie ad Echelon, la Boeing americana è riuscita a
strappare alla europea Aerospatial un contratto miliardario per
fornire decine di aerei di linea alle linee aeree Brasiliane. In
seguito a questo scandalo l'Unione Europea ha avviato una
pesante procedura di contrasto nei confronti di Echelon e dei
suoi gestori (tra cui l'Inghilterra). Questa iniziativa si è arenata
subito dopo l'attacco al World Trade Center nel Settembre del
2001. Ora si sostiene che Echelon venga usata
prevalentemente per azioni di lotta al terrorismo
internazionale.
Vedi:
http://en.wikipedia.org/wiki/EcheloN
http://www.cli.di.unipi.it/~guidi/echelon/tesi.html
http://www.echelonwatch.org/
http://fly.hiwaay.net/~pspoole/echelon.html
http://fly.hiwaay.net/~pspoole/echres.html
http://www.fas.org/irp/program/process/echelon.htm
Appendice C: La sicurezza di Linux
Uno degli argomenti che viene utilizzato per contestare l'utilità
del TC è il fatto che quasi tutti i flagelli digitali che hanno
colpito gli utenti negli ultimi 5 – 10 anni sono in realtà
problemi che affliggono solo l'ambiente Microsoft (Windows e
Office). Gli altri ambienti di lavoro, tra cui Linux, sembrano
essere del tutto immuni rispetto a virus, worm, cavalli di Troia,
adware, spyware ed altre maledizioni.
Questo è vero ma non significa tutto e solo quello che
potrebbe sembrare. Per interpretare questa situazione nel
modo corretto, bisogna tenere presente alcuni parametri
importanti.
La sicurezza di Linux dipende da 4 fattori:
–
Linux è un sistema Unix. Come tutti gli Unix è nato per
essere utilizzato in applicazioni server, dove la sicurezza è
fondamentale. Di conseguenza, Linux, come qualunque
altro Unix, è stato progettato tenendo ben presente le
esigenze della sicurezza.
–
Linux, come tutti i sistemi Unix, divide chiaramente i ruoli
di utente e di amministratore. Nella pratica quotidiana si
accede a questi sistemi solo con un profilo utente (un
"login") dalle funzionalità limitate, cioè quello da "utente".
Si accede a questi sistemi con una utenza dalle
funzionalità illimitate ("root") solo per effettuare
operazioni di amministrazione del sistema. Questa
divisione dei ruoli permette di ridurre di molto la
possibilità di danneggiare il sistema.
–
Linux viene usato solo dal 3% della popolazione mondiale
di utenti di computer. Non c'è interesse da parte di chi
scrive virus, e da parte degli hacker in genere, ad attaccare
questa esigua parte della popolazione mondiale. Windows,
con il 93% di penetrazione sul mercato, è molto più
appetitoso.
–
Linux, come tutti i sistemi Unix, richiede una certa
competenza e viene quindi usato soprattutto da utenti
tecnicamente preparati e consapevoli dei problemi legati
alla sicurezza.
Nessuno di questi aspetti può essere considerato realmente
specifico di Linux, nel senso che Windows non sia in grado di
competere. In particolare:
–
A partire da Windows NT, Microsoft ha dotato Windows di
molte caratteristiche di sicurezza molto efficaci che lo
rendono molto simile a Linux ed a Unix da questo punto di
vista. Purtroppo, queste funzionalità sono poco conosciute
dall'utente medio di questi sistemi (che, di solito, è un
utente meno preparato di un utente Linux).
–
La divisione dei ruoli utente/amministratore è disponibile
anche su Windows (NT, 2000, XP e Vista). Purtroppo è una
caratteristica poco conosciuta ed ancor meno sfruttata.
–
Windows può essere reso quasi impenetrabile a virus,
worm ed altri flagelli grazie al software di terze parti
disponibile sul mercato (antivirus, firewall, etc.).
Purtroppo, l'utente medio di Windows è assai poco incline
a dotarsi di questi strumenti ed a tenerli aggiornati. La
grande quantità di strumenti di difesa disponibili per
Windows è anche la conseguenza del fatto che, con il suo
93% di penetrazione sul mercato, Windows è un grande
business per chi crea questi programmi.
–
Windows è nettamente più semplice da gestire di Linux ed
è documentato in misura assai maggiore. Grazie a tutto
questo esistono utenti Windows che sanno spremere da
questi sistemi un livello eccezionale di robustezza.
Purtroppo, la sicurezza richiede studio e dedizione e non
tutti gli utenti sono inclini ad investire in questo aspetto.
In conclusione, non è corretto dire che Linux è più sicuro di
Windows. Piuttosto, è vero che gli utenti Linux sanno usare il
loro sistema con maggiore competenza.
Per ottenere la sicurezza offerta da TC non è necessario il TC
ma non è nemmeno necessario usare Linux o McOS X.
Windows dispone già delle caratteristiche necessarie. Quello
che manca è la preparazione degli utenti.
Il grande vantaggio di TC sul piano della sicurezza è proprio
che è in grado di sostituirsi all'utente nella gestione della
sicurezza. Ovviamente, da questo suo enorme potere nascono
anche i problemi a cui si accenna nel testo. Se si delega del
potere, si rinuncia anche ad una parte della propria libertà.
Appendice D: DRM
I sistemi DRM (Digital Rights Management) sono largamente
utilizzati per impedire la copia abusiva od il "consumo" non
autorizzato di file di vario tipo come file musicali (MP3), film
digitali (Divx ed MPEG), documenti letterari (PDF) e documenti
aziendali (DOC e simili).
Quasi sempre questi sistemi sono costituiti da 2 elementi:
–
un file dal contenuti crittografato
–
un programma in grado di decifrare il file solo a
determinate condizioni
Un esempio classico di questa tecnologia sono i sistemi DRM
usati per proteggere i file musicali come:
–
Apple FairPlay (usato per Apple iTunes e su Apple iPod)
–
RealNetworks Helix (usato da RealPlayer)
–
Microsoft Media DRM
Un sistema DRM molto diffuso in Italia è la SkyBox di Sky
Television.
I sistemi DRM sono da sempre al centro di una aspra polemica.
Da un lato le aziende che producono contenuti multimediali
sostengono che senza questo genere di dispositivi il mercato
dei contenuti digitali è destinato a crollare sotto il peso delle
copie abusive. Dall'altro, le associazioni di consumatori e molti
degli specialisti di settore sostengono che i sistemi DRM
rappresentino una grave violazione dei diritti del consumatore.
Le ragioni delle aziende sono molto semplici e sicuramente
fondate, per cui non ci dilungheremo oltre nel tentativo di
analizzarle. Le ragioni degli oppositori richiedono invece una
analisi più approfondita.
Per quali motivi i DRM dovrebbero rappresentare
violazione dei diritti del consumatore e/o del cittadino?
una
La fonte di tutte le contestazioni è il fatto che i DRM sono un
dispositivo tecnico che dei privati cittadini (le aziende), per di
più quasi sempre stranieri (USA), utilizzano per imporre il
rispetto di un contratto che l'acquirente non ha nessun modo
di discutere. In pratica, i sistemi DRM agiscono in maniera
simile agli Autovelox. Questa natura tecnico/legale dei sistemi
DRM porta con sé una lunga serie di problemi. Qui di seguito
proviamo ad analizzare i principali.
Natura vessatoria del contratto
Come abbiamo già detto, il consumatore non ha modo di
discutere la natura ed il contenuto del contratto di acquisto, di
licenza o di noleggio che gli viene imposto dal fornitore. In
particolare, l'utente è costretto ad accettare la presenza di un
dispositivo, il DRM, che limita pesantemente i suoi diritti di
utilizzare il prodotto in modi ritenuti leciti dalle leggi vigenti.
Ad esempio, il DRM può impedire all'utente di copiare alcuni
brani da CD audio diversi su un nuovo CD per ottenere una
“compilation” da ascoltare in automobile. L'imposizione del
sistema DRM in Italia (ed in altri paesi) può quindi essere
ritenuta equivalente ad una clausola vessatoria del contratto.
Le clausole vessatorie sono clausole del contratto con le quali
una delle parti rinuncia ad un diritto che altrimenti gli sarebbe
garantito per legge. In Italia (ed in molti altri paesi), le clausole
vessatorie hanno valore legale solo se vengono accettate
esplicitamente e separatamente dalla persona che vede limitati
i suoi diritti, dopo che questa persona è stata adeguatamente
informata sugli effetti di questa rinuncia, e soltanto nel caso
che gli effetti della clausola non siano contrari alle leggi
vigenti. Francamente, non ci sembra che nessuno di questi
criteri venga rispettato da nessuno dei sistemi DRM esistenti.
Difetto di autorità
I DRM agiscono come sistemi automatici per imporre il
rispetto di un contratto. Sebbene le leggi italiane, come quelle
europee ed americane, riconoscano il diritto del produttore di
difendere i propri diritti con mezzi automatici di questo tipo,
alcuni osservatori fanno notare che in questo caso si concede
ad un privato cittadino (il fornitore) un potere analogo a quello
della polizia giudiziaria. Il fornitore si trova nella posizione di
imporre il rispetto di una legge, quella sul diritto d'autore,
secondo la sua personale visione dei fatti, senza nessun
accordo reale con il consumatore (a causa della natura
standardizzata del contratto) e senza nessun controllo da
parte delle autorità. Tutto questo sembra essere in netto
contrasto con il principio, universalmente riconosciuto, che le
leggi
devono
essere
stabilite
da
un
parlamento
democraticamente eletto, interpretate e fatte applicare da un
giudice attraverso le forze di polizia.
Per convincersi del fatto che questa critica non sia del tutto
infondata basta pensare al fatto che il produttore stabilisce i
limiti d'uso del prodotto che pone in vendita in modo del tutto
arbitrario e nello stesso modo per tutto il mercato globale.
Questo avviene nonostante il fatto che le leggi nazionali non
siano le stesse ovunque e che quindi i diritti riconosciuti al
produttore siano diversi da paese a paese. Questo rende
evidenti due violazioni del diritto: da un lato è chiaro che è il
produttore, e non i singoli governi, a stabilire cosa sia giusto e
cosa sia sbagliato fare con il prodotto in questione, e dall'altro
è chiaro che il produttore può trovarsi a far valere, a viva
forza, dei diritti che in alcuni paesi non gli sono riconosciuti.
Difetto di giurisdizione
Una diretta conseguenza di quello che abbiamo appena detto
è che non si può dare per scontato che il fornitore sia nella
posizione di far valere i diritti che ritiene di avere. Un fornitore
americano potrebbe basarsi sulle leggi federali USA per
stabilire quali sono i diritti che il sistema DRM deve far valere.
In questo caso è probabile che il suo sistema DRM violi le leggi
di altri paesi in cui il prodotto viene commercializzato
semplicemente perchè quelle leggi non riconoscono ai
fornitori gli stessi diritti delle leggi federali americane.
Difetto di precisione temporale
L'unico diritto di “proprietà” che può legalmente essere fatto
valere su un prodotto multimediale (un testo, una brano
musicale, una registrazione audio o video, un film, etc.) è il
“diritto d'autore” (copyright). Il diritto d'autore ha una durata
temporale stabilita per legge. Nel caso dei romanzi, ad
esempio, scade dopo 70 anni dalla morte dell'autore. Questo è
il motivo per cui, ad esempio, ora è possibile stampare e
distribuire il Candido di Voltaire senza pagare i diritti ai suoi
discendenti. Questi limiti temporali sono diversi da paese a
paese e possono essere cambiati da nuove leggi. Non ci risulta
che nessun sistema DRM renda liberamente utilizzabili i
contenuti al momento in cui scadono i diritti su di essi e non
ci risulta che nessun sistema DRM sia in grado di tenere conto
di eventuali variazioni della legislazione, passati o futuri.
Difetto di precisione contestuale
La legge ed i contratti tra fornitore ed acquirente stabiliscono
quasi sempre che un certo utilizzo del prodotto non sia lecito
in determinate situazioni e lo sia invece in altre. Ad esempio, è
illegale usare un DVD a noleggio per proiettare il film in una
sala cinematografica e fare pagare il biglietto all'ingresso,
mentre è legale proiettare lo stesso film ad un piccolo gruppo
di amici nelal propria residenza e senza scopo di lucro.
Nessun sistema DRM esistente è in grado di discernere una
situazione. Questo porta a situazioni di chiara violazione del
diritto del consumatore come quella denunciata da Clay Shirky
(http://www.shirky.com/)
in
questo
suo
articolo
http://www.boingboing.net/2005/03/31/shirky_stupid_c_law
s.html . In questo caso, l'utente si vede negare dal sistema
DRM un diritto che certamente possiede: quello di copiare un
CD di cui è l'autore!
Difetto del diritto di ricorso per l'utente
Nei confronti delle “leggi” imposte dai sistemi DRM non esiste
di fatto nessun diritto di ricorso. L'utente che viene “colto in
fallo” dal sistema viene automaticamente punito senza che gli
sia data l'opportunità di difendersi e/o di dimostrare che può
vantare i diritti che chiede di utilizzare. Sebbene questo sia
legalmente corretto, alcuni osservatori vedono in questo
comportamento autoritario del sistema un serio problema
legale. L'autore che si vede negato dal sistema DRM il diritto di
copiare il CD di cui è autore, deve avere il diritto di intervenire
per far rispettare i suoi diritti. Non abbiamo notizia di nessun
sistema DRM che possa essere disabilitato o riconfigurato (dal
proprietario dei diritti) per tenere conto di situazioni
particolari.
Interferenza con altri diritti del consumatore/utente
Infine, in molti hanno fatto notare che la presenza di sistemi
DRM sul prodotto o, peggio, sul sistema, interferisce
pesantemente con altri diritti del consumatore. Il caso di Clay
Shirky è esemplare in questo senso. Il caso Sony/BMG ha
mostrato come la presenza di un sistema DRM possa arrivare a
rappresentare una seria minaccia per la sicurezza del sistema
dell'utente. In generale, la presenza di un dispositivo che
stabilisce regole di comportamento e prende decisioni,
rappresenta una grave violazione della liberta dell'individuo.
Questi sono solo alcuni dei problemi che presenta l'adozione
dei sistemi DRM. Una analisi più approfondita richiederebbe
un libro a parte. Vi consigliamo di visitare i siti menzionati qui
di seguito e di studiare il caso della Sony/BMG citato in
Appendice I per approfondire l'argomento.
Da un punto di vista più strettamente filosofico, bisogna
tenere presente che il diritto d'autore (che viene fatto
rispettare in modo automatico dai DRM) dovrebbe
rappresentare l'eccezione piuttosto che la regola. Questo
diritto viene riconosciuto, per periodi di tempo rilevanti ma
certo non infiniti, agli autori (e non agli editori, che invece li
acquistano dagli auori stessi) per stimolare la produzione di
“cultura” in senso lato, non certo per creare inutili aree di
privilegio. Dai tempi del cinema e degli LP musicali, invece,
questo diritto si è largamente trasformato in un puro diritto di
proprietà intellettuale che alimenta un business sempre meno
legato alla produzione ed alla diffusione di cultura e sempre
più dedito a far valere diritti pregressi. Prima che l'industria
dello spettacolo si trasformi in una casta notarile dedita solo
ad attività contabili, si impone un ripensamento su questi
meccanismi.
Link:
http://www.drmwatch.com/
http://www.microsoft.com/windows/windowsmedia/drm/faq.
aspx
http://www.realnetworks.com/products/drm/
http://www.applelinks.com/articles/2003/04/200304300026
40.shtml
http://en.wikipedia.org/wiki/FairPlay
http://www.apple.com/support/itunes/musicstore/authorizati
on/
Appendice E: ERM
I sistemi ERM (Enterprise Rights Management) sono l'ultima
invenzione di Microsoft per soddisfare le esigenze delle
aziende. Consistono nella applicazione degli stessi sistemi di
protezione abitualmente usati per i CD musicali ai documenti
prodotti dalle aziende. Ad esempio, l'uso di queste tecnologie,
insieme al TC, permette di ottenere le seguenti funzionalità.
Protezione dalla copia abusiva
I documenti prodotti all'interno dell'azienda, siano essi
documenti di testo in formato Word, fogli elettronici in
formato Excel o messaggi di posta elettronica, possono essere
cifrati in modo che siano leggibili solo dal personale
autorizzato e/o solo su macchine autorizzate. eventuali copie
abusive dei documenti non sarebbero leggibili.
Protezione dal consumo abusivo
Nello stesso modo, i documenti non sarebbero accessibili da
persone non autorizzate nemmeno sulle macchine su cui sono
stati creati o da persone autorizzate su macchine diverse da
quelle autorizzate. In pratica, il dipendente che portasse fuori
dall'azienda un documento riservato da lui stesso creato non
potrebbe comunque leggerlo sul PC di casa.
Distruzione remota
I documenti aziendali potrebbero essere resi illeggibili (in
pratica: distrutti) a distanza semplicemente “revocando” la
chiave di cifratura usata per proteggerli (Questo meccanismo è
già disponibile in molti sistemi crittografici tradizionali come
GPG).
Distruzione temporizzata
I documenti aziendali potrebbero essere resi illeggibili,
revocando automaticamente la loro chiave di cifratura, dopo
un certo periodo di tempo. Questo meccanismo è alla base
della tecnologia della posta elettronica che sparisce da sola
una volta letta (“disappearing e-mail”).
Appendice F: Crittografia
Crittografia tradizionale
Per capire come sia strutturato e come funzioni un sistema di
Trusted Computing è necessario avere qualche cognizione di
crittografia, sia di tipo tradizionale che di tipo asimmetrico (“a
chiave pubblica”).
La crittografia è un modo per proteggere da sguardi indiscreti
e da manipolazioni abusive un insieme di dati, solitamente
rappresentato da un documento di testo o da un messaggio.
Nella crittografia tradizionale solitamente si fa uso di un
codice e di una chiave che, usati insieme, permettono di
cifrare un messaggio rendendolo illeggibile. La stessa chiave e
lo stesso codice possono anche essere usati per decifrare il
messaggio e renderlo nuovamente leggibile. Un esempio
particolramente illuminante di crittografia tradizionale è
rappresentato dal famoso cifrario di Vigenère.
Il cifrario di Vigenère fa uso di un codice rappresentato da una
tabella come la seguente.
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
B C D E F G H I J K L M N O P Q R S T U V W X Y Z A
C D E F G H I J K L M N O P Q R S T U V W X Y Z A B
D E F G H I J K L M N O P Q R S T U V W X Y Z A B C
E F G H I J K L M N O P Q R S T U V W X Y Z A B C D
F G H I J K L M N O P Q R S T U V W X Y Z A B C D E
G H I J K L M N O P Q R S T U V W X Y Z A B C D E F
H I J K L M N O P Q R S T U V W X Y Z A B C D E F G
I J K L M N O P Q R S T U V W X Y Z A B C D E F G H
J K L M N O P Q R S T U V W X Y Z A B C D E F G H I
K L M N O P Q R S T U V W X Y Z A B C D E F G H I J
L M N O P Q R S T U V W X Y Z A B C D E F G H I J K
M N O P Q R S T U V W X Y Z A B C D E F G H I J K L
N O P Q R S T U V W X Y Z A B C D E F G H I J K L M
O P Q R S T U V W X Y Z A B C D E F G H I J K L M N
P Q R S T U V W X Y Z A B C D E F G H I J K L M N O
Q R S T U V W X Y Z A B C D E F G H I J K L M N O P
R S T U V W X Y Z A B C D E F G H I J K L M N O P S
S T U V W X Y Z A B C D E F G H I J K L M N O P Q R
T U V W X Y Z A B C D E F G H I J K L M N O P Q R S
U V W X Y Z A B C D E F G H I J K L M N O P Q R S T
V W X Y Z A B C D E F G H I J K L M N O P Q R S T U
W X Y Z A B C D E F G H I J K L M N O P Q R S T U V
X Y Z A B C D E F G H I J K L M N O P Q R S T U V W
Y Z A B C D E F G H I J K L M N O P Q R S T U V W X
Z A B C D E F G H I J K L M N O P Q R S T U V W X Y
Codice di Vigenère
Un semplice esempio dovrebbe rendere evidente il modo in
cui si usa questa tabella. Ammettiamo di voler cifrare questa
celebre frase di Artur Bloch:
Errare è umano, ma per incasinare tutto è
necessario un computer!
ed ammettiamo di voler usare la chiave “trust”.
Per capire meglio come sia possibile cifrare il messaggio, è
necessario ripetere numerose volte la nostra chiave sotto la
frase da cifrare, in questo modo:
E r r a r e è u m a n o m a p e r i n c a s i n ..
t r u s t t r u s t t r u s t t r u s t t r u s
Come potete vedere, in questo modo ad ogni lettera della
frase da cifrare corrisponde una lettera della nostra chiave. Ad
esempio, alla “e” iniziale di “Errare” corrisponde la” t” ed alla
prima “a” corrisponde la “s”.
Per ottenere il testo cifrato si procede in questo modo, una
lettera alla volta:
1. cercate la lettera che volete cifrare nella prima riga del
codice di Vigenère (la tabella riportata più sopra)
2. cercate la lettera corrispondente della chiave nella prima
colonna del codice
3. come potete vedere, queste due lettere identificano una
“cella” del codice di Vigenère. La cella si trova all'incrocio
della riga e della colonna identificate da queste due lettere
e contiene a sua volta una terza lettera. Questa lettera è
quella che ci interessa.
Nella tabella precedente abbiamo evidenziato la lettera “m”
nella prima riga e la lettera “s” nella prima colonna. Come
potete vedere, all'incrocio della riga e della colonna
identificate da queste lettere si trova la lettera “e”.
Seguendo la procedura descritta in precedenza per tutte le
lettere della frase, otterrete il seguente risultato:
XILSKX V OETGF GS IXI CFVTJCFTKV NMMMF Y FXVVMKTKZI
MG VFGHNMVL
(Questo risultato è stato ottenuto omettendo i segni di
punteggiatura e sostituendo le lettere accentate con le
corrispondenti non accentate. Per la cifratura si è fatto uso del
programma disponibile in rete a questa URL:
http://www.icosaedro.it/crittografia/chiavi-simmetriche.html )
Per decifrare il messaggio si procede in modo simile, usando
la stessa chiave e la stessa tabella. L'unica differenza è che
durante la decifrazione le lettere della chiave vengono usate
per selezionare le righe e quelle del messaggio da decifrare
vengono usate per selezionare le colonne. Ciò che si trova
all'incrocio di riga e colonna è la lettera del testo in chiaro.
Questo esempio dovrebbe essere riuscito a dimostrare i
seguenti aspetti fondamentali della crittografia tradizionale.
• un testo in chiaro può essere trasformato in un testo cifrato
usando un codice di conversione ed una chiave (solitamente
rappresentata da una parola chiave)
• il testo cifrato può essere riportato alle sue condizioni
originarie usando lo stesso codice e la stessa chiave ma
seguendo una procedura leggermente diversa
Ovviamente, la chiave deve essere mantenuta segreta per
evitare che chiunque possa decifrare il testo che si intende
proteggere.
Crittografia a Chiave Pubblica
Nella crittografia a chiave pubblica, alcuni degli assiomi della
crittografia tradizionale vengono a mancare. In particolare,
non si usa più la stessa chiave per cifrare e per decifrare il
messaggio. Si usano invece due chiavi diverse. La prima
chiave, chiamata “chiave pubblica” viene usata solo per cifrare
il messaggio. Questa chiave non permette in alcun modo di
risalire al testo in chiaro e può quindi essere resa pubblica. La
seconda chiave viene usata solo per decifrare il testo e viene
mantenuta segreta. Questa chiave viene chiamata “chiave
privata”.
Purtroppo, gli algoritmi usati nelal crittografia a chiave
pubblica sono troppo complessi per permettere di assemblare
un esempio che ne illustri le caratteristiche. Tuttavia, nel
capitolo seguente viene descritto come funziona uno dei
programmi più conosciuti di crittografia a chiave pubblica:
GNU Privacy Guard (GPG).
Appendice N: Chiavi, Hash, Firme Digitali ed Identificatori
Nell'informatica, identificare oggetti e dispositivi è una
esigenza comune. Di solito si usano a questo scopo dei
numeri causali molto grandi, diciamo di 128 – 512 cifre,
chiamati UUID (Universally Unique Identifier) o GUID (Globally
Unique Identifier). Questi numeri sono molto simili al codice a
14 cifre usato dalle schede per la ricarica dei telefoni cellulari
ma hanno, appunto, molte più cifre. Questi numeri vengono
generati a caso, usando un apposito algoritmo, e poi vengono
archiviati in un apposito database di numeri considerati
“validi”. Dato che sono numeri molto grandi, anche
generandone un grande quantitativo ne viene in realtà usata
una percentuale molto piccola rispetto a tutti quelli che è
possibile generare. Di conseguenza, chi tentasse di generare
uno di questi numeri e sperasse di incappare accidentalmente
in un numero presente nel database dei numeri validi,
dovrebbe fare i conti con una probabilità molto bassa di
riuscire nel suo intento. Secondo alcuni ricercatori, è di gran
lunga più probabile morire centrati da un meteorite che
riuscire ad indovinare uno di questi numeri. Il sistema
operativo Unix dispone di alcune funzionalità standard per
generare numeri di questi tipo (e quindi anche Linux, McOS X
e freeBSD, che sono tutti delle varianti di Unix).
Le “chiavi” abitualmente usate dai sistemi crittografici sono
delle sequenze casuali di numeri molto simili o persino
identiche a quelle usate come identificatori univoci. In realtà,
in molti casi si usano proprio dei GUID o degli UUID di grandi
dimensioni come chiavi crittografiche, ad una sola condizione:
deve trattarsi di numeri primi. Questa condizione è dettata dal
particolare algoritmo usato dai sistemi di crittografia a chiave
pubblica. Per fortuna, esiste un apposito algoritmo, chiamato
“crivello di Eratostene” che permette di generare (o meglio
“identificare”) facilmente numeri primi con centinaia o migliaia
di cifre. Queste chiavi vengono usate come base dell'algoritmo
crittografico e non devono essere confuse con le password
usate per accedere ai documenti cifrati.
Al loro interno, i Fritz Chip sono in grado di generare un altro
tipo di chiavi crittografiche, chiamate "endorsement key"
(chiavi di approvazione) o “attestation key” (chiavi di
vidimazione). Queste chiavi non sono dei semplici numeri
primi casuali ma bensì delle vere “firme digitali” che vengono
calcolate in base alla struttura del programma o del
documento che si intende marcare e della chiave privata
dell'utente. In pratica, si cifra il documento che si vuole
marcare usando la chiave privata dell'utente. Questo testo
cifrato ha la caratteristica di poter essere decifrato usando la
chiave pubblica dello stesso utente. Dato che solo l'utente (od
il suo sistema) ha accesso alla chiave privata, e che solo
usando questa chiave privata si può generare un testo che sia
decifrabile dalla corrispondente chiave pubblica, si può usare
questo sistema per firmare digitalmente un documento.
Queste firme digitali sono note anche come “certificati digitali”
perchè consentono di “certificare” la provenienza di un
documento.
La “firma digitale” o la “certificazione digitale” di un
documento è una prassi comune in informatica. Questa
procedura viene usata, ad esempio, per garantire che un
documento provenga realmente da una certa persona o che
sia stato letto ed approvato da una certa persona. In modo
simile, degli apposito “certificati digitali”, emessi da apposite
autorità super-partes, vengono usati per certificare l'identità
di un sito web, di un programma o di altri oggetti digitali. Le
aziende che agiscono come autorità di certificazione sono
chiamate appunto “Certification Authorities”. Una delle più
famose è Verisign (http://www.verisign.com/).
Le firme digitali mettono a rischio l'anonimato dell'utente
perchè possono essere facilmente associate all'utente che
firma il documento (o, più esattamente, alla chiave usata per
cifrare il documento). Per evitare che una endorsement key
possa essere associata all'utilizzatore di un computer, nelle
specifiche del TC è previsto che sia possibile usare una diversa
endorsement key per ogni scopo. Ad esempio si può usare
una chiave per accedere ad iTunes in rete ed una chiave
diversa per accedere al proprio sistema di Internet banking. In
questo modo è possibile identificare l'utente per lo scopo
preciso della transazione ma non è possibile stabilire la sua
vera identità.
Anche i Fritz Chip sono identificati univocamente, al loro
interno, da chiavi crittografiche di questo tipo, lunghe 2048
cifre (chiavi RSA). Queste particolari chiavi sono chiamate “root
of trust” (sorgente della fiducia) perchè sono all'origine delle
varie identità che il chip può assumere sulla rete.
Un problema accessorio che nasce dall'uso di chiavi
crittografiche per cifrare/decifrare dati e per firmare oggetti
digitali è quello di dover provvedere alla “migrazione delle
chiavi“ in caso di spostamento dei dati da una macchina
all'altra od in caso di un “restore” dopo un crash di qualche
tipo. Ovviamente, non è solitamente possibile prelevare le
chiavi crittografiche dal Fritz Chip di una vecchia macchina,
salvarle su un floppy e caricarle sul Fritz Chip di una nuova
macchina. Se questa funzionalità esistesse, tutta la sicurezza
di un sistema TC verrebbe immediatamente compromessa. Per
affrontare questo problema si sono studiate (e si stanno
ancora studiando) diverse soluzioni. Una delle più accreditate
consiste in una “chiave di riserva”, in pratica una specie di
passepartout, che rimarrebbe sempre nelle mani del
produttore del sistema (Intel o chi per essa) e che verrebbe
fornita al cliente solo in casi eccezionali. Questa chiave
servirebbe solo per abilitare la procedura di migrazione delle
chiavi. Un'altra ipotesi è quella di usare una apposita smart
card a questo scopo. Questa procedura permetterebbe anche
di creare delle copie di riserva delle chiavi del Fritz Chip senza
peraltro comprometterne la sicurezza.
L'ultimo tipo di oggetto matematico usato nel settore del
Trusted Computing sono gli hash. Un hash è una particolare
sequenza di numeri, di lunghezza prefissata, che “fotografa”
una certa sequenza di caratteri, come un testo alfabetico od
una sequenza di 0 ed 1. Gli hash hanno delle caratteristiche
molto importanti:
• Ogni sequenza di caratteri (ogni testo) genera sempre lo
stesso hash
• L'hash ha sempre la stessa lunghezza predeterminata
• Dato l'hash è quasi impossibile risalire alla sequenza di
caratteri originale
Queste caratteristiche rendono gli hash uno strumento ideale
per “fotografare” un file, un programma od un documento e
controllare in seguito se è stato alterato.
Appendice G: Gnu Privacy Guard (GPG)
GPG (GNU Privacy Guard) è un programma Open Source a linea
di comando usato per cifrare e decifrare documenti di vario
tipo. Dato che si tratta di un programma completamente libero
e gratuito lo potete scaricare senza timori da questa URL:
http://www.gnupg.org/
GPG funziona su Linux, vari tipi di Unix, McOS X e Windows.
GPG è una implementazione particolare di uno standard noto
come OpenPGP. Questo standard prende il nome da un
famoso programma crittografico a cui si ispira: PGP (Pretty
Good Privacy) di Philip Zimmermann. Il sito di OpenPGP è a
questa URL:
http://www.openpgp.org/
Normalmente GPG viene usato dalla linea di comando, come
gli antichi programmi MS/DOS, ma sono disponibili varie
interfacce grafiche aggiuntive per i più pigri, come KGPG per
KDE. GPG viene anche usato “dietro le quinte” da vari
programmi di posta elettronica, come Ximian Evolution e
Kmail di KDE.
GPG è in grado di svolgere le seguenti funzioni.
• Generazione di coppie di chiavi crittografiche (pubblica e
privata)
• Cifratura e decifratura di documenti con vari algoritmi a
chiave pubblica
• Firma digitale di documenti
• Gestione delle chiavi (pubblicazione, importazione, revoca,
etc.)
Per capire come funziona ed a cosa serve GPG, dobbiamo
vedere questo programma in azione. Ammettiamo che Alice
voglia spedire un file dal contenuto riservato a Bob attraverso
Internet. Per fare questo potrebbe usare direttamente Ximian
Evolution, che al suo interno usa proprio GPG, ma noi
vogliamo vedere i dettagli del processo e quindi eseguiremo
questa procedura dalla linea di comando.
Subito dopo l'installazione del programma (su cui non ci
dilunghiamo), la prima cosa che Alice e Bob devono fare è
generare le loro coppie di chiavi. Sia Alice che Bob devono
generare due chiavi: una chiave pubblica ed un chiave privata.
La chiave pubblica dovrà essere inviata al loro interlocutore e
verrà usata solo per cifrare il documento. La chiave privata
deve essere mantenuta segreta e verrà usata solo per
decifrare il documento. Per generare una coppia di chiavi,
Alice e Bob dovranno invocare GPG sul loro computer in
questo modo:
[alice@home alice]$ gpg ­­gen­key
gpg (GnuPG) 1.0.6; Copyright (C) 2001 Free Software Foundation, Inc.
This program comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to redistribute it under certain conditions. See the file COPYING for details.
gpg: Warning: using insecure memory!
gpg: /home/marge/.gnupg/secring.gpg: keyring created
gpg: /home/marge/.gnupg/pubring.gpg: keyring created
Please select what kind of key you want:
(1) DSA and ElGamal (default)
(2) DSA (sign only)
(4) ElGamal (sign and encrypt)
Your selection? 1
L'opzione –gen-key informa GPG del fatto che l'utente vuole
creare una coppia di chiavi. GPG reagisce chiedendo che
algoritmo di cifratura si desidera usare e che tipo di chiavi si
desidera creare. La scelta è tra DSA, ElGamal e DSA+ElGamal.
Solitamente si usa il default DSA+ElGamal che permette di
cifrare e firmare i documenti.
Come seconda cosa, GPG chiede quanto deve essere lunga la
chiave di cifratura e per quanto tempo deve essere valida:
Your selection? 1
DSA keypair will have 1024 bits.
About to generate a new ELG­E keypair.
minimum keysize is 768 bits
default keysize is 1024 bits
highest suggested keysize is 2048 bits
What keysize do you want? (1024) Requested keysize is 1024 bits
Please specify how long the key should be valid.
0 = key does not expire
<n> = key expires in n days
<n>w = key expires in n weeks
<n>m = key expires in n months
<n>y = key expires in n years
Key is valid for? (0) Key does not expire at all
Is this correct (y/n)? y
A questo punto GPG chiede che gli venga fornito un
identificatore con cui marcare la coppia di chiavi che viene
creata. Questo identificatore è, in pratica, il nome della coppia
di chiavi e solitamente viene costruito assemblando in un
unico frammento di testo l'indirizzo di posta elettronica
dell'utente, il suo vero nome ed un commento.
You need a User­ID to identify your key; the software constructs the user id from Real Name, Comment and Email Address in this form:
"Heinrich Heine (Der Dichter) <[email protected]>"
Real name: Alice
Email address: [email protected]
Comment: Alice's GPG key pair
You selected this USER­ID:
"Alice (Alice's GPG key pair) <[email protected]>"
Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? O
Infine, GPG è pronto a generare le chiavi e chiede una
password che servirà in seguito per accedere ad esse. Dato
che la password può contenere spazi, viene chiamata
“passphrase”.
You need a Passphrase to protect your secret key.
Enter passphrase: Sbr6wh wscartBM, iscaa2d
Repeat passphrase: Sbr6wh wscartBM, iscaa2d
We need to generate a lot of random bytes. It is a good idea to perform some other action (type on the keyboard, move the mouse, utilize the disks) during the prime generation; this gives the random number
generator a better chance to gain enough entropy.
Al termine di questa operazione (che può durare qualche
decina di secondi), GPG scrive la coppia di chiavi sul disco
fisso ed avverte l'utente.
public and secret key created and signed.
Una volta creata la propria coppia di chiavi, Alice e Bob devono
rendere disponibile la propria chiave pubblica al proprio
interlucutore. Normalmente, le chiavi pubbliche vengono
pubblicate su un apposito server come Veridis (
http://keyserver.veridis.com:11371/index.html ) od uno
qualunque dei server elencati a questa URL:
http://www.pgpi.org/services/keys/keyservers/
Prima di pubblicare la propria chiave pubblica è solitamente
necessario convertirla ad un formato di solo testo, una
procedura nota come “armatura” della chiave. Questa
procedura si attiva invocando GPG in questo modo:
[alice@home alice]$ gpg ­­armor ­­export [email protected] > alice_public_key.txt
La chiave pubblica che viene scritta all'interno del file
alice_public_key.txt ha questo aspetto:
­­­­­BEGIN PGP PUBLIC KEY BLOCK­­­­­
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see http://www.gnupg.org
mQGiBDv2vMARBACPHwe3BXmJXF5dvXxGEuxYIbYoY2naOmaArFsv1Pgl
3GqhhAP7GTGvN4A4Xo80S8i8mrSsseHE/RD7F2PS045dzP/LbDcI7Eqn
fU2BDoIfEmTsTuplBKjOJUh7luhFbj2gdpbmmTUD/1BBKd42pIk/GPUc
ynMS9TG4kUyB6UdtRF7NydYPo4T+0fIY8mbh5VRigoVVsukX8xuI+QaS
5iB/D4j36+zk/iRy171dY43OuwCgm6rQa8vmmGDyCCUWFX0PVlQn5MMf
97GadIAGgh1pdD7bMfB4FI84TyhNHuBDTCn0Ysffnot_a_public_key
_but_other_than_this_line_it_looks_like_this_xxxbRmMA/9E
/EGJnyYWdHtTerx+H8qacP183SrRFQDqSkOM61P4iDIWcZCOqlHCv7Br
Rmf7Ug9I4RkD5qqWkpWY0ugcSbuoFx0f7AGckOOWWVq4ddQStAsOhlMQ
4ahOu7mBcmVuY2UgKExpbmRhJ3MgR1BHIGtleSBwYWlyKSA8bGluZHlA
cGN1bml4LmNvbT6IdVJeXzVTKHnMTGUqutPpmro/txW3M4Z3/0gsOGyS
xlob0MOQcbQ4TGluZGEgTGF3VwQTEQIAFwUCO/a8wQULBwoDBAMVAwID
FgIBAheAAAoJEAymPu375boq1fkAniuKEAQAj8E9riM9UUI2fc3Of/5k
huEi2nbT2xD2//FUVQh4uKXd4iQXW3z55ZbJnJ1ENk6xIPHx0kQUEcUx
dRSK0rikAJ9bB4o+oZ9wqJubKMHII1K1BunTuLkBDQQ79rzFbZ+TGMKF
OgoxEGAeIcf/XD0/zRDOvdKuLsIZjlNl3uqChXgeznCFU4kviuGdSeDK
vcx/cR7NgfAn2JUKnhcf/sf01WRM43TbSZP5+5ZXk7zZWZItp+STRHYU
ketXwFk/LWn2jrjbFpcBswgXZ1Vq7Hrbi027y4x6KIhKZ0rfGsXDYxsA
AwUD/jCF25xvDrU9W5mjSmWy1f+Hn5q/RQAChIAgEEwWMpaHLXixyI+x
E+kXvowDYdbmQWruJS1BGKDF/JibHwSp15ZzGQivpX/Dul4/nks3xYy7
iEYEGBECAAYFAjv2vMUACgkQDKY+7fvluiqY4ACcCga6MsB3DhSLEO6F
se09UujGwUMAmwY9skYtEZDAFXBlcpov1wYzFAhh
­­­­­END PGP PUBLIC KEY BLOCK­­­­­
Questa chiave può essere pubblicata facendo l'upload del file
alice_public_key.txt sul server di chiavi che si è deciso di
usare.
Per spedire un messaggio crittografato a Bob, Alice deve
procurarsi da uno di questi server (o attraverso altri canali)
una copia della chiave pubblica di Bob. Per scaricare ed
importare la chiave di Bob dal server, Alice deve usare un
comando come questo:
gpg ­­keyserver keyserver.veridis.com ­­recv­keys KEYID
Dove KEYID è l'identificatore della chiave di Bob. Questo
identificatore deve essere fornito da Bob. In latrenativa, questo
KEYID può essere facilmente scoperto cercando la chiave
pubblica di Bob sul server web di Veridis.
Nel caso che la chiave fosse stata fornita ad Alice sotto forma
di file di testo (su floppy, su CD-ROM), Alice avrebbe potuto
importarla con questo comando:
gpg ­­import bob_public_key.txt
Per cifrare il suo documento, Alice deve usare un comando
come il seguente.
gpg ­­output testo_cifrato.gpg ­­encrypt ­­recipient [email protected] testo_in_chiaro.txt
Bob può decifrare il messaggio con questo comando:
gpg ­­output testo_in_chiaro.txt ­­decrypt testo_cifrato.gpg
Al momento di decifrare il messaggio, a Bob verrà chiesto di
fornire la sua passphrase.
In modo simile, Alice e Bob possono firmare digitalmente un
documento. L'operazione di firma consiste nel cifrare il
documento con la propria chiave privata (che resta segreta) in
modo che sia decifrabile con la chiave pubblica. In questo
modo il ricevente è sicuro che il mittente sia la persona a cui
appartiene la chiave privata (o comunque qualcuno che ha
accesso ad essa). I comandi per firmare (to sign) un
documento e per verificare la firma (verify) sono i seguenti.
gpg ­­output documento_firmato.sig ­­sign documento_da_firmare.txt
gpg ­­verify documento_firmato.sig
Appendice H: I sistemi IDS e FIC (File Integrity Check)
Le funzioni di controllo della integrità dei file e di rilevamento
delle intrusioni che svolge il TC sono praticamente le stesse
che vengono già svolte da molti anni da sistemi software come
TripWire e AIDE. Questi sistemi vengono chiamati IDS
(Intrusion Detection System) o FIC (File Integrity Checker).
Vedi:
http://it.wikipedia.org/wiki/IDS
http://www.cs.tut.fi/~rammer/aide.html
http://www.tripwire.com/
Appendice I: Il caso Sony, ovvero: fino dove sono disposti
ad arrivare con il DRM?
Nel novembre 2005 è scoppiato uno scandalo attorno all'uso,
decisamente aggressivo, che Sony ha fatto delle tecnologie
DRM.
Questo articolo dimostra come Sony sia arrivata persino ad
intallare abusivamente del software spia sul computer
dell'utente pur di proteggere i propri interessi:
http://puntoinformatico.it/cerca.asp?s=sony+drm&B=CERCA&r=PI
http://www.sysinternals.com/Blog/
http://www.sysinternals.com/blog/2005/10/sony-rootkitsand-digital-rights.html
Appendice L: FPGAs, ovvero: come fare i microchip senza
avere la fonderia
Data la situazione di sostanziale monopolio esistente nella
produzione di hardware (microchip) sembrerebbe impossibile
sottrarsi all'avvento di TC. In realtà, è possibile produrre CPU
ed altri microchip su scala artigianale (e quindi restando al di
fuori dell'area di dominio dei grandi produttori) usando
tecnologie come l'FPGA e l'ASIC. Queste tecnologie
permettono di creare microchip senza bisogno di avere una
"fonderia" di silicio dedicata a questo scopo. Esistono già
diversi esempi di CPU create in questo modo.
Vedi:
http://en.wikipedia.org/wiki/FPGA
http://it.wikipedia.org/wiki/FPGA
http://www.fpgacpu.org/
http://en.wikipedia.org/wiki/Applicationspecific_integrated_circuit
http://www.opencores.org
Appendice M: Microsoft Insecurity
Tutti programmi di Microsoft, infatti, sono stati progettati e
costruiti in un'epoca in cui le preoccupazioni per la sicurezza
ancora non esistevano e sin da quei tempi si portano dietro
alcune caratteristiche estremamente pericolose. La prima e la
più importante di queste caratteristiche è la presenza di un
interprete di linguaggio (Visual Basic for Applications) che
viene abitualmente sfruttato da virus (più esattamente virus di
macro e worm) e da hacker (più esattamente cracker ed
intruder) per contaminare un sistema, penetrare in esso e
prenderne il controllo. Questo interprete è notoriamente
afflitto da numerosi difetti e da numerose falle di sicurezza e
non è mai stato realmente reso sicuro (né mai lo sarà, secondo
quasi tutti gli osservatori).
La situazione della sicurezza nei programmi Microsoft è
talmente grave che persino il solitamente moderatissimo CERT
(Computer Emergency Response Team) arriva a consigliare gli
utenti di abbandonare il software Microsoft (in questo caso
Internet Explorer) in favore di software meno vulnerabile.
L'articolo originale del CERT è reperibile a questa URL:
http://www.kb.cert.org/vuls/id/713878
Questa è la sezione dell'articolo del CERT rilevante ai nostri
fini:
Use a different web browser
There are a number of significant vulnerabilities in
technologies related to the IE domain/zone security model,
trust in and access to the local file system (Local Machine
Zone), the Dynamic HTML (DHTML) document object model
(in particular, proprietary DHTML features), the HTML Help
system, MIME type determination, the graphical user
interface (GUI), and ActiveX. These technologies are
implemented as operating system components that are
used by IE and many other programs to provide web
browser functionality. These components are integrated
into Windows to such an extent that vulnerabilities in IE
frequently provide an attacker significant access to the
operating
system.
It is possible to reduce exposure to these vulnerabilities by
using a different web browser, especially when viewing
untrusted HTML documents (e.g., web sites, HTML email
messages). Such a decision may, however, reduce the
functionality of sites that require IE-specific features such
as proprietary DHTML, VBScript, and ActiveX. Note that
using a different web browser will not remove IE from a
Windows system, and other programs may invoke IE, the
WebBrowser ActiveX control (WebOC), or the HTML
rendering engine (MSHTML).
La situazione della sicurezza dei prodotti Microsoft, ed in
particolare di MS Internet Explorer ed Outlook, è ben nota sia
agli utenti che agli specialisti ed ha portato alla nascita di
numerosi siti web che cercano di avvisare gli utenti di questo
pericolo o di intervenire in modo semiautomatico. Eccone
alcuni:
http://www.stopie.com/security/
http://www.litepc.com/ieradicator.html
http://cc.realtimepublishers.com/portal.aspx?pubid=335
Ed ecco alcuni articoli sul tema:
http://www.securityfocus.com/archive/1/344254
http://linuxtoday.com/news_story.php3?ltsn=2000-04-15018-06-SC
http://www.microsoftmonitor.com/archives/011023.html
http://www.securityfocus.com/columnists/188
http://www.networkworld.com/weblogs/security/003535.htm
l
Alle seguenti URL sono reperibili gli avvisi originali del CERT e
di altre organizzazioni:
http://www.us-cert.gov/cas/alerts/
http://www.us-cert.gov/cas/alerts/SA05-193A.html
http://www.us-cert.gov/cas/alerts/SA05-102A.html
http://www.us-cert.gov/cas/alerts/SA05-039A.html
http://www.us-cert.gov/cas/alerts/SA05-012A.html
http://www.dhs.gov/dhspublic/display?theme=70
I programmi non correttamente configurati
Appendice O: Per una Carta dei Diritti Digitali
Come
riporta
Punto
informatico
(http://puntoinformatico.it/p.asp?i=56155), a Novembre 2005 è stata
presentata al Parlamento dell'Unione Europea una proposta di
Carta dei Diritti Digitali da parte di AltroConsumo
(http://www.altroconsumo.it/)
e
BEUC
(http://www.beuc.org/Content/Default.asp). I punti salienti di
questa proposta sono i seguenti:
•
Diritto alla scelta, alla conoscenza e alla diversità
culturale. Vale a dire poter beneficiare di un mercato
concorrenziale che favorisca la creatività, la libertà
d'espressione, la scelta e la diversità culturale. Gli
ostacoli sono ancora molti, basti pensare che nel
mondo musicale quattro grandi società controllano
l'80% del mercato mondiale, mantenendo i prezzi dei
Cd a livelli proibitivi.
•
Diritto al principio della "neutralità tecnologica" e alla
trasposizione nel mondo digitale dei diritti già esistenti
nel mondo "analogico": diritto all'informazione, a
clausole eque, a ricorrere quando un prodotto non
mantiene le promesse. Nei fatti è l'industria a decidere
unilateralmente quali informazioni rendere pubbliche,
come il materiale può essere utilizzato, cosa è legale e
cosa no.
•
Diritto di beneficiare delle innovazioni tecnologiche
senza restrizioni abusive. L'industria non deve avere il
potere di imporre un controllo eccessivo ai contenuti
digitali. Non c'è ragione tecnologica o giuridica, per
esempio, che giustifichi il fatto che i Dvd americani
non possano essere visti sui lettori europei e viceversa.
•
Diritto all'interoperabilità fra contenuti e apparecchi.
Esistono troppi casi di incompatibilità, perché per
esempio la musica che si acquista su iTunes può
essere ascoltata solo con un iPod?
•
Diritto alla protezione della vita privata. Registratori
digitali e computer non devono essere manipolati
senza il consenso dei proprietari. Se per esempio si
carica un programma sul Pc, può accadere che sia
inviato a insaputa del consumatore un programma
supplementare, che una volta attivato può modificare
la programmazione dell'apparecchio e catturare
informazioni sulle abitudini nella navigazione.
•
Diritto a non essere criminalizzati. Non si deve
considerare criminale chi fa copie di Cd e Dvd per uso
personale.
L'autore di questo libro, personalmente, si accontenterebbe di
vedere riconosciuti i seguenti diritti digitali.
Diritto all'informazione
Nessun programma, e nessun'altra diavoleria tecnologica, si
deve mai permettere di svolgere qualche operazione su di un
oggetto che ho comprato e pagato e/o su un insieme di dati
che mi appartengono senza che io ne sia a conoscenza.
Diritto al controllo
Nessun programma, e nessun'altra diavoleria tecnologica, si
deve mai permettere di svolgere qualche operazione su di un
oggetto che ho comprato e pagato e/o su un insieme di dati
che mi appartengono senza la mia esplicita autorizzazione.
Diritto alla fedeltà
Nessun programma, e nessun'altra diavoleria tecnologica, si
deve mai permettere di svolgere qualche operazione su di un
oggetto che ho comprato e pagato e/o su un insieme di dati
che mi appartengono nell'interesse di qualcuno che non sia io.
Appendice P: La pagina di Wikipedia dedicata al Trusted
Computing
Per comodità del lettore, riportiamo qui di seguito il contenuto
della pagina di Wikipedia dedicata al Trusted Computing. Il
testo originale è reperibile sul World Wide Web di Internet a
questi indirizzi:
http://it.wikipedia.org/wiki/Trusted_Computing (Italiano)
http://en.wikipedia.org/wiki/Trusted_computing (inglese)
Il testo originale di Wikipedia è coperto da una licenza GFDL
(GNU Free Documentation License) ed è quindi liberamente
utilizzabile e distribuibile. Gli editori di questo libro si
associano ai volontari di Wikipedia nel desiderio di mantenere
libera la circolazione delle informazioni per cui viene garantito
a chiunque il diritto di copiare e ridistribuire questa sezione
del testo nei termini della stessa GFDL usata da Wikipedia.
Trusted Computing
Il termine Trusted Computing (TC) (informatica fidata) si
riferisce ad una famiglia di specifiche del TCPA con l'obiettivo
dichiarato di produrre computer più sicuri mediante l'uso di
hardware dedicato. I critici - membri della community del
software libero ed open source, esperti di sicurezza,
accademici - sostengono che l'effetto complessivo (e forse
l'intento) del trusted computing sia di imporre delle restrizioni
irragionevoli su come le persone possono usare i loro
computer.
I concetti base
I concetti alla base del trusted computing sono:
1. Ogni
singola
macchina/CPU
è
identificata
univocamente usando dei certificati;
2. La cifratura è eseguita a livello hardware;
3. Le informazioni possono essere firmate con
l'identificativo della macchina;
4. Le informazioni possono essere cifrate con la chiave
segreta della macchina;
La natura della fiducia
Fiducia (trust) significa qualcosa di diverso per gli esperti di
sicurezza rispetto all'accezione che spesso le attribuiscono i
profani. Per esempio, la definizione di un sistema fidato del
dipartimento della difesa Usa è una che potrebbe
compromettere la tua sicurezza; ossia, "un sistema di cui sei
costretto a fidarti perché non hai scelta". Il crittografo Bruce
Schneier osserva "Un computer 'fidato' non significa un
computer che sia affidabile". Secondo quelle definizioni, gli
utenti confidano che la loro scheda video mostri
correttamente le immagini. La fiducia nel linguaggio della
sicurezza è sempre una sorta di compromesso o di debolezza
- a volte inevitabile, ma mai desiderabile, in quanto tale.
La principale controversia sul trusted computing riguarda
questo significato di fiducia. I critici dipingono un sistema
fidato come un sistema di cui sei costretto a fidarti, piuttosto
che come uno particolarmente affidabile. Per contrasto, la
Microsoft, nell'adottare il termine trustworthy computing
(informatica affidabile), intende presumibilmente focalizzare
l'attenzione dei consumatori sui presunti aspetti di affidabilità
nel sistemi basati su trusted computing.
I critici del trusted computing, invece, sono preoccupati di non
essere in grado di guardare dentro allo hardware del trusted
computing per vedere se sia implementato propriamente o se
ci siano delle backdoor. Le specifiche del trusted computing
sono aperte ed accessibili per chiunque le voglia riesaminare,
ma le implementazioni in genere non lo sono. Allo stesso
modo, molti sono preoccupati che i modelli crittografici e gli
algortimi diventino obsoleti. Questo potrebbe risultare
nell'obsolescenza forzata dei computer abilitati per il TC. Per
esempio, delle recenti versioni di specifiche del trusted
computing hanno aggiunto, e richiesto, l'algoritmo
crittografico AES.
Mentre i sostenitori affermano che il trusted computing
aumenti la sicurezza, i critici ribattono che non solo la
sicurezza non sarà aiutata, ma che il trusted computing
faciliterà anche il digital rights managment (DRM)
obbligatorio, lederà la privacy, e imporrà altre restrizioni agli
utenti. Affidare la gestione dei computer in rete ad autorità di
controllo piuttosto che ai singoli individui potrebbe creare
fenomeni di censura digitale. Per i critici, bisognerà dunque
contrastare il trusted computing con il secure computing
(informatica sicura), in cui la principale preoccupazione sia
quella dell'anonimato piuttosto che della trasparenza. I
sostenitori dell'informatica sicura sostengono che della
sicurezza addizionale può essere ottenuta senza cedere il
controllo dei computer dagli utenti a dei super-utenti.
I sostenitori del trusted computing sostengono che le
lamentele sulla privacy siano prive di basi, poiché i
consumatori manterranno la scelta tra sistemi, basata sulle
loro necessità individuali. Per di più, i sostenitori del trusted
computing argomentano che alcune necessità richiedano dei
cambiamenti a livello hardware per permettere al computer di
agire come un client fidato.
Terminologia correlata
Il progetto in questione è conosciuto con nomi diversi.
Trusted computing (informatica fidata) era il nome originale,
ed è ancora usato dal Trusted Computing Group (TCG) e da
IBM. Microsoft lo ha ribattezzato trustworthy computing
(informatica affidabile). Intel ha da poco iniziato a chiamarla
safer computing (informatica più sicura). Richard Stallman
della Free Software Foundation ha adottato il nome di
treacherous computing (infomatica infida).
Scenario
Una varietà di iniziative ricade all'interno del trusted
computing: Un consorzio di industrie che include Microsoft,
Intel, IBM, HP e AMD, ha formato un alleanza per
l'implementazione del trusted computing, nota come Trusted
Computing Platform Alliance (TCPA), poi divenuta Trusted
Computing Group (TGC), progettando un modulo chiamato
Trusted Platform Module (TPM). Intel sta lavorando ad un
modulo chiamato LaGrande Technology (LT), mentre quello di
AMD è conosciuto come Secure Execution Mode (SEM) o
Presidio. Ma, essenzialmente, ci sono proposte per quattro
nuove caratteristiche fornite dal nuovo hardware, che richiede
nuovo software (con l'inclusione di nuovi sistemi operativi e
nuove applicazioni) per poterle utilizzare. Ogni caratteristica
ha uno scopo diverso, anche se possono essere usate insieme.
Queste caratteristiche sono:
1.
2.
3.
4.
I/O sicuro
Memory curtaining
Sealed storage
Attestazione Remota
I/O sicuro
L'input output sicuro (i/o secure) è tale quando viene
autenticato usando dei codici di controllo per verificare che il
software utilizzato per l'I/O non sia stato alterato. Il malware
che si inserisce in questo percorso può essere identificato.
Questo sistema non è capace di difendere contro un attacco
hardware, come un dispositivo che memorizza i tasti premuti,
posto tra la tastiera dell'utente ed il computer.
Memory Curtaining
Il memory curtaining (piantare la tenda sulla memoria)
prevede che lo hardware impedisca ad ogni programma la
lettura e la scrittura negli spazi di memoria (in cui i programmi
"parcheggiano" i dati che stanno elaborando) degli altri
applicativi in esecuzione. Nemmeno il sistema operativo
potrebbe accedere alla memoria, quindi le informazioni
sarebbero sicure anche nel caso in cui un intruso riesca a
prendere il controllo del sistema.
Qualcosa di molto simile può essere ottenuto anche con nuovi
software, ma l'approccio hardware fornisce una soluzione più
elegante ed affidabile. Può anche rendere impossibili alcuni
metodi di debugging.
Sealed storage
Il sealed storage (unità di memorizzazione digitalmente
controllata) protegge le informazioni private consentendone la
cifratura usando una chiave derivata dal software e dallo
hardware utilizzato. Questo significa che i dati possono essere
letti solo dalla stessa combinazione di software ed hardware.
Per esempio, gli utenti che utilizzano un diario privato sul
proprio computer non vogliono che altri programmi o altri
computer siano in grado di leggerlo. Oggi, un virus può
cercare il diario, leggerlo e inviarlo a qualcun altro. Il virus
Sircam faceva una cosa simile a questa. Anche se il diario era
protetto da una password, il virus poteva lanciare un attacco
basato su un dizionario. Alternativamente il virus poteva
modificare il software del diario dell'utente per ottenere il
testo una volta sbloccato il diario. Usando il sealed storage, il
diario è cifrato con sicurezza in quanto solo il programma del
diario non modificato e presente sul suo computer può
leggerlo.
Attestazione remota
L'attestazione remota (remote attestation) permette all'utente
e ad altri di rilevare le modifiche apportate al computer
dell'utente. In questo modo, l'utente può evitare che siano
inviate informazioni private ad un computer compromesso o
non sicuro, o che da questo siano ricevuti comandi importanti.
Il servizio si basa su un certificato, generato dall'hardware che
attesta quali software sono in esecuzione al momento sul pc.
L'utente puo' presentare tale certificato ad un gruppo remoto
per mostrare che il suo computer non è stato compromesso.
L'attestazione remota è di solito combinata con la cifratura a
chiave pubblica, in modo che le informazioni scambiate
possano essere lette soltanto dai programmi che hanno
richiesto
e
presentato
malintenzionati.
l'attestazione,
e
non
dai
Per riprendere l'esempio dell'agenda, il programma di agenda
dell'utente potrebbe inviare l'agenda ad altri pc soltanto se
essi sono in grado di attestare l'esecuzione di una copia sicura
del programma che riceve i dati. Combinata con altre
tecnologie, l'attestazione remota fornisce un percorso più
sicuro per i dati: l'I/O sicuro li protegge in fase di digitazione
sulla tastiera e di visualizzazione sullo schermo, il memory
courtaining mentre questi vengono elaborati, il sealed storage
quando vengono salvati sullo hard disk; infine l'attestazione
remota protegge i dati dal software non autorizzato anche
quando questi vengono utilizzati su altri pc.
Controindicazioni
Gli oppositori del trusted computing sostengono che le
funzionalità che proteggono i computer dai virus e da
eventuali attacchi esterni di malintenzionati vanno anche a
limitare le possibilità dei proprietari dei pc. Questo apre le
porte a nuovi stratagemmi contro la normale concorrenza e
potenzialmente danneggiare chi compra un pc "fidato". Il
crittografo di Cambridge Ross Anderson teme che "il TC
supporti la censura da remoto. Generalmente, gli apparecchi
digitali progettati e costruiti per usare sistemi TC rimangono
sotto il controllo delle aziende che li hanno costruiti anziché
sotto quello del proprietario della piattaforma su cui questi
sistemi vengono montati. Così qualcuno che scrive un
documento che una corte giudicasse diffamatorio potrebbe
essere obbligato a censurarlo e se lui si rifiutasse di farlo la
compagnia produttrice del software con cui è stato scritto il
documento potrebbe esser tenuta a cancellarlo (sotto un
ordine della corte). Con queste possibilità noi possiamo
aspettarci che i sistemi TC vengano usati per cancellare o
nascondere... testi che contestano leader politici". Continua
affermando che:
"... i fornitori di software potrebbero rendere molto difficile il
passaggio a prodotti dei loro concorrenti. In parole povere,
Word potrebbe criptare tutti i tuoi documenti con chiavi a cui
solo i software Microsoft hanno accesso; questo vorrebbe dire
che potresti aprili soltanto con prodotti Microsoft, e non con
un qualsiasi
concorrenza.
programma
per
testi
appartenente
alla
"... il maggior beneficio per Microsoft è che il sistema TC
aumenterà notevolmente i costi di passaggio da un prodotto
Microsoft (come Office) a uno concorrente (come OpenOffice).
Per esempio, uno studio legale che volesse passare da Office a
OpenOffice ora come ora dovrebbe solo installare il software,
istruire i dipendenti e convertire i loro documenti. In un
margine di cinque anni, una volta che loro abbiano ricevuto
documenti digitalmente protetti con il TC da magari mille
clienti diversi, dovrebbero ottenere il permesso (sotto forma
di certificato digitale firmato) da ognuno di quei clienti per
poter convertire i loro file in un nuovo formato. Lo studio
legale per motivi pratici non lo farà, così che sarà ancora più
costretto in questa direzione, e ciò darà a Microsoft la
possibilità di alzare i prezzi dei suoi prodotti".
Anderson riassume il discorso dicendo "Il punto fondamentale
è che chiunque controlli l'infrastruttura TC acquisirà un
enorme potere. Avere il controllo di questo è come far sì che
tutti usino la stessa banca, o lo stesso provider, o lo stesso
avvocato. Ci sono molti modi in cui abusare di questo potere".
Gli utenti non possono cambiare software
Nell'esempio del diario, un hard disk sigillato protegge il
diario da malware come i virus, ma non fa distinzione con i
programmi utili, come quelli che potrebbero essere usati per
convertire il diario in un nuovo formato, o implementare nuovi
metodi di ricerca all'interno del diario. Un utente che volesse
cambiare il software per il proprio diario con uno alternativo
potrebbe incontrare problemi come l'impossibilità del nuovo
diario di leggere le pagine del vecchio perché queste
potrebbero essere accessibili solo con il software che aveva
precedentemente. Potrebbe anche diventare impossibile per
l'utente leggere o modificare il proprio diario se non con
l'autorizzazione del software del diario. Se lui nel suo diario
non aveva la possibilità di modificare o eliminare delle pagine,
con il nuovo queste operazioni potrebbero risultare
impossibili.
L'autenticazione remota potrebbe causare altri problemi.
Attualmente i siti web possono essere visitati con diversi
browser, però alcuni siti possono esser impaginati
(volontariamente o meno) in modo che qualche browser non
sia in grado di decifrarne il codice. Gli sviluppatori però hanno
trovato il modo di aggirare questo problema facendo emulare
questo o quel browser a seconda delle necessità del sito
visitato. Per esempio, quando il sito MSN di Microsoft non
faceva semplicemente vedere le pagine ai browsers non
Microsoft, gli utenti potevano accedere a quelle pagine
impostando il loro browser per emularne uno Microsoft. Un
sistema di autenticazione remota potrebbe rendere inutile
ogni tipo di emulazione, così siti come MSN potrebbero
richiedere un certificato per essere sicuri che in quel momento
tu stia usando un browser di loro proprietà.
Gli utenti non hanno il controllo delle informazioni che
ricevono
Una delle motivazioni originarie dietro al trusted computing
era il desiderio di supportare in modo più rigoroso
l'amministrazione dei diritti digitali (Digital Rights Managment,
DRM): una tecnologia per evitare che gli utenti condividano e
utilizzino, senza autorizzazione, file coperti da copyright o
privati. Microsoft ha annunciato una tecnologia DRM che farà
uso del trusted computing.
Il trusted computing può essere usato per il DRM. Un esempio
potrebbe essere il download di un file musicale di un artista:
gli artisti potrebbero fornire delle regole su come la loro
musica possa essere utilizzata. Per esempio, potrebbero
volere che l'utente abbia la possibilità di eseguire il file solo
tre volte al giorno, senza spendere altri soldi. Inoltre
potrebbero usare un'attestazione remota per inviare la loro
musica solo ad un lettore musicale capace di far rispettare le
loro regole: il sealed storage impedirebbe all'utente di aprire il
file con un altro lettore non capace di rispettare le restrizioni o
di fare una copia senza restrizioni del file mentre è in
esecuzione. Il secure output impedirebbe di catturare ciò che è
trasmesso al sistema sonoro.
Una volta che le registrazioni digitali sono state convertite in
segnali analogici, i segnali (probabilmente qualitativamente
peggiorati)
potrebbero
essere
registrati
nel
modo
convenzionale, ad esempio connettendo la scheda audio ad un
registratore, al posto delle casse, oppure registrando il suono
ottenuto tramite un microfono.
Senza
l'attestazione
remota,
questo
problema
non
esisterebbe. L'utente potrebbe semplicemente scaricare la
canzone con un lettore che non rispetta le restrizioni
dell'artista, oppure che permette la conversione della canzone
in un formato "senza restrizioni" come l'MP3.
Gli utenti non hanno il controllo dei propri dati
Se un utente aggiorna il proprio computer, il sealed storage
potrebbe impedirgli di spostare i suoi file musicali nel nuovo
computer. Potrebbe anche imporre l'uso di software spia, in
modo che i file musicali vengono abilitati soltanto ad utenti i
cui pc sono in grado di avvisare l'artista o la casa discografica
ogni volta che la canzone viene riprodotta su quel pc.
Analogamente un giornale potrebbe richiedere che, per poter
scaricare i suoi articoli, il pc dell'utente attesti di leggerli
usando uno specifico programma. A sua volta il software di
lettura potrebbe essere programmato per impedire la lettura
di articoli che nel frattempo sono stati modificati sul sito web
del giornale. Questo "obbligo della nuova versione"
permetterebbe al giornale di "riscrivere la storia" cambiando o
cancellando degli articoli. Anche se un utente ha salvato sul
proprio pc l'articolo originale, il software potrebbe rifiutarsi di
visualizzarlo, una volta che ne sia stato annunciato il
cambiamento.
Perdita dell'anonimato su Internet
Poiché un computer equipaggiato per il TC è in grado di
attestare la propria identità, sarà possibile per i venditori, ed
altri capaci di sfruttare la funzionalità dell'attestazione,
ottenere dati sull'identità dell'utente di quel computer con un
alto grado di precisione.
Questa capacità è condizionata alla ragionevole probabilità
che l'utente, in un certo momento, fornisca delle informazioni
di identificazione, volontariamente o indirettamente. Un
sistema comune per ottenere e collegare queste informazioni
è la registrazione, da parte dell'utente, del suo computer
appena dopo l'acquisto. Un altro sistema è la comunicazione
delle informazioni di identificazione ad un sito internet di un
affiliato al venditore.
Con le nuove tecnologie di identificazione come quelle
biometriche e RFID, sempre più diffuse, è previsto che gli
utenti del computer vengano identificati con molta
accuratezza, e che sia disponibile un numero maggiore di
informazioni su di loro. Mentre chi propone il TC crede che gli
acquisti online e le transizioni di denaro possano essere più
sicure, come conseguenza dell'attestazione remota, questo
potrebbe causare la perdita dell'aspettativa di anonimato da
parte dell'utente durante l'utilizzo di Internet.
I critici pensano che questo potrebbe avere degli effetti di
congelamento su diversi fronti, quali la libera discussione
politica, l'abilità dei giornalisti di utilizzare fonti anonime, la
denuncia di cattive prassi, i blog politici e altre aree dove il
pubblico ha tradizionalmente goduto della protezione
dell'anonimato contro le rappresaglie.
La proposta di implementare l'Owner Override sul TC
Tutti questi problemi nascono perché il Trusted Computing
protegge i programmi da tutto, persino dal proprietario. Una
semplice soluzione di questo problema è quella di lasciare al
proprietario dell'elaboratore la possibilità di modificare queste
protezioni. Questa operazione è denominata Owner Override
(controllo manuale del proprietario) ed attualmente è
abbozzata soltanto come un suggerimento di modifica.
Quando viene attivata la Owner Override, l'elaboratore utilizza
il percorso sicuro di I/O per assicurarsi che ci sia fisicamente
una persona presente e che tale persona sia il proprietario
dell'elaboratore. Così sarà possibile aggirare le protezioni. In
questo modo, con l'attestazione remota, è possibile forzare
l'elaboratore a generare attestazioni false, ad esempio:
certificati che indicano usiate Internet Explorer, quando in
realtà state usando FireFox. Invece di riportare quando il
software è stato modificato, l'attestazione remota indicherà
quando il software è stato cambiato senza il permesso del
proprietario.
Mentre sembrava che l'idea del Owner Override sarebbe stata
approvata favorevolmente, alcuni membri del TCG hanno
invece dipinto questa modifica come la potenziale rovina del
movimento TC. La Owner Override fa venire meno l'intera idea
di potersi fidare ciecamente degli elaboratori degli altri utenti.
La Owner Override continuerebbe a fornire tutti i benefici di
sicurezza e di esecuzione sulla propria macchina, ma
perderebbe tutta la capacità di accertare che un altro
proprietario non abbia modificato le regole o le restrizioni
sulla sua macchina. Ad esempio quando viene spedito un dato
verso l'elaboratore di qualcun altro, qualunque sia tale dato (il
tuo diario, un file musicale, un contratto, ...), il ricevente
potrebbe controllare e quindi modificare quale sicurezza i loro
elaboratori dovranno far rispettare durante l'operazione di
copia di quei dati.
Appendice Q: Le FAQ di Ross Anderson
Riportiamo qui di seguito le FAQ del Professor Ross Anderson
nella loro versione italiana. Questo documento è stato
rilasciato sotto licenza GFDL (GNU Free Documentation
License) e può essere quindi redistribuito e copiato
liberamente. L'autore e l'editore di questo libro si associano al
Professor Ross Anderson nel desiderio di mantenere libera la
circolazione dell'informazione e garantiscono a chiunque sia
interessato il diritto di riutilizzare questa sezione del testo
secondo le norme previste dalla stessa licenza GFDL utilizzata
all'origine.
'Trusted Computing' Frequently Asked Questions
- TC / TCG / LaGrande / NGSCB / Longhorn / Palladium / TCPA
Versione 1.1 (Agosto 2003)
Ross
Anderson
Traduzione italiana: Mauro Sandrini
Questo documento viene rilasciato rispettando le specifiche della
licenza GNU Free Documentation License. Di seguito compaiono i
link alle traduzioni in Inglese Tedesco, Spagnolo, Olandese, Cinese,
Norvegese, Svedese, Finlandese, Ungherese, Ebraico e Francese.
Visita inoltre la pagina su Economia e Sicurezza che fornisce molte
informazioni di base sui temi qui trattati.
1. Cos'è il 'TC', questo business che si occupa di 'trusted
computing' (informatica sicura/fidata) ?
Il Trusted Computing Group (TCG) è un alleanza di Microsoft, Intel,
IBM, HP ed AMD per promuovere per computer più 'sicuri'. La loro
definizione di sicurezza è controversa; macchine costruite
rispettando le loro specifiche saranno più 'fidate' dal punto di vista
dei venditori di software e di contenuti, ma lo sarebbe meno dal
punto di vista dei proprietari dei computer stessi. A tutti gli effetti, le
specifiche TCG, trasferiranno il controllo definitivo del tuo computer
da te stesso a chiunque abbia scritto il software che utilizzi. (Molto di
più di ciò che succede ora.)
Il progetto TCG è conosciuto con vari nomi. `Trusted computing' è
stato il primo ed è tutt'ora utilizzato da IBM, mentre Microsoft lo
definisce `trustworthy computing' e la Free Software Foundation
`treacherous computing' (informatica traditrice). D'ora in avanti lo
chiameremo TC in modo che ciascuno possa pronunciarlo come
meglio vuole. Altre definizioni che potrai incontrare includono il TCPA
(era il nome del TCG prima che questo lo incorporasse dopo cambio
organizzativo), Palladium (il vecchio nome dato da Microsoft alla sua
versione da rilasciare nel 2004) e NGSCB (il nuovo nome usato da
Microsoft). Intel ha appena iniziato a chiamare ciò `safer computing'
(informatica sicura). Molti osservatori sono convinti che questa
confusione sia voluta - i promotori vogliono deviare l'attenzione da
quello che TC realmente fa.
2. Quali sono le funzioni del TC in parole povere?
La funzione principale di questo sistema è di fornire una piattaforma
informatica che non permetta di modificare i programmi utilizzati
dall'utente. Le applicazioni che gireranno su questo sistema, inoltre,
saranno in grado di comunicare in modo sicuro col produttore.
L'obiettivo originale era quello di gestire il copyright per i beni digitali.
Il digital rights management (DRM): Disney sarà in grado di vendere
DVD che saranno leggibili solo al momento dell'esecuzione su una
piattaforma TC, ma che non sarà possibile copiare. Anche l'industria
della musica sarà in grado di vendere brani scaricabili da Internet
che non sarà possibile copiare. Sarà possibile vendere CD che
l'acquirente potrà ascoltare solo tre volte, oppure solo nel giorno del
tuo compleanno. Si apriranno un'infinità di nuove vie per il marketing
di beni e servizi.
Il TC renderà molto difficile utilizzare software senza licenza.
Nonostante Microsoft abbia più volte negato ciò, al WEIS 2003 un
senior Microsoft manager ha rifiutato di negare che combattere la
pirateria fosse un obiettivo: 'Aiutare la gente ad utilizzare software
rubato non è esattamente il nostro scopo di vita', ha affermato. I
meccanismi ora proposti sono sottili. TC proteggerà il sistema di
registrazione di modo che il software non licenziato venga escluso
dal nuovo ambiente. Inoltre , le applicazioni TC funzioneranno meglio
con le altre applicazioni TC, in modo che le persone non possano
ottenere il massimo dalle applicazioni non-TC (comprese quelle
pirata). Inoltre alcune applicazioni TC potranno rifiutare dati da
vecchie applicazioni i cui numeri di serie siano stati registrati in
apposite blacklist. Per esempio se Microsoft crede che la tua copia di
Office sia una copia pirata, e il tuo comune adotta il TC, allora i
documenti che ti può capitare di scambiare con l'amministrazione
possono non essere leggibili. TC permetterà anche di rendere più
semplice la possibilità di affittare il software anzichè acquistarlo; e se
decidi di smettere di pagare l'affitto ciò non solo farà si che il
software smetta di funzionare ma questo potrà succedere pure ai file
che hai creato tramite esso. Cosi se smetti di pagare gli
aggiornamenti a Media Player puoi perdere l'accesso a tutta la
musica che hai acquistato nel corso del suo utilizzo. Bill Gates ha
sognato per anni di trovare il modo per far si che i Cinesi paghino per
il software: il TC potrebbe essere la risposta alle sue preghiere.
Ci sono molte altre possibilità: i Governi potranno far si che tutti i
documenti Word creati sui PC dell'amministrazione siano classificati
come `riservati' e non possano essere forniti elettronicamente ai
giornalisti. I siti d'Aste potrebbero forzare gli utenti ad utilizzare
software considerato sicuro per le offerte, in modo da impedire
offerte 'tattiche' durante l'asta. I "trucchi" ai videogames potrebbero
essere resi molto più difficili.
Ci sono però, altri aspetti: TC può supportare una una censura da
remoto. Nella forma più semplice questo potrà servire per progettare
applicazioni in grado di eliminare la musica piratata. Per esempio
una canzone che provenga da un server TC e sia disponibile sul web
come mp3 potrà essere riconosciuta tramite un watermark (marchio
digitale), trasmessa la sua presenza al server remoto, dopodichè
verranno emanate le istruzioni per la sua rimozione (cosi come
quella di altro materiale presente su quella macchina). Questo
modello di business denominato 'traitor tracing' (tracciare i traditori) è
stato studiato estensivamente da Microsoft (ed altri). In generale,
oggetti digitali creati usando TC rimarrano sotto il controllo dei
creatori piuttosto che sotto il controllo della persona che è
proprietaria della macchina su cui sono presenti il quel momento.
Così chiunque scriva un articolo che un tribunale decida essere
diffamatorio potrà essere obbligato a censurarlo - e l'azienda di
software che abbia prodotto il word processor utilizzato per scriverlo
potrà essere obbligata ad eliminarlo nel caso l'autore rifiuti. Dato ciò
possiamo attenderci che TC possa essere utilizzato per sopprimere
qualsiasi cosa dalla pornografia a scritti che critichino leader politici.
Per il mondo del business questa funzionalità è importante perchè
può rendere molto difficile per l'utente passare ad un prodotto della
concorrenza. Ad un livello elementare Word potrà criptare tutti i tuoi
documenti adottando chiavi cui solo i prodotti Microsoft abbiano
accesso. Ciò significa che sarà possibile leggerli esclusivamente
utilizzando prodotti Microsoft e non con qualsiasi elaboratore di testi
concorrente. Questo spudorato lock-in (blocco) dei consumatori potrà
essere proibito dalle autorità che regolano la concorrenza ma ci sono
altre strategie di lock-in più sottili che sono molto più difficile da
verificare (ne parlerò più avanti).
3. In questo modo non potrò più ascoltare gli MP3 sul mio PC?
Con gli attuali MP3, dovrebbe essere possibile per i primi tempi.
Microsoft afferma che TC non farà cessare il funzionamento di nulla
dall'oggi al domani. Ma un recente aggiornamento a Windows Media
Player ha causato una controversiadovuta al fatto che gli utenti
devono accettare future misure anti-pirateria non meglio specificate,
tali misure potrebbero includere misure che cancellino contenuti
'piratati' che venissero rinvenuti sul tuo computer. Bisogna
aggiungere che alcuni programmi che permettono agli utenti un
maggiore controllo del pc (come VMware e Total Recorder)
probabilmente non saranno ammessi tra quelli funzionanti sulla
piattaforma TC. Così potrebbe essere necessario utilizzare un
diverso lettore di mp3 - in grado di leggere MP3 piratati, ma allora
esso non sarà tra i software ammessi fra quelli del TC.
E' a discrezione di un'applicazione definire le politiche di sicurezza
per i propri file, utilizzando un server remoto accessibile attraverso
Internet, per la gestione di tali politiche. In questo modo il Media
Player potrà determinare a quali condizioni sono sottoposti i titoli
protetti, c'è da aspettarsi che Microsoft metta in atto ogni tipo di
accordi con i fornitori di contenuti, che sperimenteranno le strategie
più stravaganti. Sarà possibile ottenere CD ad un terzo del prezzo
ma che si potranno ascoltare solo 3 volte; pagando i rimanenti due
terzi si otterranno i diritti completi. Sarà possibile prestare musica ad
un amico ma la tua copia di backup non funzionerà finchè il tuo
amico non ti restituirà la copia principale. Oppure, più probabilmente,
non sarà possibile prestare musica in nessun caso. Queste politiche
renderanno la vita difficile per qualcuno; per esempio una codifica
regionale potrebbe impedire di guardare la versione Polacca di un
film se il tuo PC è stato acquistato fuori dall'Europa.
Tutto questo potrebbe essere già fatto oggi - a Microsoft servirebbe
solo poter scaricare la nuova patch nel tuo media player - e una volta
che TC rendesse difficile per i singoli gestire il proprio software
lettore di mp3, sarà più facile per Microsoft e l'industria della musica
controllare gli aggiornamenti e le patch. Sarà più difficile sfuggire al
sistema. Il controllo del software per il media player è così importante
che l'antitrust dell'Unione Europea sta proponendo di penalizzare
Microsoft per i suoi comportamenti anticompetitivi obbligandola a
scorporare il Media Player oppure di includere i sistemi dei
concorrenti
entro
Windows.
TC aumenterà enormemente le modalità di controllo dei media.
4. Come funziona il TC?
TC fornisce le specifiche per i componenti di monitoraggio e
reporting che saranno montati nei futuri PC. L'implementazione
auspicata prima fase del TC enfatizzava il ruolo del chip 'Fritz' - una
smartcard o una chiave hardware - saldata sulla scheda madre.
La versione attuale presenta cinque componenti: il chip Fritz, una
memoria separata nella CPU, un kernel di sicurezza in ciascuna
applicazione TC (il componente 'NCA' nel linguaggio di Microsoft) ed
una infrastruttura di back-end di server di sicurezza online gestita dai
software vendors per collegare tutti i tasselli insieme.
La versione iniziale del TC prevedeva che il chip Fritz
supervisionasse il processo di avvio, in modo che il Pc sarebbe stato
avviato in uno stato conforme con hardware e software conosciuti. La
versione corrente vede Fritz come un componente passivo che
memorizza l'hash (numero univoco) della macchina allo start up.
Questo hash viene calcolato utilizzando i dettagli dell'hardware
(scheda audio, video etc..) e del software (Sistema Operativo,
drivers, etc..). Se la macchina termina l'avvio in uno stato approvato,
Fritz renderà disponibili al sistema operativoo le chiavi crittografiche
necessarie per decrittare le applicazioni ed i dati TC. Se, invece,
termina in uno stato non conforme allora Fritz non rilascerà la chiave
giusta. La macchina sarà ancora in grado di eseguire applicazioni
non-TC ed accedere a dati non-TC ma il materiale protetto resterà
inaccessibile.
Il kernel deputato alla sicurezza (il 'Nexus') del sistema operativo
colma il vuoto fra il chip Fritz ed i componenti di sicurezza delle
applicazioni (gli 'NCA'). Si occupa di verificare che i componenti
siano sulla lista approvata da TC, che i componenti software siano
stati registrati, che nessuno dei numeri seriali sia stato revocato. Se
ci sono cambiamenti significativi alla configurazione del Pc la
macchina dovrà collegarsi alla rete per essere ri-certificata: il sistema
operativo si occuperà di questo. L'esito è che il Pc verrà avviato in
uno stato conosciuto con una combinazione di hardware e software
approvata (ovvero le cui licenze non sono scadute). Infine, il 'Nexus'
lavorerà insieme alla memoria separata nella CPU per impedire ad
ogni applicazione TC dal leggere dati di altre applicazioni TC. Queste
nuove funzioni sono chiamate `Lagrande Technology' (LT) per le
CPU Intel e `TrustZone' per l'ARM.
Una volta che la macchina sia in uno stato approvato, con una
applicazione TC caricata e difesa da interferenze da altri software,
Fritz certificherà questo alle terze parti. Per esempio potrà eseguire
un protocollo di autenticazione con Disney per garantire che quella
macchina è un contenitore 'sicuro' per Biancaneve. Ciò significa che
il Pc sta eseguendo un programma autorizzato - Media Player,
Disney Player etc - con il suo NCA correttamente caricato e difeso
dalla memoria separata contro debuggers ed altri strumenti che
utilizzabili per copiarlo illegalmente. Il server Disney spedirà i dati
criptati con una chiave che Fritz utilizzerà per aprirli. Fritz renderà
disponibile la chiave solo all'applicazione autorizzata e solo fino a
quando l'ambiente resti 'trusworthy' (fidato). Per questo motivo
'trustworthy' è definita in base alle politiche sicurezza scaricate dal
server sotto il controllo del proprietario dell'applicazione. Ciò significa
che Disney può decidere di rilasciare i suoi contenuti migliori solo al
media player i cui autori decidano di accettare certe restrizioni. Ciò
potrà includere restrizioni su quale hardware o software utilizzare
oppure in quale paese essi siano localizzati. Ciò potrebbe includere
un pagamento: Disney potrebbe insistere, per esempio, che
l'applicazione raccolga un dollaro ogni volta che il film viene visto.
L'applicazione stessa potrà essere affittata. Le possibilità sembrano
limitate solo alla immaginazione dei reparti marketing.
5. Per cos'altro potrà essere utilizzato il TC?
Il TC può essere utilizzato per promuovere un maggior controllo
sull'accesso a documenti confidenziali. Ciò è già disponibile, in forma
primitiva, con Windows Server 2003, con il nome di `Enterprise rights
management' (Gestione dei diritti aziendali) e la gente sta già
sperimentato questo sistema.
Un punto centrale è la distruzione automatica dei documenti. A
seguito dei contenuti di alcune email imbarazzanti emerse in un
recente caso anti-trust, Microsoft ha deciso una politica per cui tutte
le email interne vengono distrutte dopo sei mesi. TC renderà questa
possibilità disponibile a tutte le aziende che adottino piattaforme
Microsoft. (Pensate a come sarebbe stato utile tutto ciò per Arthur
Andersen nella gestione caso Enron). TC può essere usato per
assicurarsi che i documenti dell'azienda possano essere letti solo su
PC dell'azienda stessa a meno che una persona autorizzata decida
che essi sono esportabili. Saranno possibili anche controlli molto
fantasiosi: per esempio se spedisci un'email imbarazzante per il tuo
superiore egli potrà emanare un messaggio per provvedere alla sua
cancellazione ovunque esso sia giunto. Sarà possibile anche
incrociare i domini: per esempio un'azienda potrà specificare che la
sua corrispondenza legale possa essere vista esclusivamente da tre
persone nello studio legale e dalle loro segretarie. (Studio legale
potrebbe cercare di evitare ciò perchè gli altri componenti dello
studio sono responsabili congiuntamente: ci potrebbero essere
negoziazioni interessanti sul modo in cui le persone cercheranno di
ridurre le tradizionali relazioni di fiducia a relazioni programmate.)
Il TC è rivolto inoltre ai sistemi di pagamento. Una delle visioni di
Microsoft è che molte delle funzionalità attualmente presenti nelle
carte bancarie si potrà spostare verso il software una volta che le
applicazioni siano a prova di intrusione. Ciò implicherà che noi
pagheremo per i libri letti e la musica ascoltata ad una certa cifra per
pagina o per minuto. L'industria della banda larga sta promuovendo
questa visione; contemporaneamente alcune persone preveggenti
nella industria della musica stanno iniziando a preoccuparsi del fatto
che Microsoft possa acquisire una percentuale delle loro vendite.
Nonostante i micropagamenti non funzionino come modello di
business - ed esistono alcuni argomenti persuasivi sul perchè - ci
saranno cambiamenti enormi nei pagamenti online con l'effetto di far
pagare di più il consumatore. Se, nel giro di dieci anni, non sarà
conveniente acquistare online con una carta di credito a meno che
non utilizzi una piattaforma TC allora sarà davvero dura per gli utenti
Mac e GNU/linux.
L'attenzione che i governi dedicano al TC risiede nel fatto che l'ERM
(Enterprise Rights Management) può essere usato per realizzare un
'controllo di accesso vincolante' - rendendo le decisioni sul controllo
di accesso indipendenti dalle scelte dell'utente ma fondate
esclusivamente sul suo ruolo. Per esempio un esercito potrà disporre
che i suoi soldati possano creare documenti Word siglati ad un livello
di riservatezza 'Confidenziale' o superiore. In questo modo, i soldati
non potranno spedire documenti alla stampa (oppure a casa etc..).
Questa rigidità non funziona molto bene in organizzazioni grandi e
complesse, a causa del fatto che il controllo di accesso entra nel
modo in cui le persone lavorano, ma i governi affermano di volerlo e
senza dubbio si scontreranno con le difficoltà inerenti questa
opzione. (Il controllo di accesso vincolante può essere invece molto
utile per le piccole organizzazioni con una mission molto focalizzata:
per esempio un cartello per il commercio della cocaina può disporre
che quel foglio elettronico con i dati delle spedizioni dell'ultimo mese
possa essere letto esclusivamente da cinque Pc e solo fino alla fine
del mese). Dopodichè le chiavi utilizzate per criptarlo scadono e chip
Fritz su queste macchine non lo renderà più disponibile ad alcuno.
6. OK, ci saranno vincitori e vinti - Disney potrebbe essere uno
dei grandi vincitori, i produttori di smartcard grandi perdenti.
Ma di sicuro Microsoft e Intel non stanno investendo cosi tanto
su questo progetto per beneficenza. Come intendono rendere
profittevole questo business per loro stessi?
Per Intel, che ha dato il via a tutto il processo legato al TC, è stata
una mossa difensiva. Poichè essi ottengono il massimo del valore
dal mercato dei microprocessori, ed hanno la maggior parte del
mercato, l'unico modo per crescere è di aumentare le dimensioni del
mercato. Essi erano determinati a far si che il Pc divenisse l'hub della
futura rete di casa. Se l'entertaiment è la killer application e il DRM
sta diventando la tecnologia critica in questo contesto, allora il Pc
doveva gestire i DRM oppure essere spazzato via dal mercato home.
Microsoft, che sta ora guidando il TC, è stata motivata dalla stessa
aspirazione: portare l'entertaiment all'interno del suo impero.
Comunque vada essi vincerebbero alla grande se il TC si
diffondesse. Ci sono due ragioni. La prima, e meno importante, è
che essi saranno in grado di ridurre drasticamente la copia del
software. 'Far pagare i cinesi per il software' è sempre stata una
grande aspirazione per Bill; con il TC potrà collegare ogni Pc alla
singola licenza di Office e Windows, oltrechè escludere le copie
illegali di Office fuori dal nuovo universo TC.
Il secondo, e più importante, beneficio per Microsoft è che TC
incrementerà esageratamente i costi per passare da prodotti
Microsoft (come Office) a prodotti concorrenti (come OpenOffice).
Per esempio uno studio legale che voglia passare da Office a
OpenOffice oggi dovrebbe semplicemente installare il software,
formare i dipendenti e convertire i file esistenti. Nel giro di cinque
anni una volta che essi abbiano ricevuto documenti protetti con il TC
da magari un migliaio di differenti clienti, essi dovrebbero avere il
permesso (nella forma di certificati digitali) da ciascun specifico
cliente per poter migrare i loro file nella nuova piattaforma. Lo studio
legale, in pratica, non vorrà questo, e in questo modo saranno
ancora più impediti nel passaggio ad un altro software. In questo
modo Microsoft potrà alzare ulteriormente i prezzi.
Gli Economistiche hanno studiato l'industria del software concludono
che il valore di un business informatico è equivalente al costo totale
che hanno i consumatori nel passare alla concorrenza; entrambi
sono equivalenti al valore attuale netto dei pagamenti futuri dei clienti
del software vendor. Questo significa che un dominatore in un
mercato maturo, come Microsoft con i suoi prodotti Office, può
crescere più velocemente del mercato solo se esso vincola i suoi
clienti molto strettamente. Ci sono vari alcune perplessità riguardo a
questa teoria, ma l'idea di base è ben conosciuta tra i capitani
dell'industria del software. Ciò spiega il commento di Bill Gates che `
Noi siamo arrivati a ciò pensando alla musica ma poi abbiamo
realizzato che le e-mail ed i documenti sono ambiti molto più
interessanti'.
7. Da dove vengono queste idee, dal punto di vista tecnico?
Il concetto del TC di avviare una macchina in uno stato conosciuto è
implicito nei primi Pc dove la ROM era nel BIOS e dove non era
presente un hard-disk in cui un virus poteva nascondersi. L'idea di un
bootstrap affidabile per le macchine moderne sembra essere
apparso per la prima volta in un articolo di Bill Arbaugh, Dave Farber
and Jonathan Smith, `` Una Architettura di Bootstrap Sicura ed
Affidabile'', nei lavori del IEEE Symposium on Security and Privacy
(1997) pp 65-71. Ciò ha portato ad un brevetto statunitense:
``Secure and Reliable Bootstrap Architecture'', U.S. Patent No.
6,185,678, February 6th, 2001. Il pensiero di Arbaugh si è sviluppato
a partire dal suo lavoro sulla firmatura del codice presso la NSA nel
1994 e originalmente applicato agli switch ATM in rete. Alla Microsoft
hanno inoltre richiesto il brevetto sugli aspetti del sistema operativo.
(I testi dei brevetti sono qui e qui.)
Ci sono molti lavori preliminari a questi però. Markus Kuhn ha scritto
su the TrustNo1 Processor anni fa, e l'idea di base relativa ai sistemi
operativi 'affidabili' - di un 'monitor di riferimento' che supervisiona le
funzioni di controllo di accesso - risale almeno a un articolo scritto da
James Anderson per conto dell' USAF nel 1972. E' stata una
caratteristica della filosofia dei sistemi di sicurezza militari USA da
allora.
8. Come ciò è legato al numero seriale del Pentium 3?
Intel iniziò un programma prototipo verso la metà degli anni '90 che
avrebbe inserito le funzionalità del chip Fritz all'interno processore
principale del PC, oppure nel chip di controllo della cache verso il
2000. Il numero seriale del Pentium è stato un primo passo in questa
direzione. La reazione pubblica avversa sembrò aver causato una
pausa nello sviluppo, e indirizzarli verso la costituzione di un
consorzio con Microsoft ed altri per cercare di costituire una massa
di produttori che dalla sua avesse la forza dei numeri. Il consorzio
che venne costituito, il Trusted Computer Platform Alliance (TCPA),
fu alla fine inglobato nel TCG ed il suo nome modificato.
9. Perchè chiamare 'Fritz' il chip responsabile della supervisione
?
E' stato chiamato cosi in onore del senatore Fritz Hollings del South
Carolina, il quale ha lavorato indefessamente al Congresso per
rendere il TC un componente obbligatorio per tutta l'elettronica di
consumo. (La proposta di Hollings è fallita; egli ha perso la
presidenza della commissione del Senato Usa per il Commercio, la
Scienza ed i Trasporti ed è in procinto di andare in pensione nel
2004. Ma l'impero ritornerà. Per esempio Microsoft sta spendendo
una fortuna a Bruxelles per promuovere una bozza di direttiva sul
rafforzamento degli IPR (Intellectual an Property Rights) che è
propriamente una roba brutta.)
10. OK, in questo modo TC impedisce ai ragazzi di rubare la
musica ed aiuta le aziende a mantenere i dati riservati. Potrebbe
aiutare anche la Mafia, a meno che l'FBI ottenga una chiave di
accesso riservata, che si può pensare avrà. Ma a parte i pirati, le
spie industriali e gli estremisti, chi dovrebbe essere
preoccupato per questa storia?
Molte aziende sono nella posizione di essere estromesse dal
mercato in rapporto diretto a questo processo, come per esempio i
fornitori di sistemi di sicurezza. Quando venne lanciato il TC, col
nome di Palladium, Microsoft affermò che Palladium avrebbe fermato
lo spam i virus e praticamente ogni altra brutta cosa si trovasse nel
cyberspazio - se fosse cosi, allora le aziende che producono
antivirus, gli spammer, i filtri anti-spam e le aziende che si occupano
di firewall e di rilevamento delle intrusioni potrebbero vedersi
espropriate del loro pane quotidiano. Ora il clima è un po' cambiato,
ma Bill Gates ammette che Microsoft entrerà nel mercato della
sicurezza in modo piuttosto aggressivo: "Questo perchè si tratta di
un'area in crescita e non vogliamo apparire falsamente modesti
rispetto alle nostre intenzioni."
Rispetto a cio' le preoccupazioni riguardano gli effetti su
competizione e innovazione continuano ad aumentare. I problemi per
l'innovazione sono ben spiegati in un recente articolo sul New York
Times del noto economista Hal Varian.
Ci sono, però, problemi più profondi. La questione fondamentale e'
che chiunque controlli l'infrastruttura TC acquisira' un enorme
aumento di potere. Gestire questo singolo punto di controllo sarà
come far si che ognuno utilizzi la stessa banca, lo stesso
commercialista oppure lo stesso avvocato. Ci sono molti modi in cui
questo potere potrà essere abusato.
11. In che modo ci potrebbero essere abusi legati al TC?
Una delle preoccupazioni è la censura. Il TC è stato progettato
dall'inizio per per impedire, da un organismo centrale, l'utilizzo di bit
considerati illegali. Il software pirata non verrà eseguito nel mondo
TC cosi come il TC renderà il processo di registrazione a prova di
intrusione. Ma che ne sarà delle canzoni o dei video piratati? Come
si potrà impedire che qualcuno registri una canzone - se necessario
con dei microfoni vicino agli altoparlanti di una macchina TC - per poi
convertirla in mp3? La soluzione proposta è che il contenuto protetto
conterrà una marchiatura digitale e che i media players legali non
suoneranno una canzone a meno che essa non contenga il suo
certificato digitale. Ma se qualche hacker riuscisse a violare il Fritz
chip e a produrre una transazione che 'legalmente' trasferisse la
proprietà della canzone? In questo caso entrerebbe in azione la
tecnologia per il tracciamento del traditore (traitor tracing technology)
per rintracciare da quale PC la canzone è stata prelevata. A questo
punto succedono due fatti. Il primo è che il proprietario di quel PC
verrà perseguito (Almeno in teoria; infatti questa tecnica non
funzionerebbe se i pirati usassero PC violati). In secondo luogo le
traccie presenti su quella macchina sarebbero inserite su una lista
nera da cui tutti i TC player sarebbero aggiornati di tanto in tanto.
Le Blacklist (liste nere) hanno utilizzi che vanno molto al di là della
gestione della pirateria musicale. Esse possono essere utilizzate per
monitorare tutti i file che quella applicazione apre - come contenuto,
come numero di serie dell'applicazione che l'ha creata, o da qualsiasi
altro criterio si voglia programmare. L'obiettivo di ciò è che se tutti in
Cina utilizzassero la medesima copia di Office non solo si impedirà a
questa copia di funzionare in ogni macchina non TC conforme questo farebbe soltanto si che i Cinesi adottassero PC normali
anzichè computer TC conformi - ma anche ogni computer TCconforme al mondo rifiuterebbe di leggere i documenti creati
utilizzando quella copia pirata. Ciò metterà una enorme pressione sui
cinesi. (Un precedente esiste già: quando gli spammer iniziarono ad
usare account cinesi, molti ISP americani semplicemente oscurarono
la China, di modo che il governo cinese fu costretto a mettere sotto
controllo lo spam).
I potenziali abusi si estendono molto oltre le tensioni commerciali e le
guerre economiche e giungono fino alla censura politica. Mi aspetto
che questo avvenga un passo alla volta. All'inizio alcune forze di
polizia ben intenzionate eseguiranno un ordine relativo ad una foto
pornografica di un bambino, oppure a un manuale su come sabotare
i segnali ferroviari. Tutti i computer TC-conformi cancelleranno, o
almeno riferiranno su, questi documenti criminali. Dopo di ciò in una
causa per diffamazione, oppure in un caso di diritti sul copyright,
otterrà una sentenza da una corte civile per la distruzione dei
documenti in questione. Magari Scientology invierà sulle blacklist il
famoso Fishman Affidavit. La polizia segreta di un dittatore potrà
punire l'autore di un testo di un dissidente semplicemente
cancellando ogni documento esso abbia creato utilizzando quel certo
sistema - il suo nuovo libro, la sua dichiarazione dei redditi, magari
anche le cartoline di compleanno dei suoi figli - a dispetto dell'esito
giudiziario della vicenda. Nel West una corte potrebbe utilizzare la
dottrina per la confisca per 'oscurare' una macchina che sia stata
usata come deposito per una foto pornografica di un bambino. Una
volta che gli avvocati, la polizia ed i giudici si renderanno conto delle
potenzialità di questo sistema la goccia diverrebbe un fiume in piena.
L'età moderna è iniziata solo quando Gutemberg inventò la stampa a
caratteri mobili in Europa, la quale permetteva di preservare e
diffondere le informazioni nonostante i principi ed i preti volessero
bandirla. Per esempio quando Wycliffe tradusse la Bibbia in inglese
nel 1380/1, il movimento dei Lollardi, che egli iniziò, venne soppresso
facilmente; ma quando Tyndale tradusse il Nuovo Testamento nel
1524/5, egli fu in grado di stamparne circa 50.000 copie prima di
venir catturato e bruciato sulla pira. Tutto il vecchio ordinamento in
Europa collassò e l'età moderna ebbe inizio. Le società che tentano
di controllare l'informazione diventano non competitive, e con il
collasso dell'Unione Sovietica sembrò che la democrazia liberale ed
il capitalismo avessero vinto. Ma ora, TC mette a rischio l'eredità
senza prezzo che Gutemberg ci ha lasciato. I libri elettronici, una
volta pubblicati, saranno vulnerabili; la corte potrà ordinare di
eliminarli e l'infrastuttura TC farà il lavoro sporco.
L'Unione Sovietica ha tentato di registrare e controllare ogni
macchina da scrivere ed ogni fax. Allo stesso modo il TC tenta di
registrare e controllare tutti i computer. Il problema è che ogni cosa
sta diventanto informatizzata. Non abbiamo assolutamente idea
dell'ubiquità che comporterà, per ognuno di noi, questo meccanismo
di controllo dei contenuti.
12. Brutta storia. Ma non posso semplicemente disattivarlo?
Certo - a meno che il tuo amministratore di sistema abbia configurato
la macchina in modo che il TC sia vincolante - è sempre possibile
disattivarlo. E' possibile utilizzare il PC con i privilegi di
amministratore ed utilizzare applicazioni non sicure.
Comunque resta un piccolo problema. Se disabiliti il TC, il chip Fritz
non rilascerà le chiavi necessarie per decriptare i tuoi file ed
accedere al tuo conto corrente. Le tue applicazioni TC-conformi non
funzioneranno bene o per niente. Sarà come passare da da
Windows a Linux oggigiorno; puoi avere maggiore libertà, ma questo
comporta avere meno scelta. Se le applicazioni TC saranno più
attraenti per la maggior parte delle persone, o saranno più profittevoli
per i venditori di applicazioni, semplicemente non potrai utilizzarle -
esattamente come molte persone devono utilizzare Microsoft Word
semplicemente perchè tutti i loro colleghi ed amici gli spediscono
documenti in Microsoft Word. Entro il 2008 è possibile che i costi per
disattivare le funzioni TC siano semplicemente intollerabili.
Ciò ha interessanti implicazioni per la sicurezza nazionale. Ad un
TCG symposium a Berlino, ho provato a spiegarlo in questi termini:
nel 2010 il Presidente Clinton potrebbe avere due pulsanti sulla sua
scrivania - uno che spedisce missili in Cina ed un altro che spegne
tutti i computer in Cina - provate ad indovinare quale dei due
spaventa di più i Cinesi? (A questo punto un uditore impertinente ha
chiesto: 'E se ci fosse un bottone per spegnere i PC in Europa?').
Tutto ciò potrebbe essere un'esagerazione, ma lo sarebbe di poco.
Le politiche tecnologiche e le politiche del potere si sono intrecciate
dai tempi dell'impero romano ed i legislatori prudenti non possono
evitare di considerare le implicazioni strategiche del TC. Potrebbe
essere piuttosto difficile per un governo passare tutti i suoi sistemi
informatici da Windows a GNU/Linux all'apice di una crisi
internazionale.
13. Allora la politica e l'economia rivestono un ruolo importante
in questa storia?
Esattamente. I maggiori profitti nei beni informatici e nei mercati dei
servizi tendono ad andare alle aziende che possono stabilire
piattaforme e controlli di conformità per essi. In questo modo è
possibile gestire i mercati dei prodotti/servizi complementari. Un
esempio illuminante viene dalle stampanti. Da quando la Xerox N24
è apparsa nel 1996, i produttori di stampanti hanno inserito chip di
autenticazione nelle cartuccie di inchiostro, in modo che le stampanti
possano riconoscere le cartuccie di terze parti - o ricaricate - e
possono rifiutarsi di operare con esse. La questione delle cartuccie
sta provocando un conflitto tra USA ed Europa Negli Stati Uniti un
tribunale ha emanato per Lexmark un ingiunzione per prevenire la
vendita di cartuccie con chips che possano comunicare con le
stampanti Lexmark. Nel frattempo, la Commissione Europea ha
adottato una Direttiva sui rifiuti elettrici e dei dispositivi elettronici che
obbligheranno gli stati membri a disattendere, entro il 2007, le leggi
UE sul riciclaggio per le aziende che progettano prodotti con chip per
essere sicuri che non verranno riciclati.
Cio' non riguarda solo le stampanti. Alcuni venditori di cellulari
utilizzano chip incorporati per l'autenticazione che verificano se la
batteria del telefono sia originale piuttosto che compatibile. La Sony
Playstation 2 adotta un sistema simile per accertarsi che le schede di
memoria siano della casa madre piuttosto che di un concorrente a
basso prezzo. Lo stesso per la Xbox di Microsoft. Fino ad ora però
chiunque abbia voluto entrare in questa competizione sui prodotti
compatibili ha dovuto sviluppare la sua propria tecnologia hardware.
Ciò può essere economicamente fattibile per i produttori di hardware
ma troppo costoso per la maggior parte delle aziende software.
TC permettera' ai venditori di applicazioni software di portare le
strategie sulla compatibilità al cuore del contenuto. Poichè i venditori
di applicazioni controlleranno le politiche di sicurezza sui server,
potranno dettare i termini secondo cui qualunque altro software potra
cooperare con i propri. All'inizio l'innovazione sul software è stata
veloce e cruenta perchè c'erano millioni di PC sul mercato i cui dati
ed i cui formati erano comprensibili. In questo modo se ti veniva in
mente un modo intelligente di gestire le rubriche ed i contatti potevi
scrivere la tua applicazione in modo che potesse interfacciarsi con
una mezza dozzina di formati comuni nei PC, nei PDA e nei cellulari,
e potevi essere parte del business: c'erano milioni di potenziali
clienti. In futuro i proprietari di questi formati saranno tentati di
bloccare questi formati adottando il TC (sostenendo che è per 'la tua
privacy') e le terze parti non potranno accedere ad essi. Questo sarà
pessimo per l'innovazione. Ciò sarà possibile a causa del fatto che il
server per le politiche di gestione applica regole arbitrarie su come le
altre applicazioni potranno utilizzare i file che l'applicazione TC ha
creato.
In questo modo una applicazione TC di successo porterà molto più
denaro alla software house che la controlla poichè potrà affittare
l'accesso alle interfaccie che controlla per qualsiasi cosa il mercato
sia disponibile a sopportare. In questo modo la maggior parte degli
sviluppatori software produrrà applicazioni TC-conformi; e se
Windows sarà il primo sistema operativo a supportare il TC esso
otterrà un ulteriore vantaggio competitivo su GNU/Linux e sul MacOS
all'interno della comunità degli sviluppatori.
14. Aspetta un momento, la legge permette di reingegnerizzare
le interfaccie per mantenere la compatibilità. Non è cosi?
Certo, e questo è molto importante per il funzionamento dei mercati
di beni e servizi IT; dai un'occhiata a Samuelson e Scotchmer, ``Le
leggi e l'economia del Reverse Engineering'', Yale Law Journal, May
2002, 1575-1663. La legge, però, nella maggior parte dei casi ti dà il
diritto di provarci, non di avere successo. Tornando indietro a quando
la compatibilità significava una gran confusione legata al formato dei
file, si tratta di un caso reale - quando Word e Word Perfect stavano
combattendo per il dominio, ciascuno cercava di leggere i file altrui e
rendere più difficile, per il competitore, di leggere i propri. Con una
architettura come il TC il gioco è già finito prima di iniziare; senza
l'accesso alle chiavi, o senza un qualche modo di entrare nel chip,
non c'è nulla da fare.
15. Il TC può essere violato?
Le prime versioni saranno vulnerabili a chiunque abbia gli strumenti
e la pazienza di crackare l'hardware (cioè ripulire i dati sul bus tra la
cpu e il chip Fritz). In ogni caso, dalla fase 2, il chip Fritz verrà
incorporato nel processore centrale e scomparirà dalla scheda
madre - chiamiamolo, per es, `Hexium' - e le cose diventeranno
molto più difficili. Contendenti seri, ben attrezzati, saranno ancora in
grado di crackare il sistema. Comunque diventerà molto più difficile e
costoso.
Inoltre, in molti paesi, crackare Fritz sarà illegale. Negli USA il Digital
Millennium Copyright Act lo impone già, mentre nell'Unione Europea
si avrà a che fare con la EU Copyright Directive e, se passerà, la
bozza di rafforzamento della direttiva. (In alcuni paesi l'accettazione
della Direttiva sul Copyright rende già ora la ricerca sulla criptografia
tecnicamente illegale.).
Inoltre, in molti prodotti, il controllo di compatibilità viene
deliberatamente intrecciato con il controllo di copyright. Il chip per
l'autenticazione della Playstation Sony contiene anche l'algoritmo per
il DVD, così che chi reingegnerizzasse il prodotto potrebbe essere
accusato di violazione di un meccanismo di protezione del copyright
e subire le conseguenze del Digital Millennium Copyright Act. La
situazione è piuttosto confusa - e questo favorirà le aziende con ampi
budget per le spese legali.
16. Quali possono essere gli effetti sull'economia in generale?
Le industrie che producono contenuti potranno guadagnare un po'
dalla riduzione delle copie illegali - si può prevedere che Sir Michael
Jagger diventi un po' più ricco di quel che è già. L'effetto più
significativo, però, sarà nel rafforzamento della posizione di chi ha il
predominio nei mercati di beni e servizi informazionali a spese dei
nuovi entranti. Questo potrà significare una crescita nel mercato dei
capitali di imprese come Intel, Microsoft e IBM - ma a spese della
innovazione e della crescita generale. Eric von Hippel documenta
come la maggior parte dell'innovazione che alimenta la crescita
economica non è preventivata dai produttori delle piattaforme di cui
sono proprietari ed il cambiamento nei mercati di beni e servizi IT è
di solito cumulativo. Concedere a chi ha il predominio nuovi strumenti
per rendere la vita più dura per chi cerca di sviluppare nuovi utilizzi
creerà ogni tipo di trappole e di incentivi perversi.
L'immensa concentrazione di potere rappresentato dal TC favorirà le
grandi aziende rispetto alle piccole; le grandi aziende potranno
impadronirsi di una quota maggiore di entrate collaterali alle loro
attività economiche principali, così come i produttori di automobili
impongono ai proprietari di automobili di eseguire la manutenzione
solo presso i rivenditori da loro autorizzati. Poichè la maggior crescita
occupazionale avviene nell'ambito delle piccole e medie aziende
questo può avere conseguenze sul mercato del lavoro.
Ci potranno essere vari effetti a livello locale. Per esempio molti anni
di sostegno dei governi all'industria europea delle smartcard ha reso
forte questo settore industriale, anche al costo di impedire altre
tipologie di innovazione tecnologica. I principali esponenti del mondo
industriale con cui ho avuto colloqui prevedono che la seconda fase
del TC introdurrà le funzionalità del Fritz chip all'interno del
processore principale e che questo abbatterà le vendite di smartcard.
Vari insider interni alle aziende coinvolte nel progetto TC hanno
ammesso personalmente che estromettere i sistemi fondati sulle
smartcard dal mercato dell'autenticazione sicura è uno degli obiettivi.
Molte delle funzioni che le smartcard consentono ora saranno
rimpiazzate dal chip Fritz inserito nel tuo notebook, nel tuo PDA e nel
tuo telefono cellulare. Se questa industria venisse fatta fuori dal TC,
l'Europa sarebbe un perdente importante in questa competizione.
Altri settori dell'industria informatica legata alla sicurezza potrebbero
essere, inoltre, gravemente danneggiati.
17. Chi altri sarà sconfitto?
Ci saranno molte situazioni in cui gli attuali processi economici
collasseranno secondo modalità che permetteranno ai detentori del
copyright di generare nuove rendite. Per esempio, di recente ho
richiesto l'autorizzazione per destinare un terreno agricolo di mia
proprietà a giardino; per far questo ho dovuto fornire al nostro
governo locale sei copie di una mappa 1:1250 del terreno. Una volta,
chiunque poteva fotocopiare una mappa dalla biblioteca locale.
Adesso le mappe risiedono su un server della biblioteca, con un
controllo di copyright, ed è possibile ottenere un massimo di quattro
copie per ogni foglio. Per un singolo è abbastanza semplice evitare
l'inconveniente: ne compri quattro copie oggi e chiedi ad un amico di
comprartene le altre due copie domani. Ma le aziende che utilizzano
molte mappe finiranno per pagare molto denaro extra alle aziende
che gestiscono la titolarità dei diritti sulle mappe. Questo potrebbe
essere un piccolo inconveniente; prova a moltiplicarlo per migliaia di
situazioni simili ed avrai un idea dell'effetto di ciò sull'economia
generale. I trasferimenti di reddito e ricchezza andranno, ancora una
volta, dalla piccole aziende verso le grandi e dalle nuove aziende a
quelle preesistenti.
Un avvocato molto noto nel Regno Unito ha detto che la legge sul
copyright è tollerata solo perchè non viene applicata contro la vasta
maggioranza dei piccoli che la infrangono. Esistono alcuni casi
sfortunati notevoli, però. E' chiaro che le normative sul copyright
attese verso la fine dell'anno in Gran Bretagna impediranno ai non
vedenti il diritto di utilizzare il software che permette loro di leggere
gli e-book sugli schermi tattili normalmente utilizzati. Normalmente
una stupidità burocratica come questa non avrebbe grandi
conseguenze, poichè la gente semplicemente la ignorerebbe e la
politica non sarebbe cosi idiota da perseguire alcuno. Ma se la
legislazione sul copyright fosse applicata attraverso un sistema di
protezione hardware, questo sistema sarebbe praticamente
impossibile da rompere e i non vedenti potrebbero davvero venire
esclusi. (Esistono altri gruppi marginali che corrono rischi simili).
18. Accidenti. C'è dell'altro?
Si, il TC comprometterà la General Public License (GPL), che regola
la distribuzione di molti prodotti software open source. La licenza
GPL è pensata per far si che i frutti del lavoro volontario della
comunità di sviluppatori sia preservato e non venga scippato da
aziende private per motivi di lucro. Ciascuno può utilizzare e
modificare il software distribuito sotto questa licenza, ma se vuoi
distribuirne una copia modificata devi renderla disponibile a tutti,
includendo il codice sorgente, in modo che altri possano effettuare a
loro volta le loro modifiche.
IBM ed HP pare abbiano iniziato hanno iniziato a lavorare ad una
versione di GNU/linux TC-conforme. Questo significa riorganizzare il
codice e rimuovere una serie di caratteristiche dal sistema operativo.
Per ottenere la certificazione dal consorzio TCG, il proponente dovrà
sottoporre il codice reso conforme ad laboratorio di analisi, con
allegata una massa di documentazione che dimostra come mai gli
attacchi più conosciuti al codice non funzionano. (L'analisi è al livello
EA3 - sufficentemente costoso per espellere la comunità del
software libero, ma sufficentemente economico per permettere alla
maggior parte dei produttori di software commerciale per far
superare questa prova al proprio pessimo codice.) Sebbene il codice
modificato possa essere coperto dalla GPL, e quindi accessibile a
chiunque, non potrà far un completo utilizzo delle caratteristiche TC a
meno che tu abbia un certificato ad esso collegato che sia specifico
al chip Fritz montato sulla tua macchina. Che è quello che dovrà
essere acquistato (magari non all'inizio, forse).
Sarà ancora possibile effettuare modifiche sul codice modificato, ma
non sarà possibile ottenere un certificato che permetta di accedere, a
questo sistema modificato, al sistema TC. Qualcosa di simile accade
con linux versione Sony per la Playstation 2; il meccanismo di
protezione dalle copie illegali della console previene il poter lanciare
file binari modificati, e dall'utilizzare svariate caratteristiche legate
all'hardware. Ache se un filantropo producesse un GNU/linux no
profit, l'effetto non potrebbe essere una reale versione GPL del
sistema operativo TC, ma un sistema operativo proprietario che il
filantropo distribuirebbe gratis. (Ma resta la questione di chi
pagherebbe per i certificati dell'utente).
La gente ha creduto che la licenza GPL rendesse impossibile per
un'azienda di rapinare il codice che veniva prodotto della comunità
degli sviluppatori. Ciò rappresentava una rassicurazione per le
persone che destinavano il proprio tempo libero per scrivere software
che andasse a beneficio della comunità. Ma il TC cambia questo.
Una volta che la maggioranza dei PC sul mercato fossero TCabilitati, la GPL non funzionerebbe più nel senso originale. Il
beneficio per Microsoft non è che questo distruggerà il software
libero direttamente. Il punto è questo: una volta che le persone si
renderanno conto che anche il software licenziato come GPL potrà
essere piratato per scopi commerciali, i giovani, idealistici,
programmatori saranno molto meno motivati a scrivere software
libero.
19. Immagino che che parecchia gente si arrabbierà rispetto a
questo.
E' probabile, anche perchè ciò si intreccia con molte questioni
politiche - la trasparenza sulla elaborazione dei dati personali
garantita nella direttiva UE sulla protezione dei dati; le questioni sulla
sovranità di chi abbia l'autorità di regolamentare il copyright - se i
governi nazionali oppure, come ora, qualcuno a Portland o a
Redmond -; se il TC sarà usato da Microsoft come strumento per
eliminare Apache; e rispetto al fatto se la persone si troveranno a
loro agio nell'avere il loro computer telecomandato - a tutti gli effetti da remoto, un controllo di cui possono impossessarsi tribunali e
agenzie governative senza che il singolo ne venga a conoscenza.
20. Ma il TC non è illegale rispetto alla legislazione antitrust?
Negli Stati Uniti forse no. Intel ha affilato una strategia definita di
'leadership di piattaforma', in cui essi guidano gli sforzi industriali per
sviluppare tecnologie che rendano i PC più utili, come per esempio le
tecnologie a bus PCI e USB. Il loro modus operandi viene descritto in
un libro di Gawer e Cusumano. Intel avvia un consorzio per
condividere lo sviluppo della tecnologia, come membro fondatore
condivide l'utilizzo di alcuni brevetti, pubblica uno standard, aspetta
un po' in attesa che si sviluppi, dopodichè lo rilascia all'industria sotto
la condizione che i licenziatari in cambio faranno lo stesso con ogni
brevetto che interferisca con questo, ad un costo zero, per tutti i
membri del consorzio.
Il lato positivo di questa strategia è che Intel ha fatto crescere il
mercato complessivo dei PC; il lato oscuro è che essi hanno
prevenuto qualsiasi concorrente dall'acquisire una posizione
dominante in una qualsiasi tecnologia potesse minacciare il loro
predominio nell'hardware dei PC. Per esempio, Intel non può
permettere che il bus a microchannel di IBM prevalga andando a
costituire un elemento competitivo nuovo nella arena del mercato
PC, allo stesso modo IBM non ha interesse a far si che le prestazioni
di questo componente possano avvicinare i PC ai computer di fascia
alta che rappresentano il 'suo' mercato. L'effetto in termini strategici è
qualcosa di simile alla pratica degli antichi Romani di demolire tutte
le abitazioni ed abbattere tutti gli alberi lungo le strade che portavano
ai loro castelli. Nessuna struttura competitiva può essere ammessa
nelle vicinanze della piattaforma Intel; tutto deve essere portato alle
dimensioni di piccolo orto. Ma anche un piccolo orto, ordinato e
gradevole, dal punto di vista delle interfaccie può essere `aperto ma
non libero'.
L'approccio del consorzio come strategia competitiva si è evoluta
come una modalità molto efficace per competere ai margini della
normativa antitrust. In questo modo, le autorità non sembrano essere
preoccupate riguardo ai consorzi - dato che gli standard sono
disponibili a tutte le aziende. Dovrebbero iniziare ad essere un po'
più sofisticate per considerare questi giochi sottili.
Per esempio in Europa la legge esplicitamente copre i consorzi e la
normativa soggetta a restrizioni che probabilmente saranno ancora
più vincolanti in futuro. C'è stata una conferenza sul TC a Berlin,
organizzata dal Ministro tedesco per l'economia ed il lavoro, il quale
ha ascoltato le ragioni di esperti pro e anti TC. Se conosci il tedesco
c'è un analisi molto completa di analisi degli aspetti di politica
competitiva del Professore Christian Koenig; l'abstract riporta che TC
sembra violare le leggi europee sulla competizione in vari campi.
Generalmente è consentito a gruppi economici l'esenzione alla legge
sui cartelli solo se sono aperti, non discriminatori e i componenti non
collegati fra loro. Ovviamente non è il caso del TCG. E'
discriminatorio sui non appartenti, la quota di partecipazione rende
difficile alle piccole aziende di partecipare, e l'adozione di licenze a
pagamento anzichè libere è discriminatorio riguardo il free software.
Esistono inoltre molti altri aspetti rispetto al potere di mercato e ai
collegamenti fra i mercati. La UE è sul punto di scoprire la
colpevolezza di Microsoft nel cercare di estendere il proprio
monopolio dai PC ai server attraverso politiche di gestione delle
interfaccie non chiare. Se le interfacce potessero essere bloccate
attraverso un meccanismo TC, sarebbe molto peggio di come è ora.
TC può, inoltre, permettere a Microsost di estendere il suo monopolio
sui sistemi operativi alla fornitura di servizi musicali online o a
software di gestione dei telefoni cellulari.
Comunque, la legge è una cosa, l'obbligo un altro. Per la fine del
2003 la UE dovrebbe aver convinto la Microsoft dei suoi
comportamenti anti-competitivi rispetto a Netscape e alle interfacce
per i server. Il giudizio però arriverà troppo tardi per resuscitare
Netscape o per creare una competizione nel mercato dei browser.
Per la fine del 2008 la UE potrebbe aver convinto la Microsoft anche
sul TC, ma sarà il 2008. Per allora la nostra società sarà intossicata
dal TC, e non sarà più possibile prendere nessuna decisione
effettiva.
21. Quando entrerà in produzione il TC ?
Lo è già. La specifiche della versione 1.0 sono state pubblicate nel
2000. Atmel sta già vendendo un Fritz chip, ed è possibile
acquistarlo già installato nella serie di laptop IBM Thinkpad dal
Maggio 2002. Alcune delle caratteristiche presente in Windows XP e
nella X-Box sono funzionalità TC: per esempio se tu modifichi, anche
minimamente, la configurazione del tuo PC diventa necessario riregistrare tutto il tuo software con Redmond. Inoltre, a partire da
Windows 2000, Microsoft ha iniziato a certificare tutti i driver dei
dispositivi: se cerchi di caricare un driver non certificato, XP esprime
perplessità. L'Enterprise Rights Management è parte di Windows
Server 2003. Esiste inoltre un crescente interesse governativo
statunitense nella standardizzazione tecnica di questo processo. I kit
TC per gli sviluppatori ci è stato detto saranno disponibili da Ottobre
2003. Il treno è già partito.
22. Cos'è TORA BORA?
Sembra essere una battuta interna alla Microsoft: dai un'occhiata al
annuncio del Palladium. L'idea è che quella `Trusted Operating Root
Architecture' ('Architettura Operativa Affidabile di Base', il Palladium
cioè) fermerà gli attacchi di tipo `Break Once Run Anywhere' ('Copia
Una volta Eseguilo Ovunque'), che significa che il contenuto piratato,
una volta sprotetto, può essere pubblicato sulla rete ed utilizzato da
chiunque.
Sembrano essersi accorti che questa battuta potrebbe venir
considerata come uno scherzo di pessimo gusto. Ad una conferenza
cui ho partecipato il 10 Luglio 2002 presso il Centro Ricerche
Microsoft, lo slogan è stato modificato in `BORE-resistance'
('resistenza-BORE'), dove BORE sta per `Break Once Run
Everywhere' ('Copia Una volta Eseguila Dappertutto'). (Per inciso, lo
speaker ha definito la protezione del copyright attraverso il
watermarking come 'monitoraggio dei contenuti', un termine utilizzato
per impedire ai minori di accedere alla pornografia: la macchina delle
Pubbliche Relazioni non sapeva davvero quali argomenti utilizzare!
Ci è stato detto anche che non avrebbe funzionato a meno di
utilizzare un sistema operativo 'affidabile'. Quando gli ho chiesto se
questo significava far fuori Linux la risposta è stata che gli utenti
Linux dovranno utilizzare il 'monitoraggio dei contenuti'.)
23. Ma la sicurezza dei PC non è una buona cosa?
La domanda è: sicurezza per chi? Tu preferiresti non doverti
preoccupare dei virus, ma neppure il TC li fermerà: i virus sfruttano il
modo in cui le applicazioni software (come per esempio Microsoft
Office e Outlook) utilizzano lo scripting. Potresti essere insofferente
rispetto allo spamming, ma non sarà possibile eliminare neppure
questo. Anche se sei fra coloro che non sopportano lo spamming,
questo sistema non potrà eliminare neppure ciò. (Microsoft rivendica
che lo spam sarà fermato filtrando tutti i messaggi non firmati - ma è
gia ora possibile configurare i client di posta per escludere i
messaggi da gente che non si conosce per inserirli in una cartella cui
si può velocemente dare un'occhiata una volta al giorno). Neppure
se sei fra coloro preoccupati per la tua privacy il TC potrà servire a
garantirla: la maggior parte delle violazioni della privacy derivano
dall'abuso di accesso autorizzato ed il TC aumenterà gli incentivi per
le aziende che vogliono collezionare dati personali su di te.
L'assicurazione sanitaria può richiedere che tu autorizzi che i tuoi
dati vengano condivisi con il tuo datore di lavoro e che essi possano
venderli a chichessia. Tutto ciò non si fermerà solo perchè i PC
saranno ufficialmente 'sicuri'. Al contrario sarà possibile che questi
fatti avvengano ancor di più proprio a causa del fatto che i computer
saranno ufficialmente 'sicuri'. Gli economisti chiamano tutto ciò una
'trappola sociale'. Rendere qualcosa appena un po' meno pericoloso,
o far sembrare che lo sia, spesso incita le persone ad usarlo peggio,
o con meno attenzione, in modo che il pericolo collettivo aumenta.
L'esempio classico è che i guidatori di Volvo hanno più incidenti.
Un modo caritatevole di guardare al TC è stato promosso da Roger
Needham che ha diretto la ricerca Microsoft in Europa: esistono
alcune applicazioni in cui si desidera limitare le azioni dell'utente. Per
esempio si potrebbe voler impedire alla gente di intervenire sul
contachilometri prima di vendere l'auto. Nello stesso modo, se vuoi
gestire i DRM su un PC allora devi considerare l'utente come un
nemico.
Visto in questi termini il TC non fornisce la stessa sicurezza all'utente
e al venditore di PC, al fornitore di software e all'industria dei
contenuti. Non aggiunge valore per l'utente, anzi lo distrugge. Si
limita ciò che si può fare sul proprio PC per poter disporre di
applicazioni e servizi che estraggono più denaro all'utente. Questa è
la definizione classica di cartello monopolistico un accordo
industriale che modifica i termini del commercio per diminuire il
surplus per il consumatore.
24. Ma allora perchè viene chiamato 'Trusted Computing'
(Informatica affidabile, degna di fiducia' ? Non c'è nessun
motivo per fidarsene!
E' più che altro una barzelletta ad uso interno. Per il Dipartimento
della Difesa USA, infatti, un `sistema o componente affidabile' viene
definito come `un sistema in grado di rompere le politiche di
sicurezza'. Potrebbe sembrare contradditorio, ma fermati un attimo a
pensare. Il sistema di protezione della posta, o il firewall, si pongono
fra un sistema di segretezza ed un altro di sistema di segretezza
ancora maggiore (Top Secret) - se fallisce - significa che quel
messaggio dovrà passare esclusivamente verso il livello Top Secret
ma, mai, nella direzione inversa. E' per questo che viene definito
affidabile: per rafforzare il flusso delle politiche di gestione dei flussi
di informazioni.
Prendiamo un esempio dalla vita quotidiana, non un caso militare:
supponiamo che ti fidi del tuo medico riguardo al fatto che mantenga
riservate le tue analisi. Questo significa che egli ha accesso ad esse,
in modo che potrebbe divulgarli alla stampa se fosse in malafede. Tu
non ti fidi di me per la conservazione delle tue analisi; ma sia che io
ti voglia bene o sia malintenzionato nei tuoi confronti, non posso fare
proprio nulla per influenzare la tua politica secondo cui i dati delle tue
analisi devono restare confidenziali. Il tuo medico, però, può; ed il
fatto che egli si trovi in una posizione che potrebbe ferirti è
esattamente quello che si intende (a livello di sistema) quando dici
che ti fidi di lui. Puoi provare molta simpatia per lui, oppure ti fidi solo
perchè è l'unico medico dell'isola dove vivi; non cambia la situazione,
il Dipartimento delle Difesa USA semplicemente elimina questi
aspetti, confusi ed emotivi, dalla definizione di 'fiducia' (e questo può
confondere la gente).
Durante la fine degli anni 1990, durante un dibattito sul controllo da
parte dei governi della crittografia, Al Gore propose una `Terza Parte
Affidabile' - un servizio che avrebbe tenuto al sicuro una copia della
tua chiave per la decriptazione, in caso che tu (oppure l'FBI, o la
NSA) ne avreste avuto bisogno. Il nome è stato deciso con lo stesso
esercizio di marketing che vedeva la colonia russa dell'Est della
Germania chiamarsi 'Repubblica Democratica'. Ma, in realtà, suona
allineato con la filosofia del Dipartimento della Difesa. Una Terza
Parte Affidabile è qualcuno in grado di rompere la tua politica di
sicurezza.
25. Allora un 'Trusted Computer' è un computer che può violare
la mia sicurezza?
Questo è un modo molto gentile per dire come stanno le cose.
Ross
Anderson
Traduzione italiana:Mauro Sandrini
Approfondimenti ulteriori in ordine cronologico approssimativo a
partire dal luglio 2002
•
Questo è un link alla prima versione di questa FAQ, versione
0.2 (in inglese) , e un link alla versione 1.0 (in italiano), che è
stata online dal Luglio 2002 fino all'Agosto 2003.
•
Prima diffusione delle notizie sul TCPA a partire dalla fine del
2002, sono passati articoli su ZDNet, sulla BBC,
Internetnews, PBS, O'Reilly, Linux Journal, Salon.com, e
Extremetech.
Questi sono i commenti in un seminario ad Harvard di Larry
Lessig sulla questione. Ci sono una storia riportata da un ex
dipendente di Microsoft su come è avvenuto il lancio di
Palladium, un paio di blog (qui e qui) di Seth Schoen su un
incontro riguardo a Palladium tra MS e EFF. L'Unione
Europea ha iniziato a prendere nota, ed il rumore che
abbiamo fatto ha cominciato a preoccupare analisti del
mercato di PC in Australia. C'è stato un intervento del
CyberZar di Bush, Mr. Richard Clark in favore del TCPA (p.
12); alla stessa conferenza il CEO di Intel Craig Barrett ha
affermato che il governo dovrebbe lasciare gestire i DRM
all'industria piuttosto che imporre una soluzione (p. 58).
Questo potrebbe spiegare almeno in parte questa storia
riguardo a Intel che si opponeva alla proposta Hollings,
mentre contemporaneamente promuoveva il TCPA. C'è
anche un'email di Bill.
•
Molte questioni relative al TC sono già state anticipate da
Richard Stallman nel suo famoso articolo Il diritto di leggere.
•
L'inventore del TC, Bill Arbaugh, ha avuto qualche
ripensamento ed ha effettuato alcune proposte su come il TC
potrebbe essere modificato per mitigare i suoi effetti peggiori,
per esempio concedendo agli utenti di caricare i propri
certificati sicuri oppure di poter spegnere completamente gli
effetti del chip Fritz.
•
Lucky Green è stato uno dei primi TC insider, che in seguito
si è un po' pentito. Le slide del suo intervento a Def Con
sono disponibili sul suo sito.
•
In questo scambio avvenuto sulla lista dei criptografi, Peter
Biddle, direttore tecnico di TC per Microsoft, spiega alcune
delle modifiche avvenute tra le versioni 1.0 ed 1.2.
(Riassumendo in breve: nel TC 1.0, una macchina che
stesse eseguendo un processo 'trusted' ed iniziasse un
processo 'untrusted' avrebbe terminato il processo 'trusted' e
ripulito la memoria. Ciò avrebbe reso il TC inutilizzabile in
pratica per il modo con cui è implementata oggi la gestione
dei processi. E' stato necessario quindi espandere le
specifiche e far si che Intel portasse il processo 'trusted'
all'interno di una memoria separata in modo che applicazioni
'trusted'
ed
'untrusted'
possano
venire
eseguite
contemporaneamente sullo stesso PC.
•
Un post da parte di John Gilmore alla lista cypherpunks, ed
ulteriori commenti di Adam Back, Seth Schoen ed altri.
•
Un commento di Bruce Schneier; alcune polemiche iniziate
da Bill Thompson, che sembra davvero credere che il mondo
del trusted computing sarà davvero libero da virus e da spam
oltre che permettere agli utenti la possibilità di esercitare i
propri diritti. Ma anche alcune reazioni ...
•
Microsoft ha rilasciato una FAQ su Palladium nell'Agosto
2002 in cui si rimangiava le precedenti dichiarazioni sul fatto
che sarebbero stati fermati spam e virus.
•
Nel Settembre 2002, Intel ha annunciato LaGrande. Questo
chip sarà il successore del Pentium 4 e supporterà la
'memoria separata' necessaria per le versioni di TC dalla 1.2
in poi. E' stato annunciato E' stato chiamato come una città
nell'Est dell'Oregon. Le reazioni iniziali sono state ostili. I
gruppi per le libertà civili hanno iniziato a muoversi qui è
apparsa una pagina web di EPIC, per esempio.
•
In Ottobre 2002 c'è stato un articolo su Linux devices
riguardo i problemi che il TCPA potrebbe causare ai sistemi
embedded, ed un articolo su una rivista tecnica tedesca. Ma
l'evento più importante del mese è stata la denuncia del TC
da parte di Richard Stallman. Due traduzioni in francese, qui
e qui. La Francia sta iniziando a porre attenzione al
problema. Anche una traduzione italiana qui
•
Il 7 di Novembre c'è stato un dibattito pubblico sul TCPA tra i
sostenitori (Microsoft, HP, Infineon) ed i ragazzacci (Alan Cox
and me). C'è stata una copertura TV (attualmente non più
presente sul sito web di Channel 4), ed un dibattito più breve
a Cambridge il giorno seguente ad uno dei nostri incontri del
security group.
•
In Novembre, TC ha iniziato il suo percorso verso la
fantascienza - nell'ultima storia breve di Cory Doctorow.
•
L'interesse Francese ha continuato a crescere nel gennaio
2003, con questo articolo su Le Monde.
•
L'evento principale in Gennaio, comunque, è stata la
proposta TC di Microsoft's, di rinominare Palladium. La prima
regola dei comunicatori, quando hanno un problema fra le
mani, è di cambiargli nome! Cosi Palladium è attualmente
conosciuto come NGSCB - che sta per `Next Generation
Secure Computing Base'.
•
Nel Febbraio 2003, Microsoft ha annunciato che avrebbe
rilasciato molte caratteristiche TC all'interno di Windows
2003 Server nel corso dell'anno, includendo i meccanismi di
Rights Management un sistema per cui un'email può
evaporare sulla macchina del destinatario dopo 30 giorni.
Sono sistemi ancora a livello software, e quindi possono
essere eliminati con patch software (sebbene questo sia
illegale negli USA). Comunque è iniziato il processo di
introduzione sul mercato delle funzionalità di lock-in in attesa
delle funzionalità TC integrali. Commenti a ciò si trovano su
Geek News, VNUnet e Zdnet.
•
In Aprile, i rinomati crittografi Whit Diffie e Ron Rivest hanno
denunciato il TC alla conferenza RSA.
•
In Maggio, il TCPA è stato rilanciato come TCG (il Trusted
Computing Group, annunciando che esso stava lavorando
sulla versione 1.2 del chip Fritz, prevedendo i primi sistemi in
commercio alla fine del 2004 o all'inizio del 2005 e che
l'ambito di applicazione del TC si sarebbe esteso dai PC ai
PDA ed ai telefoni cellulari. La storia è riportata da EE Times,
con le puntate the seguenti; puoi anche leggere di come Il
Presidente Bill è rimasto sbalordito alla Windows Hardware
Engineering Conference quando NGSCB è stato finalmente
svelato.
•
Nel Luglio 2003, Il Times ha riportato vari abusi da parte dei
fabbricanti di stampanti, tra cui impostazioni relative alle
cartuccie per il toner per mostrare 'empty' (vuoto) quando
solo due terzi dell'inchiostro fosse stato consumato. Questo
tipo di business model diverrà pervasivo in tutto il mondo
dell'informatica se il TC avrà successo. Inoltre i dispositivi
che sarebbe possibile utilizzare per sbloccare questo
meccanismo della stampante sarà fuorilegge in Europa a
causa della proposta di rafforzamento della direttiva sugli
IPR - e delle possibilità tecniche fornite dal TC per minare la
concorrenza e sfruttare i consumatori.
•
Sempre in Luglio,Bill Gates ha ammesso sul New York
Times che Microsoft entrerà nel mercato della sicurezza in
modo piuttosto aggressivo: "Si tratta di un'area in crescita e
non abbiamo intenzione di nascondere le nostre intenzioni".
Ha confermato che la scommessa più grande per la sua
azienda è la prossima versione di Windows - il nome in
codice è Longhorn - in altre parole, la tecnologia conosciuta
dapprima nota come Palladium ed ora come NGSCB. Uomo
avvisato mezzo salvato.
Ho riferito in pubblico sul TC il 2 di Luglio a Berlino al "Trusted
Computing Group" Symposium; dopodichè a Bruxelles l'8 di Luglio
ad un evento organizzato da DG Infosoc, e il 14 Luglio al PODC. Ne
parlerò anche al Helsinki IPR workshop in Agosto. Sono certo ci
saranno molte altre occasioni. Nel frattempo una versione del mio
studio economico sul TC è apparso su un numero speciale di
Upgrade ed affronta temi legati alla proprieta intellettuale (IP) e
questioni informatiche correlate (Giugno 2003). Una versione più
estesa del paper affronta in dettaglio molti dei temi qui affrontati su
questioni legate alle politiche della concorrenza.
Ross
Cambridge, England, August 2003
Anderson
Acuni portavoce di Microsoft sono piuttosto convinti dell'importanza
del TC per i DRM; altri sono più scettici. (Altre informazioni sulle
ragioni di Microsoft seguiranno in futuro.)
Appendice R: Il Punto di Vista di EFF (Seth Schoen)
Riportiamo qui di seguito la versione italiana dell'articolo “Trusted
Computing: Promise and Risk” di Seth Schoen. Questo articolo è
reperibile su Internet a questi indirizzi:
http://www.eff.org/Infrastructure/trusted_computing/20031001_tc.php
(originale inglese)
http://www.no1984.org/Trusted_Computing%3a_Promesse_e_rischi
(versione italiana a cura di www.no1984.org )
http://www.p2pforum.it/forum/showthread.php?t=63809
italiana a cura di www.p2pforum.it )
(versione
Non è stato possibile stabilire con certezza quale fosse il tipo di
licenza applicabile a questo documento anche se, trattandosi di un
documento pubblicato da EFF, dovrebbe essere plausibile una
licenza GFDL o Creative Commons di tipo molto liberale. Di
conseguenza l'autore e gli editori di questo libro rimangono a
disposizione degli aventi diritto per provvedere ad eventuali rimozioni
o modifiche secondo i loro desideri.
Introduzione:
La sicurezza dei computer è innegabilmente importante, e
come vengono scoperte e sfruttate nuove vulnerabilità, cresce
il bisogno percepito di nuove soluzioni per la sicurezza. Le
iniziative del "trusted computing" (informatica fidata) si
propongono di risolvere alcuni degli odierni problemi di
sicurezza mediante dei cambiamenti a livello hardware nei
personal
computer.
Cambiare
lo
hardware
non
è
intrinsecamente sospetto, ma i propositi principali del trusted
computing hanno un costo elevato: forniscono la sicurezza
agli utenti mentre danno a terze parti il potere di rafforzare le
politiche sui computer degli utenti contro i desideri degli
utenti -- lasciano che altri facciano pressione su di voi perché
cediate un po' del controllo sul vostro PC a qualcun altro.
Questa è una "caratteristica" confezionata per l'abuso degli
autori di software che vogliono soffocare in modo anticompetitivo il software rivale.
Non dovrebbe andare in questo modo: un semplice cambio di
piani per i venditori del trusted computing potrebbe lasciare
intatti i benefici per la sicurezza ed assicurare che la volontà
del proprietario di un PC vinca sempre sui desideri di coloro
che hanno caricato del software o dei dati nel PC.
Riprogettare lo hardware dei Pc per la sicurezza
C'è la percezione diffusa che la sicurezza dei personal
computer sia in una situazione disperata, e che in qualche
modo vi si debba porre rimedio. Ci sono degli approcci
promettenti volti all'incremento della sicurezza: migliorare
l'architettura dei sistemi operativi, cambiare le metodologie di
programmazione, oppure modificare lo stesso hardware. E'
oramai comunemente accettato che una buona difesa contro
le minacce alla sicurezza degli utenti PC dovra' coinvolgere
molti approcci diversi, non uno soltanto. E' impossibile che
un'infrastruttura insicura diventi magicamente "sicura"
soltanto aggiungendo una nuova tecnologia.
La modifica dell'architettura hardware dei PC è uno dei tanti
utili strumenti per migliorare la sicurezza. Anche se non un
prerequisito fondamentale, è però innegabilmente un aiuto
importante; ad esempio, fornendo un modo sicuro per
immagazzinare le chiavi private (e di conseguenza i documenti
protetti con tali chiavi). Un gruppo di progetti che ha lo scopo
di incrementare la sicurezza attraverso modifiche allo
hardware è noto come "trusted computing" (informatica
fidata). Questo termine generico include un mix di singole
iniziative portate avanti da produttori di CPU e da aziende
OEM, insieme a due progetti piu' grandi e ben conosciuti.
Il primo di questi e' un progetto di Microsoft per un nuovo
sistema operativo - originariamente noto come Palladium -
chiamato Next-Generation Secure Computing Base, o NGSCB
(base informatica sicura di nuova generazione). Il progetto
NGCSB prevede modifiche al software che sfruttino i
miglioramenti in termini di sicurezza resi disponibili dalla
futura tecnologia hardware dei PC. L'altro e' un progetto di
specifiche hardware, condotto da un consorzio il cui nome
originale era "Trusted Computing Platform Alliance" (TCPA Alleanza per una piattaforma informatica fidata). Il TCPA ha
pubblicato molti documenti sulle specifiche da adottare, poi
ha cambiato il proprio nome in TCG, Trusted Computing
Group.
Questi due progetti hanno coniato una lista impressionante di
nuovi termini, incluso un intero gruppo di nuovi acronimi. In
parecchi casi, uno dei due progetti ha inventato molti termini
differenti per riferirsi ad un unico concetto, anche se l'altro
adottava una terminologia completamente diversa. Un
glossario ragionevolmente completo per questi 2 progetti
potrebbe richiedere decine di pagine. Nell'interesse della
semplicità, notiamo che I requisiti dell'NGCSB e le funzionalità
che lo hardware progettato dal TCG offre stanno convergendo.
(Microsoft è un membro del TCG, ed ha espresso interesse
riguardo al possibile utilizzo dell'infrastruttura offerta da TCG
come requisito hardware per il proprio NGCSB) Alcune aziende
OEM hanno iniziato ad includere I primi chip TCG nelle schede
madri dei propri computer. In futuro, molti produttori di
componenti potrebbero includere le prossime versioni dei
circuiti TCG nei loro prodotti. Il software NGCSB sarebbe solo
uno della miriade di applicazioni che potrebbero trarre
vantaggio dalle caratteristiche di questi chip.
Anche se a tutt'oggi questi due progetti sono ancora distinti, è
ragionevole parlare di un'unica architettura di trusted
computing, verso la quale entrambi I progetti stanno
procedendo. (Soltanto una porzione di quest'architettura viene
descritta nelle specifiche del TCG più recenti, e, come nota lo
stesso TCG, saranno necessari altri e nuovi software per
utilizzare molte delle funzionalità offerte). Altri progetti di
trusted computing meno conosciuti sono in fase di sviluppo
da parte di intel e AMD (anch'essi membri del TCG), i due
maggiori produttori di CPU al mondo. Questi progetti
potrebbero colmare alcuni dei gap presenti fra le specifiche
TCG e le necessità dell'NGCSB. Ad esempio, la "Tecnologia
LaGrande" (LT) di Intel e la "Modalità di Esecuzione Sicura"
(SEM) di AMD forniscono il supporto hardware a tutte le
maggiori funzionalità presenti in NGCSB. I progetti di Intel e
AMD sono trattati qui come entità separate, ma le loro
caratteristiche si sovrapporrebbero alle specifiche TCG per
fornire il supporto hardware richiesto dall'NGCSB.
Una somiglianza importante fra la struttura di NGSCB e le
specifiche del TCG esistenti è che entrambe contengono la
funzionalità di "attestazione remota", che analizzeremo
estesamente in seguito. Anche se sussistono differenze fra la
descrizione di Microsoft e quella del TCG dell'attestazione
remota, tutte e due, se supportate correttamente dal sistema
operativo, possono essere impiegate per lo stesso compito in
modo equivalente. Che i progetti NGSCB e TCG convergano o
meno
su
un'unica
architettura
hardware,
l'analisi
dell'attestazione remota è interamente applicabile ad
entrambi.
Stiamo descrivendo un progetto ancora in fase di lavorazione,
ma è fondamentale cominciare subito a comprendere i
cambiamenti proposti per i futuri computer e gli effetti che tali
cambiamenti avranno sul nostro modo di usarli. In senso
generale,
l'architettura
trusted
computing
è
un'implementazione fuorviata di un'ottima idea, ed offrirebbe
agli utenti vantaggi e svantaggi.
Nell'interpretazione di Microsoft dell'architettura trusted
computing, le modifiche previste sono suddivise in quattro
gruppi, ognuno dei quali ha bisogno di aggiornamenti
hardware ai PC odierni. I gruppi sono:
1. Memory curtaining (Oscuramento della memoria)
2.
Input
ed
Output
sicuri
3. Sealed storage (dispositivi di memorizzazione digitalmente
controllati)
4. Attestazione remota
Ognuna di queste funzionalità ha un diverso fondamento in
termini di sicurezza, anche se esse possono essere utilizzate
congiuntamente.
Memory curtaining
Il memory curtaining è una potente funzionalità di isolamento
della memoria, imposta via hardware, che impedisce ai
programmi di leggere e scrivere negli spazi di memoria degli
altri programmi in esecuzione. Oggigiorno è spesso possibile
per un intruso, sia esso un utente malintenzionato o un
malware, leggere o alterare dati importanti nella memoria di
un PC. Nelle idee del progetto trusted computing, neanche il
sistema operativo dovrebbe avere accesso alla memoria
protetta, così che anche nel caso in cui qualcuno riuscisse ad
ottenere il controllo del sistema operativo, non potrebbe
comunque interferire con la memoria protetta dei programmi
in esecuzione.
Anche se l'isolamento della memoria può essere ottenuto via
software, questo metodo richiede che siano riscritti sistemi
operativi, driver per le periferiche e perfino le applicazioni.
Invece, implementare questa funzione direttamente nello
hardware permette un grado di compatibilità superiore con il
software esistente e riduce la quantità di programmi che
devono essere riscritti. (In generale, molti dei benefici del
trusted computing potrebbero essere ugualmente ottenuti
riscrivendo i programmi, ma alcuni giudicano questa via
impraticabile.)
I/O Sicuro
L'input e output sicuri (o I/O sicuro) hanno lo scopo di
combattere le minacce rappresentate dai keylogger e dagli
screen-grabbers, che sono spesso usati per spiare le attività
degli utenti. Un keylogger può registrare ogni singolo tasto
premuto dall'utente, mentre uno screen-grabber può
registrare qualunque schermata appaia sul monitor. L'I/O
sicuro fornisce un percorso sicuro ai dati che va dalla tastiera
all'applicazione, e dall'applicazione allo schermo. Nessun altro
software in esecuzione sullo stesso PC è in grado di stabilire
quali tasti sono stati premuti, o quale sia stata la conseguente
reazione del programma destinatario. (Nello stesso tempo,
l'I/O sicuro potrà fornire protezione da altri -più "esoterici"attacchi, permettendo ai programmi di determinare se l'input
ricevuto proviene da un utente fisicamente presente davanti al
PC o da un software che sta impersonando l'utente. O ancora,
potrà impedire i tentativi di alcuni programmi che mascherano
o corrompono l'output di un'applicazione per ingannare
l'utente.)
Attestazione remota
L'attestazione remota è il più significativo e il più
rivoluzionaria dei quattro gruppi di caratteristiche descritti
dalla Microsoft. A grandi linee, mira a permettere di rilevare
cambiamenti "non autorizzati" al software. Se chi sferra un
attacco ha rimpiazzato una delle vostre applicazioni, o una
parte del vostro sistema operativo, con una versione alterata,
potresti essere in grado di dirlo. Poiché l'attestazione è
"remota", anche altri con cui interagisci dovrebbero essere in
grado di dirtelo. Così, possono evitare di spedire dati sensibili
ad un sistema compromesso. Se il tuo computer dovesse
essere violato, altri computer potrebbero astenersi dallo
spedire informazioni private, almeno finché non venga
ripristinato.
Mentre l'attestazione remota è ovviamente utile, l'attuale
approccio del TCG all'attestazione è bacato. L'attestazione
TCG fallisce miseramente nel distinguere tra applicazioni che
proteggono i proprietari di computer dagli attacchi e
applicazioni che proteggono i computer dai loro proprietari. In
effetti, il proprietario del computer, qualche volta, è trattato
proprio come un altro attaccante o avversario cui deve essere
impedito di accedere e alterare il software del computer.
L'attestazione remota funziona generando, a livello hardware,
un certificato crittografico di attestazione sull'identità del
software attualmente in funzione su un PC. (Non c'è
determinazione se il software sia buono o cattivo, o se sia
compromesso o non compromesso. La "identità" è
rappresentata da un codice crittografico, che permette
semplicemente a programmi diversi di essere distinti l'uno
dall'altro, o di discernere i cambiamenti nel loro codice, senza
trasmettere alcun tipo di giudizio sul valore.) Questo
certificato potrebbe, su richiesta dell'utente del PC, essere
fornito a qualunque parte remota, e in principio ha l'effetto di
provare a quella parte che la macchina sta usando del software
previsto e inalterato. Se il software sulla macchina è stato
alterato, il certificato generato lo rifletterà. Vedremo che
quest'approccio, sebbene elegante, si rivela problematico.
Come il trusted computing influisce sul PC
Ognuno di questi quattro gruppi configurativi è probabile che
sia utile per la sicurezza del computer, perchè ognuno può
essere usato da software appropriati per prevenire o mitigare
attacchi effettivi al momento contro i PC. Così, un PC con un
supporto hardware configurato in questo modo può fornire
garanzie di sicurezza tali che sarebbe difficile mantenere con
un supporto hardware non configurato per il trusted
computing. Certo, le falle presenti nei software permetteranno
ancora altri attacchi, includendo la rivelazione delle
informazioni private del client. La tecnologia trusted
compunting non può impedire del tutto le falle della sicurezza
del computer. In generale, si cerca di contenere e limitare il
danno che può derivare da una falla particolare. Per esempio,
non potrà essere possibile per una falla di programmazione in
un'applicazione (come un web browser) violarlo per copiarne o
alterarne i dati da una differente applicazione (come un word
processor). Questa sorta di approccio d'isolamento e
contenimento è un'importante campo di ricerca nell'ambito
della sicurezza sul computer ed è usato in molti differenti
approcci sulla sicurezza del computer, incluse promettenti
tecniche esterne al trusted computing.
Le configurazioni del trusted computing sono già descritte e
verranno aggiunte nuove risorse al PC. Di solito, lo hardware
deve essere supportato dal software; in assenza di driver per
trusted computing, il PC che adotta questo tipo di tecnologia
diventa un PC ordinario che riesce, comunque, a far
funzionare tutti i software per PC esistenti. Inoltre,
l'architettura del trusted computing è ideata per essere retrocompatibile nelle abilità di supporto per far funzionare i
sistemi operativi e le applicazioni software esistenti. Anche
Microsoft prevede che le future versioni di Microsoft Windows
(i quali possono includere i software NGSCB) potranno essere
retro-compatibili, ad oggi possono funzionare tutte le
applicazioni DOS e Windows. In aggiunta, I nuovi PC possono
funzionare con le nuove applicazioni trusted-computinginformative che portano vantaggi ai nuovi futuri hardware.
Equivoci sul TC
Ci sono molte idee sbagliate su questa architettura. L'errore
più comune stà nel pensare che i PC dotati del sistema TC non
siano realmente retro-compatibili con lo hardware o in grado
di far girare software esistente. Anche se è sicuramente
possibile per i costruttori fabbricare PC che non siano retrocompatibili o che non possano eseguire un particolare codice,
niente nelle specifiche del TCG insiste su questo. Ancora più
importante è che nel modello di sicurezza dell'architettura TC
non è previsto che non sia permessa l'esecuzione di software
non sicuro, dannoso, o non desiderato. Questo modello di
sicurezza invece è concentrato sull'isolamento del software -cioè sul prevenire che i programmi in esecuzione
interferiscano l'uno con l'altro.
Quando
i
programi
sono
adeguatamente
protetti
dall'interferenza di altri programmi, non c'è bisogno che venga
prevenuta l'esecuzione di altri. Come per i SO multi-utente
che danno all'utente la possibilità di eseguire il software che
preferisce e contemporaneamente proteggono gli altri utenti
dagli effetti di quel software, NGSCB potrebe permettere agli
utenti di eseguire i programmi che vogliono proteggendo gli
altri programmi dai loro effetti. Soltanto un modello di
sicurezza veramente rozzo avrebbe bisogno di proibire
completamente l'esecuzione su un computer di software
considerato "cattivo", e il modello NGSCB non è così rozzo.
Inoltre, un approccio di questo tipo dovrebbe avere delle
indicazioni precise per determinare quale software è "cattivo",
e avere definizioni per ogni software sarebbe un'impresa
veramente ardua. (Qualche SO proprietario indica come
"cattivo" tutto quel software senza una firma digitale di
un'autorità ufficiale, ma gli utenti si opporrebbero
giustamente ad un approccio così restrittivo in ambito di PC.
Pretendono, com'è giusto che sia, di poter scrivere e usare il
loro software senza bisogno dell'approvazione di una qualche
autorità .
Nessun hardware richiesto da NGSCB sembra essere specifico
per Microsoft Windows. L'architettura dello hardware
TCG/TCPA non è specifica per un particolare SO. I ricercatori
IBM hanno recentemente pubblicato software sotto licenza
GNU/GPL che faccia lavorare un chip TCPA/TPM con il kernel
Linux. Questo software è utilizzabile oggi per incrementare la
sicurezza delle memorie a chiave cifrata nei sistemi Linux che
girano su macchine con hardware che supporta il TCPA.
Nè il TCG nè il TCPA proibirebbero volontariamente ai loro
utenti di usare un particolare SO, programma o file.
Dov'è il problema?
È chiaro che lo hardware TC fornisce dei benefici alla sicurezza
del PC, sempre che il software sia predisposto per usufruirne.
Ma la tecnologia TC è stata accolta con scetticismo e rimane
una questione controversa. Alcune delle controversie sono
nate da degli equivoci, ma molte invece hanno un fondamento
logico, visto che fondamentalmente i sistemi TC alterano le
relazioni di fiducia. Le preoccupazioni legittime sul TC non
sono limitate soltanto a una sola area, come la privacy
dell'utente oppure la tutela del copyright.
Noi abbiamo almeno due serie preoccupazioni riguardo al TC.
Prima di tutto, i progetti esistenti sono sbagliati alla base
perché espongono i consumatori al rischio che nascano nuove
tecniche per impedire la concorrenza e per limitare le
possibilità dell'utente. In secondo luogo, i costruttori di
computer o di componenti hardware "fidati" potrebbero
implementare queste tecniche a nostra insaputa. Ora
analizzeremo il primo di questi problemi in modo più
approfondito.
Problema: La mancanza di certificazione delle applicazioni
di terze parti riguardo l'ambiente software è una
caratteristica normale, non un difetto
Anche se lo hardware è implementato secondo specifiche
pubbliche, tuttavia potrebbe essere usato in modo da
danneggiare il proprietario del computer. (Lucky Green, Ross
Anderson)
Anche se le architetture del "trusted computing" forniscono
dei benefici riguardo la sicurezza, questi potrebbero includere
delle caratteristiche che potrebbero essere abusate, a
discapito del consumatore a cui è stato chiesto di adottare
questa tecnologia. A capo di queste caratteristiche c'è la
"remote attestation", che Microsoft descrive come "un nuovo
terreno di rottura nel "distributed computing"" poiché non è
presente,
nei
computer
odierni,
una
caratteristica
paragonabile a questa.
Il design di sicurezza include necessariamente la
specificazione di un modello di minaccia: che tipo di attacchi e
di attaccanti ha intenzione di prevenire una misura di
sicurezza? Una misura di sicurezza che previene un attacco
potrebbe essere completamente inefficace contro un diverso
tipo di attacco; al contrario, una misura di sicurezza richiesta
per alcuni scopi può risultare inutile, nel migliore dei casi, per
quelli che non condividono quell'obbiettivo. La nostra
preoccupazione fondamentale è che il sistema del "trusted
computing" sia deliberatamente destinata a supportare i
modelli di minaccia in cui i proprietari di un computer
"trusted" sono considerati la minaccia. Questi modelli sono
l'eccezione, piuttosto che la regola, nella storia della sicurezza
informatica e delle comunicazioni e non sono parte delle basi
logiche per il "trusted computing" pubblicamente offerto dai
suoi fautori.
L'attestazione è adatta per prevenire che il software installato
su un computer sia modificato (per esempio, da un virus)
senza che il proprietario del computer ne sia a conoscenza.
Sfortunatamente, il modello di attestazione nel disegno del
TGS impedisce che il software installato sul computer sia
deliberatamente cambiato dal proprietario, senza la sua
conoscenza approfondita e acconsenziente. Mentre l'utente è
sempre libero di modificare il software, l'attestazione
aggiunge un nuovo rischio: la modifica potrebbe eliminare la
possibilità dei computer di interagire con altri computer?
Poiché le terze parti non hanno, correntemente, un metodo
certo per dire quale software l'utente sta utilizzando, essi non
hanno un motivo per costringere l'utilizzo del software
presente sulla loro macchina. Questo aspetto dello status quo
è quasi sempre un beneficio per il proprietario del computer
-- in termini di concorrenza, scelta del software,
interoperabilità del software e possibilità dei proprietari di
controllare i loro computer -- e quindi nessun schema di
attestazione che cambi questa situazione porta questi benefici
ai consumatori.
Esempi di abusi della "remote attestation"
Consideriamo alcuni esempi concreti di come il metodo
dell'attestazione del TCG può nuocere all'interoperabilità o
essere usato contro i proprietari del computer.
Sul Web
Un sito web può richiedere un'attestazione software alle
persone desiderose di accedervi. Se loro si rifiutassero di
fornire questa attestazione, il sito si rifiuterebbe di interagire
con loro in modo completo; se l'attestazione mostra che viene
utilizzato un software non approvato, il sito potrebbe inoltre
rifiutarsi completamente di interagire con loro. Solo a chi può
creare un certificato digitale, capace di provare che il software
installato sul computer soddisfa i requisiti del sito remoto,
sarà permesso l'accesso. Questo certificato può essere
prodotto -- nello schema corrente del TCG -- solo se
vengono soddisfatti i requisiti richiesti.
Oggi non c'è un modo certo per realizzare questo. Di
conseguenza, i tentativi di forzare gli utenti ad utilizzare un
particolare software sono senza effetto; i siti web sono oberati
dal controllare quale sistema operativo e quali applicazioni
possono essere usate dai loro utenti. Il "reverse engineering"
permette, infatti, la creazione di nuovo software competitivo,
che funziona bene con il software ed i servizi esistenti e, di
conseguenza, i proprietari dei computer hanno la possibilità di
effettuare realmente una scelta. È effettivamente impossibile
punirli per aver scelto di usare un software diverso da quello
preferito da chi si occupa dei servizi. Se loro vogliono usare un
browser web od un sistema operativo diverso, sanno che è
improbabile che vengano tagliati fuori dai servizi più
importanti.
Per esempio, molti dei servizi on-line delle banche richiedono
un browser Microsoft, ma gli utenti di altri software sono
capaci di modificare il loro browser affinché appaia come
Internet Explorer. Per quello che riguarda la banca, i clienti
stanno accedendo al sito con il programma richiesto, ma gli
utenti non sono vincolati alle decisioni dettate dalla miopia
delle loro istituzioni finanziarie.
In un caso molto pubblicizzato, MSN, il Network di Microsoft,
rifiutò, in poche parole, di servire pagine web a browser
diversi da quelli Microsoft. In poco tempo, gli utenti di
prodotti competitivi riuscirono a far credere a MSN che
utilizzavano i browser di Microsoft. Questo sarebbe stato
impossibile in un ambiente con procedure simili alle "remote
attestation" del NGSCB. Permettendo in questo modo che un
sito web impedisca l'accesso a software non approvato, queste
attestazioni darebbero a chiunque la potenza di avere una leva
all'interno del mercato capace di controllare le scelte degli
utenti relative al software.
La sicurezza non ha niente a che fare con le motivazioni di
molti siti di impedire l'utilizzo di software non approvato.
Effettivamente, le loro motivazioni potrebbero essere
completamente arbitrarie. In alcuni casi, l'operatore di un sito
potrebbe obbligare gli utenti ad utilizzare un determinato
programma per sottoporlo alla pubblicità. Verificando che un
utente utilizza un programma "approvato", il sito può
convincersi che l'utente è stato obbligato a visualizzare un
certo numero di informazioni pubblicitarie.
L'interoperabilità del software e il lock-in
Anche l'interoperabilità del software è a rischio. Uno
sviluppatore di un programma per un server web, un file
server, server di posta, ecc., potrebbe programmare
l'applicazione per richiedere una attestazione; il server
potrebbe rifiutare categoricamente di dialogare con i client
che sono stati prodotti da qualcun altro diverso da chi
sviluppa il programma server. Oppure l'editore potrebbe
insistere sulle tasse di licenza agli sviluppatori dei client, e
rendere l'interoperabilità del proprio server possibile solo con
chi ha pagato la tassa. (Ciò è possibile, in modo simile,
creando dei file cifrati con metodi proprietari che possono
essere letti solo da software "approvato", e per i quali la chiave
di decodifica deve essere ottenuta tramite un server di rete ed
è estremamente difficile adottare il "reverse engineering".)
L'editore, in questo caso, potrebbe far aumentare
notevolmente i costi per gli utenti che vogliono adottare il
software di un suo rivale. Se un utente ha una grossa quantità
di dati importanti memorizzati all'interno di un sistema
proprietario, e il sistema comunica solo con i client sviluppati
dall'editore del sistema proprietario, potrebbe essere
estremamente difficoltoso, per un utente, migrare i suoi dati
verso il nuovo sistema software. Quando il nuovo sistema
prova a comunicare con quello vecchio per estrarre i dati,
quello vecchio potrebbe rifiutarsi di rispondere.
Il file server Samba è un importante esempio di software per
l'interoperabilità, creato tramite il reverse engineering. gli
sviluppatori Samba hanno studiato il protocollo di rete usato
dal file server di Microsoft Windows e hanno creato una
implementazione alternativa, che hanno pubblicato come
software free/open source. Samba può essere utilizzato in una
rete di computer al posto del file server di Windows, e le
macchine client Windows possono comunicare con esso come
se fosse un server Windows. (In modo simile, Samba consente
ai client non-Windows di accedere ai file server Windows.)
Senza software competitivo come Samba, gli utenti di
Windows sarebbero obbligati ad usare i server Windows, e vice
versa. Ma se il software potesse identificare tranquillamente il
software all'altra estremità di una rete, uno sviluppatore
software potrebbe fare programmi richiedenti attestazioni e
quindi proibire al software del rivale di connettersi ed
interagire. Se Microsoft sceglia di usare lo NGSCB in questo
modo, potrebbe chiudere Samba fuori dai servizi di Windows,
in modo permanente, ed impedire ogni utile implementazione
competitiva dei relativi protocolli senza la specifica
autorizzazione.
In modo simile, i servizi di messaggistica istantanea (IM)
hanno frequentemente provato a chiudere fuori i client dei
loro avversari che, in alcuni casi, erano free/open source. Oggi
questi tentativi sono infruttuosi, nella generazione di uno o
più interruzioni provvisorie per gli utenti. Un meccanismo di
attestazione sarebbe uno strumento molto potente per
limitare la competizione e l'interoperabilità nei servizi IM. Ad
alcune applicazioni client potrebbe essere impedita
permanentemente la connessione, anche se offrono delle
caratteristiche che gli utenti finali preferiscono.
Questi sono esempi di un problema più generale di "lock-in",
pratica spesso usata in una strategia deliberatamente di
mercato nell'industria del software, per causare datti al
commercio e, nello stesso modo, agli utenti dei computer.
Sfortunatamente, il disegno del TCG fornisce nuovi potenti
strumento per attivare il "lock-in". L'attestazione è
responsabile di questo problema; "sealed storage" può
rendere le cose ancora più aspre, permettendo al programma
che crea un file di impedire la lettura da parte di altri
programmi. Quindi, sia i protocolli di rete che i formati dei file
possono essere usati per attaccare l'interoperabilità del
software.
Una soluzione: il passaggio di proprietà
La mancanza del controllo proprietà dei computer del
contenuto delle attestazioni è il problema centrale con le
proposte correnti del trusted computing. È un'inaccettabile e
grave falla di disegno che deve essere rimediata prima che si
attui l'architettura del trusted computing come un intero
pacchetto sarà un chiaro beneficio per i proprietari dei
computer. Una semplice misura che chiamiamo passaggio di
proprietà può fissare il problema da restaurare di altre
incapacità del software, per sapere per certo cosa il software
può far funzionare – a meno che non decidete che sia meglio
che loro sappiano. Il passaggio di proprietà cambia finemente
la natura dei benefici della sicurezza che provvedono
all'attestazione. Attualmente, l'attestazione chiama le parti
remote se il software sul vostro computer è stato cambiato.
L'attestazione più il passaggio di proprietà possono
permettere alle parti remote di sapere se il vostro software è
stato cambiato senza la vostra consapevolezza. Così, la
rivelazione di attività illecite può essere fattibile. Se,
comunque, avete creato dei cambiamenti deliberatamente sul
computer di vostra proprietà, potete nasconderlo a loro, ora
come ora potete farlo, per impedire a qualcun altro di usare le
vostre scelte come una ragione per discriminarvi. Il passaggio
di proprietà lavora dalla procura data deliberatamente dal
proprietario del computer, quando fisicamente presente al
computer, per scegliere la generazione di un'attestazione la
quale non riflette l'attuale stato dell'ambiente del software –
per presentare la figura della sua scelta del sistema operativo
del suo computer, sistema applicativi o drivers. Da quel
momento una tale attestazione può solo essere generata dal
computer proprietario consapevole della scelta. Il valore di
attestazione per scoprire cambiamenti non autorizzati è
preservato. Ma il PC proprietario ha riconquistato il controllo
fine-granulato, sempre in un ambiente di reti multiple, ed il
PC può in un breve tempo imporre la pulizia contro il volere
del suo proprietario. Il passaggio di proprietà rimuove le
toolbox che permettendo all'architettura del trusted
computing di essere violata da un'anti-interoperabilità ed
un'anti-competitività preposta. Esso restituisce l'importante
abilità di annullare programmi di ingegneria informatica per
promuovere l'interoperabilità tra loro. Largamente, è fissato il
trusted computing così che protegga il computer proprietario
e autorizzi gli utenti contro attacchi, senza limitare l'autorità
del computer proprietario per decidere precisamente quale
politica voglia imporre. Così, senza minare alcun beneficio
richiama per l'architettura del TCG una vetrina pubblica in
dimostrazione della NGSCB della Microsoft. Esso consiste nel
TCG e in molti venditori assegnati sulle reti del trusted
computing. (In una realtà societaria, la società deve essere la
proprietaria dei pc che i suoi impiegati usa, ritenendo il potere
di sviluppare la politica della rete informatica per i suoi utenti
una cosa prioritaria. Sin dal passaggio di proprietà richiede
agli utenti di fornire le credenziali proprietarie prima del
fallimento della politica gestionale, non indebolisce un
controllo proprietario del computer sull'utente autorizzato.
Una società può, per esempio, usare ancora delle attestazioni
per controllare ciò che un software impiegato da un utente
può utilizzare sul desktop della macchina societaria quando
essi accedono alle risorse di rete). Il passaggio di proprietà
preclude
alcune
interessanti
nuove
applicazioni,
particolarmente nel calcolo distribuito. Nello status quo, non è
tipicamente possibile spedire dati ad un computer antagonista
mentre controlla ciò che l'avversario può fare con esso. Il
passaggio di proprietà protegge quell'aspetto dello status
quo, mentre il rimpianto degli sviluppatori di applicazioni è
che preferiscono dare fiducia al computer remoto sempre
mentre diffidano della loro proprietà. Nello stesso modo, il
passaggio di proprietà previene che il trusted computing
venga utilizzato per fermare le frodi nei giochi di rete. Il
passaggio di proprietà – come trusted computing in generale –
rimuove le caratteristiche o le funzionalità non esistenti dal
PC, crediamo per tanto che esso avvantaggi significativamente
più che crei svantaggi. Nonostante il plausibile desiderio di
migliorare l'hardware per accrescere la sicurezza del computer
saranno fatti alcuni cambiamenti di hardware. I proprietari di
PC potranno accuratamente pensare in quale direzione
vogliono sviluppare la loro piattaforma. I sistemi trusted
computing che proteggono ancora il vostro PC e vi
impediscono di utilizzare una politica derogativa sono, in
bilancio, un passo indietro. Un passaggio di proprietà
configurato, o il suo equivalente, è necessario per fissare il
disegno dei sistemi trusted computing.
(Questa tabella mostra come il passaggio di proprietà preserva
di più i benefici della sicurezza dell'attestazione remota
mentre annulla i suoi rischi).
Status Quo
Attestazione
Attestazione +
passaggio di
proprietà
La compromissione
del software (da un
virus) può essere
creato scoprendolo
da un party remoto,
il quale può attivarsi
su queste
informazioni.
Le frodi ai giochi di
rete possono essere
prevenute, e
La competizione e
distribuite le
l'interoperabilità
applicazioni
sono le norme.
(Distributed.net.
Il controllo
SETI@Home, ecc.)
dell'utente e la sua
possono riguardare i
scelta sono protetti.
computer posseduti
Il blocco ed il
dalle parti false
Pros controllo remoto
senza rischiare
sono difficoltosi
l'integrità dei calcoli
perché i proprietari
o la confidenza dei
dei computer hanno
dati.
un controllo
Le società possono
sostanziale su tutto il
effettivamente
software locale in
imporre politiche
tutte le circostanze.
contro i loro
lavoratori.
“Paternalista”
politica di sicurezza
che protegge gli
utenti dalle
conseguenze certe
dei loro errori
possono essere
sempre
implementate
La
compromissione
del software può
tranquillamente
essere creata
distinguendolo da
un party remoto.
Una società può
effettivamente
imporre politiche
contro i loro
membri, così come
loro possono
usare i computer
propri delle
aziende.
I proprietari dei
computer tengono
un sostanziale
controllo sul
software locale.
La competizione,
interoperabilità,
del controllo e
delle scelte
dell'utente sono
preservate
Non c'è in generale
qualcosa che
permette ad un party
remoto di scoprire o,
senza la
consapevolezza del
proprietario del
computer, viene
modificato
inappropriatamente il
software locale.
Le frodi ai giochi di
rete non possono
Cons
essere prevenute.
Le frodi da
partecipanti non
scrupolosi nei calcoli
distribuiti non
possono essere
prevenuti.
“Paternalista” la
politica di sicurezza
che protegge gli
utenti dai loro stessi
errori sono difficili da
scoprire.
Il terzo party può
imbrogliare la
politica contro il
proprietario del
computer dove
tradizionalmente
questo può non
essere stato
tecnologicamente
imbrogliato, o può
essere stato
imbrogliato
solamente con
difficoltà, per
esempio:
*DRM
*applicazioni di
blocco
*migrazioni e
restrizioni di back
up
*attivazioni di
prodotti
*catena di prodotti
*upgrade forzati
*downgrade forzati
*applicazioni
specifiche di
spyware
*impedimenti della
retroingegneria
Le frodi ai giochi
di reti o da
partecipanti non
scrupolosi sulle
distribuzioni dei
calcoli,
tranquillamente
non essere
bloccato.
“Paternalista”
politica di
sicurezza rimane
difficoltosa da
frodare.
Dall'estensione di
cui i proprietari
dei computer
devono
potenzialmente
beneficiare da una
frode robusta di
una politica DRM,
non ottengono
questo beneficio
Problema: verifica dell'implementazione
Come può il proprietario del computer conoscere ciò che il
loro hardware trusted computing implementa in accordo con
le sue specifiche pubbliche? ( Ruediger Weiss) Questo è un
importante problema per tutti gli hardware crittografici,
hardware non trusted computing. Ma da più PC non ha
preventivamente contenuto alcuni hardware specializzati
crittografici, più utenti di uno stesso PC semplicemente non
hanno avuto occasione di preoccuparsi per questo problema
in passato. Mentre alcuni hardware possono contenere back
doors o caratteristiche non documentate, gli hardware
crittografici sono gli unici ad avere accesso ad informazioni
segrete importanti come l'opportunità di perdere ciò che
l'informazione non scopre attraverso canali coperti (per
esempio, nei certificati di attestazione). Così, è importante
assicurare i manufatti hardware di trusted computing
implementino correttamente le specifiche, senza includere
caratteristiche non documentate le quali possono permettere
loro o parti terze di ottenere accesso non autorizzato ad
informazioni private.
Conclusioni
Noi riconosciamo che l'aumento dello hardware deve essere
uno solo per migliorare la sicurezza del computer. Solo che i
proprietari dei computer devono comportarsi come
antagonisti e non progredire nella sicurezza del computer.
L'interoperabilità, competizione, del controllo proprietario, e
problemi similari inerenti al TCG e NGSCB si avvicinano
seriamente a sufficienza a ciò che noi raccomandiamo contro
l'opzione di queste tecnologie del trusted computing fino a
che questi problemi saranno stati indirizzati. Fortunatamente,
crediamo che questi problemi non siano insormontabili, e
guardiamo avanti lavorando con le industrie per risolverli.
Appendice S: Il punto di vista di Richard M. Stallman
Riportiamo qui di seguito la versione italiana dell'articolo “Can
you trust your computer” di Richard M. Stallman. Questo
articolo è reperibile in rete a questi indirizzi:
http://www.gnu.org/philosophy/can-you-trust.html (inglese)
http://www.complessita.it/tcpa/rms.html (italiano)
Questo documento è copyrighted Richard M. Stallman – 2002.
L'autore ne ha consentito la riproduzione a condizione che il
testo rimanga immodificato. L'autore e l'editore si associano a
Richard M. Stallman nel desiderio di mantenere libera la
circolazione dell'informazione e riconoscono a chiunque sia
interessato il diritto di riutilizzare questa sezione del libro
secondo gli stessi criteri previsti dall'autore originale.
Puoi fidarti del tuo computer?
Richard
Stallman,
21
ottobre
(Versione italiana a cura di: Mauro Sandrini)
2002
Richard Stallman, 21 ottobre 2002
Da chi dovrebbe prendere ordini il vostro computer? La
maggior parte delle persone pensano che i loro computer
debbano obbedire agli ordini che vengono impartiti dal
proprietario e non rispondere a direttive impartite da qualcun
altro. Con un progetto chiamato 'trusted computing' (più o
meno traducibile con 'computer sicuri, affidabili', alcune
grandi aziende della comunicazione (includendo fra queste
quelle del cinema e le case discografiche) cooperano con
aziende del settore informatico come Microsoft e Intel per far
si che il tuo computer obbedisca ai loro ordini anzichè ai tuoi.
Software proprietari in passato hanno incluso, qualche volta,
caratteristiche intrusive ma questo progetto le mette al centro
di ogni sistema informatico.
Software proprietario significa, in sostanza, non avere il
controllo su ciò che accade: non è possibile studiare il codice
sorgente o modificarlo. Non è strano che imprenditori solerti
studino la possibilità di utilizzare questo controllo per mettere
l'utente/acquirente in una posizione di svantaggio. Microsoft
ha fatto questo varie volte: una delle versioni di Windows
venne progettata per inviare a Microsoft un rapporto con tutti
software presenti sull'hard disk di ogni computer; una recente
upgrade per migliorare la 'sicurezza' di Windows Media Player
richiede all'utente di acconsentire a nuove restrizioni. Ma
Microsoft non è sola: il software per condivisione di file
musicali KaZaa è progettato in modo che aziende legate a
KaZaa possano affittare l'utilizzo del computer dell'utente ai
loro clienti. Queste funzionalità perverse sono spesso segrete
ma, anche quando se ne viene a conoscenza, può essere
difficile rimuoverle, proprio perché non si ha a disposizione il
codice sorgente.
Nel passato sono avvenuti problemi isolati grazie a queste
caratteristiche. I 'Computer Sicuri' renderanno questo
fenomeno pervasivo. 'Computer Inaffidabili' sarebbe un nome
più appropriato, proprio perché il progetto è di far si che il
computer disattenda sistematicamente le istruzioni del
proprietario. Infatti esso sarà progettato in modo da impedire
che il computer funzioni come un computer general-purpose.
Ogni funzione potrà richiedere specifici permessi prima di
essere eseguita.
L'idea sottostante ai 'Computer Inaffidabili' sta nel fatto che
includono un dispositivo per gestire firme digitali criptate, e le
chiavi sono tenute all'oscuro dal proprietario della macchina.
(La versione di Microsoft di questo sistema è denominata
'Palladium'). Programmi proprietari utilizzeranno questo
dispositivo per controllare quali altri programmi potrai
eseguire, a quali documenti o dati potrai accedere e a quali
programmi potrai farli elaborare. Questi programmi
scaricheranno in continuazione da Internet nuove regole per la
gestione delle autorizzazioni e le imporranno sul tuo modo di
lavorae. Se non permetterai al tuo computer di scaricare le
nuove regole periodicamente da Internet alcune funzionalità
cesseranno automaticamente di funzionare.
Naturalmente Hollywood e le case discografiche hanno in
mente di utilizzare i 'computer inaffidabili' per il "DRM" (Digital
Restriction Management - la Restrizione dei Diritti Digitali), in
modo che i video e la musica scaricata possa essere fruita solo
sul quel specifico computer. Condividerli sarà impossibile a
meno di utilizzare i file di autorizzazione forniti dal
produttore. Le persone, finora, hanno avuto la libertà e la
possibilità di condividerli. (E' possibile che qualcuno troverà il
modo di produrre versioni non criptate e di permetterne
l'upload e il download, in modo che il DRM non potrà vincere
completamente, ma in ogni caso non è questo un motivo per
approvare questo sistema).
Rendere impossibile la condivisione dei file è una cosa
disdicevole.. ma c'è di peggio. Ci sono progetti per utilizzare
la stessa possibilità per email e documenti, per esempio per
far sparire le email nel giro di due settimane, oppure di
documenti che possono essere letti esclusivamente nei
computer di un' unica azienda.
Provate ad immaginare cosa potrebbe succedere se vi
arrivasse un'email dal vostro superiore chiedendovi di svolgere
un'azione che secondo voi è a rischio: un mese dopo, quando
vi vorranno rimpiazzare per quella decisione, non sarà
possibile utilizzare quell'email come prova che la decisione
non è stata vostra. "Mettere per iscritto" le cose non vi
proteggerà se l'ordine è scritto con un inchiostro evanescente.
Immaginate di ricevere un'email dal vostro capo con direttive
illegali od moralmente inaccettabili come per esempio
distruggere i documenti amministrativi della vostra azienda,
oppure con l'ordine di lasciar passare una pericolosa minaccia
verso il vostro paese senza verificarla. Oggi è possibile inviare
queste email ad un giornalista ed esporre i fatti. Con i
'Computer Inaffidabili' il giornalista non sarà in grado di
leggere il documento: il computer si rifiuterà di obbedirgli. La
'Informatica Inaffidabile' diviene il paradiso della corruzione.
Elaboratori di testi come Microsoft Word potranno utilizzare
'computer inaffidabili' quando essi salvano i tuoi documenti
per essere certi che nessun word processor concorrente possa
leggerli. Oggi dobbiamo decifrare i segreti del formato Word
con esperimenti laboriosi per poter permettere agli elaboratori
di testo liberi di leggere i documenti Word. Se Word criptasse
questi documenti utilizzando 'computer inaffidabili' al
momento del salvataggio, la comunità del software libero non
avrebbe alcuna possibilità di leggerli e, anche nel caso ciò
fosse possibile, questo programma potrebbe essere persino
vietato dal Digital Millenium Copyright Act.
Programmi
che
utilizzano
'Computer
Inaffidabili'
scaricheranno in continuazione nuove regole ed autorizzazioni
attraverso Internet per imporle automaticamente alle tue
attività. Se Microsoft, o il governo U.S.A., fossero contrari ad
un documento da te scritto potrebbero stabilire nuove regole
impedendo a tutti i computer di leggere quel documento.
Ciascun computer obbedirà a questa regola dal momento in
cui scaricherà le nuove istruzioni. I tuoi scritti saranno
soggetti ad una cancellazione retroattiva al modo di 1984 di
Orwell. Persino tu, l'autore, potresti non essere più in grado di
leggerli.
Si potrebbe pensare di verificare quali siano le attività svolte
da un 'Computer Inaffidabile' , studiare quali di queste siano
dannose, e decidere se accettarle o meno. Sarebbe una
prospettiva miope e folle da adottare: il fatto è che il contratto
che si stipula non resterà lo stesso. Una volta che la tua
attività dipenderà dall'utilizzo di quel programma, sarai legato
ad esso, e loro lo sanno; essi potranno cambiare il contratto.
Alcune
applicazioni
scaricheranno
automaticamente
aggiornamenti che faranno qualcosa di diverso - e non sarà
possibile scegliere se accettare l'aggiornamento o no.
Oggi puoi evitare le restrizioni imposte dal software
proprietario semplicemente non utilizzandolo. Se adotti
GNU/Linux o un altro sistema operativo libero, e se eviti di
installare applicazioni proprietarie su di esso, allora sei nella
condizione di pieno controllo sul tuo computer. Se un
programma libero ha una funzionalità scorretta, altri
sviluppatori della comunità la elimineranno, e potrai utilizzare
la versione corretta. E' anche possibile utilizzare software
libero su sistemi operativi non liberi; ciò non ti darà ancora la
completa libertà, ma molti utenti lo fanno.
L' 'Informatica Inaffidabile' mette a rischio l'esistenza del
software e dei sistemi operativi liberi perché potrebbe non
essere più possibile utilizzarli del tutto. Alcune versioni di
'Computer Inaffidabili' richiederanno che ogni programma sia
autorizzato da chi sviluppa il sistema operativo. Non sarà
possibile utilizzare applicazioni libere: anche i sistemi
operativi liberi potrebbero non essere più installabili. Se
qualcuno trovasse il modo di farlo, e lo dicesse in giro, questo
sarebbe un crimine.
Ci sono proposte di legge in Usa che richiedono che tutti i
computer debbano essere 'Inaffidabili', e che proibiscono ai
vecchi computer di collegarsi ad Internet. Il CBDTPA
(Consumer Broadband and Digital Television Promotion Act
ma che sarebbe meglio chiamare 'Consume But Don't Try
Programming Act' - Consuma Ma Non Azzardarti a
Programmare - ) è uno di questi. Ma anche se essi non
forzassero per vie legali a passare ai sistemi inaffidabili, la
pressione ad accettarlo sarebbe enorme. Oggi le persone
spesso usano il formato Word per le comunicazioni, sebbene
questo
causi
una
serie
di
problemi
(vedi:
http://www.gnu.org/philosophy/no-word-attachments.html).
Se solo una macchina inaffidabile potrà leggere l'ultima
versione di documenti Word, molte persone passeranno ad
esso, se essi vedranno la situazione solo in termini di azione
individuale (prendere o lasciare). Per opporsi all' 'Informatica
Inaffidabile', è necessario unire le forze e rapportarsi ad esso
come fosse (ed è) una scelta collettiva.
Per ulteriori informazioni su questi argomenti
http: / / www.cl.cam.ac.uk / users / rja14 / tcpa - faq.html
italiano su http: / / www.complessita.it / tcpa).
vedi
(in
Per fermarla sarà necessario che le persone si organizzino.
Abbiamo bisogno del tuo aiuto! La The Electronic Frontier
Foundation
(www.eff.org)
e
Public
Knowledge
(www.publicknowledge.org) hanno iniziato campagne per
fronteggiare i 'Computer Inaffidabili' . Visita il loro sito per
iscriverti e sostenere il loro lavoro.
Per dare un segno puoi anche scrivere ai dipartimenti per le
relazioni con il pubblico di Intel, Ibm, HP/Compaq o di
chiunque da cui tu abbia acquistato un computer, spiegando
che non vuoi essere obbligato ad acquistare 'Computer
Inaffidabili' e che tali computer non dovrebbero essere
prodotti. Questo può aumentare il potere dei consumatori. Se
decidi di fare questo, spedisci una copia delle tue lettere alle
organizzazioni citate.
Postscriptum:
1. Il progetto GNU distribuisce il GNU Privacy Guard, un
programma che implementa la firma digitale a chiave
pubblica. E' interessante verificare come GPG sia diverso dai
sistemi inaffidabili, e scoprire cosa rende l'uno utile e l'altro
dannoso.
Quando qualcuno utilizza GPG per inviare un documento
criptato, ed usa GPG per decriptarlo, il risultato è un
documento non criptato che puoi leggere, inviare in forward,
copiare ed anche re-criptare per spedirlo in modo sicuro ad
altri. Una applicazione inaffidabile ti permetterà di leggere le
parole sullo schermo ma non di produrre un documento non
criptato che puoi usare in altri modi. GPG, un pacchetto di
software liberi, rende le prestazioni per la sicurezza
disponibili agli utenti: gli utenti possono utilizzarla infatti. Il
sistema inaffidabile, invece, è è progettato per imporre
restrizioni agli utenti: il sistema 'usa' gli utenti.
2. MIcrosoft presenta Palladium come una misura di sicurezza,
e dichiara che proteggerà gli utenti da virus, ma questa
dichiarazione è evidentemente falsa. Una presentazione da
parte di Microsoft Research avvenuta in ottobre 2002 afferma
che una delle specifiche di Palladium è che i sistemi operativi
esistenti e le applicazioni continueranno a funzionare; questo
significa che i virus continueranno a poter fare tutto ciò che
fanno oggi.
Quando Microsoft parla di 'sicurezza' relativamente a
Palladium, essi non intendono ciò che normalmente
intendiamo con questa parola: proteggere la tua macchina da
cose che non vogliamo. Essi intendono, invece, proteggere i
dati sulla tua macchina dall'accesso non autorizzato da parte
tua in modi che altri non desiderano. Una diapositiva nella
presentazione elencava i vari tipi di informazioni riservate per
cui poteva venir usato Palladium per proteggerle, incluse
'informazioni segrete di terze parti' e 'informazioni segrete
dell'utente'. Il fatto è che le 'informazioni segrete dell'utente'
era posto fra virgolette, ammettendo che non è per questo che
Palladium è progettato.
La presentazione ha fatto un uso frequente di termini che di
solito associamo con il contesto della sicurezza, come
'attacco', 'codice infetto', 'spoofing' cosi come di 'sicurezza'.
Nessuno di questi significa quel che di solito significa.
'Attacco' non significa che qualcuno sta tentando di violare il
tuo computer, significa ma che tu stai tentando di copiare
musica. 'Codice infetto' significa codice inserito da te per fare
operazioni che qualcun altro non vuole la tua macchina
svolga. 'Spoofing' non significa che qualcuno sta tentando di
entrare nella tua macchina ma che tu stai tentando di accedere
ad un'area della tua macchina che è controllata da Palladium. E
cosi via.
3. Una affermazione degli sviluppatori di Palladium è stata che
chiunque ha sviluppato o raccolto informazioni dovrebbe
avere il controllo totale su come l'utente le utilizza. Ciò
rappresenterebbe un cambiamento rivoluzionario riguardo alle
idee alla base dei sistemi etici e legali della nostra società. Il
risultato sarebbe la creazione di un sistema di controllo senza
precedenti. I problemi particolari di questo sistema non sono
casuali: sono il risultato del loro scopo specifico. E' lo scopo
che dobbiamo rifiutare.
Copyright 2002 Richard Stallman
La copia e la distribuzione con qualsiasi media di questo
intero articolo è permessa senza royalty sempre che questa
informazione venga fornita intatta.