Trusted computing

Da Wikipedia, l'enciclopedia libera.
Il logo del Trusted Computing Group, gruppo di aziende promotrici del Trusted Computing

L'espressione inglese Trusted Computing (TC, letteralmente informatica fidata o calcolo fidato) si riferisce ad una tecnologia nascente, derivata da specifiche del Trusted Computing Group (TCG) – che ha ereditato quelle del Trusted Computing Platform Alliance (TCPA) – con l'obiettivo dichiarato di rendere dispositivi come computer o telefoni cellulari più sicuri mediante l'uso di opportuni hardware e software. Il raggiungimento di tale scopo viene ottenuto inserendo in ogni dispositivo un chip (denominato Trusted Platform Module o più brevemente TPM) dotato di una coppia di chiavi crittografiche (univoca per ogni chip), impossibili da modificare anche per il proprietario, e capace di generare altre chiavi per la crittografia di dati o dispositivi[1]. La controversia attorno a tale tecnologia nasce dal fatto che tali dispositivi sarebbero sicuri sia da manomissioni esterne che da eventuali utilizzi, definiti impropri, dell'utente.

I principali sviluppatori di tale tecnologia sono i Membri Promotori del Trusted Computing Group, ovvero AMD, HP, IBM, Infineon, Intel, Lenovo, Microsoft e Sun Microsystems[2]. Attualmente soltanto alcuni computer portatili e telefoni cellulari destinati all'utenza business sono dotati del TPM, che li rende pronti per tale tecnologia, mentre diversi produttori di schede madri rendono disponibili prodotti compatibili con l'installazione opzionale del TPM[3].

Concetti principali[modifica | modifica sorgente]

Alla base del Trusted Computing vi sono i meccanismi di crittografia asimmetrica. Questi vengono applicati per i seguenti scopi:

  • Ogni singolo dispositivo è identificato univocamente da una sorta di passaporto elettronico, ovvero da un numero di serie e una chiave di cifratura
  • Le informazioni possono essere cifrate con la chiave della macchina
  • Le informazioni possono essere firmate con la chiave della macchina
  • La cifratura delle informazioni viene eseguita a livello hardware in modalità sicura

L'implementazione di tali meccanismi avviene essenzialmente per mezzo del Trusted Platform Module (TPM), un microchip costruito secondo le specifiche del Trusted Computing Group. Le direttive del Trusted Computing Group specificano che esso debba essere caratterizzato principalmente da un co-processore crittografico per la crittografia asimmetrica, un generatore di chiavi asimmetriche, un generatore di numeri casuali, un motore crittografico HMAC, un motore crittografico SHA-1, un chip di memoria volatile per la memorizzazione di chiavi, utilizzabile anche dall'utente e da un chip di memoria non volatile[4].

L'unità TPM, secondo le specifiche del Trusted Computing Group, avrà cinque principali funzionalità. Ognuna ha uno scopo diverso, anche se possono essere usate insieme. Perché siano attive, però, è necessario che anche il software in utilizzo ne implementi il supporto. Queste caratteristiche sono:

  • Endorsement Key (chiave di approvazione)
  • Secure I/O (Input/Output sicuro)
  • Memory curtaining (separazione della memoria)
  • Sealed storage / Trusted storage (memoria sigillata / memoria fidata)
  • Remote attestation (attestazione remota)

Endorsement Key[modifica | modifica sorgente]

L'integrità del sistema viene protetta da manomissioni e falsificazioni grazie a una sofisticata tecnica crittografica che impedisce a emulatori software (ad esempio driver) di avviare una transazione sicura con un programma, un dispositivo hardware o un sistema remoto. Ciò sarà realizzabile mediante una coppia di chiavi RSA a 2048 bit che identifica univocamente ogni TPM. Tale coppia di chiavi, detta Endorsement Key (chiave di approvazione), è diversa per ogni chip e viene generata al momento della produzione del chip. In alcuni casi, ma non sempre, è revocabile (e dunque modificabile) solo con una password fornita dal produttore. Il TPM è realizzato in modo che non esistano funzioni in grado di estrarre in alcun modo tale chiave, e lo stesso dispositivo hardware (secondo le specifiche) riconoscerà di essere stato manomesso. All'atto dell'instaurazione di una transazione sicura, i TPM coinvolti dovranno firmare un numero casuale per certificare la loro identità e la propria adesione alle specifiche TCG. Ciò potrà, ad esempio, impedire la falsificazione dell'IMEI di un cellulare rubato.

Le credenziali di Approvazione, Conformità e Piattaforma possono generare, su richiesta del proprietario, una Attestation Identity Key (AIK, "chiave di attestazione dell'identità") univoca da sottoporre a una Autorità di Certificazione Questa funzionalità potrà estendersi fino alla creazione di una vera e propria infrastruttura a chiave pubblica (PKI) hardware e all'identificazione univoca di ogni dispositivo conforme alle specifiche TCG.

Secure I/O[modifica | modifica sorgente]

Le operazioni di input/output vengono rese sicure (da qui il nome di "secure I/O") con l'utilizzo dei meccanismi di cifratura a chiave asimmetrica. Tutte le informazioni che transitano sui bus del sistema sono cifrate: in questo modo è impossibile da parte di appositi programmi o meccanismi hardware carpire le informazioni scambiate tra la tastiera e un'applicazione, tra l'applicazione e lo schermo, ...

Sul bus di collegamento tra CPU e TPM (se esterno al processore), i dati viaggiano sempre e comunque cifrati.
Principali indicazioni:

  • Un sistema di autenticazione biometrico potrà garantire all'utente che nessun programma spia intercetti, memorizzi e ritrasmetta i dati di accesso (impronte digitali, iride...). Vedi in seguito per ulteriori approfondimenti.
  • In infrastrutture semplici, si potrà garantire l'inefficacia di un keylogger (programma che monitora i caratteri digitati su tastiera) a carpire le chiavi (password) di accesso al sistema.
  • Si potrà impedire a programmi di cattura delle immagini visualizzate su schermo di tentare la lettura di un CAPTCHA o il salvataggio di immagini non copiabili, ad es. protette da copia non autorizzata[5][6].

Memory curtaining[modifica | modifica sorgente]

Il memory curtaining (separazione della memoria) prevede che l'hardware impedisca a ogni programma la lettura e la scrittura delle zone di memoria (lo spazio in cui normalmente i programmi parcheggiano i dati che stanno elaborando in quel momento) utilizzate dagli altri applicativi in esecuzione.

Nemmeno il kernel del sistema operativo sarà in grado di accedere a tali zone di memoria, anche perché i dati in esse sono cifrati, quindi le informazioni saranno al sicuro anche nel caso in cui un intruso riuscisse a prendere il controllo dell'intero sistema.

Qualcosa di molto simile può essere ottenuto anche con il software, ma l'approccio hardware fornisce una soluzione più elegante e affidabile. Questo meccanismo può però anche rendere impossibili alcuni metodi di debugging (correzione degli errori di applicazioni difettose).

Sealed storage[modifica | modifica sorgente]

Il sealed storage (memoria sigillata), o trusted storage (memoria fidata), protegge le informazioni per mezzo della cifratura, usando una chiave che deriva dallo stato del sistema, ovvero dal software utilizzato e dall'hardware su cui esso è in esecuzione. Questo significa che tali informazioni possono essere fruibili solo con la stessa combinazione di software e hardware. Per esempio, gli utenti che tengono un proprio diario privato sul proprio computer non vogliono che altri programmi o altri computer siano in grado di leggerlo. Oggi, un virus (Sircam faceva qualcosa di simile) può cercare il diario, leggerlo e inviarlo a qualcun altro. Una volta caduto nelle mani sbagliate, anche se fosse protetto da una password, un cracker potrebbe tentare di accedere al diario per mezzo di un attacco basato su un dizionario. Si potrebbe accedere alle informazioni contenute nel diario dell'utente anche modificando il software di scrittura dello stesso: usando il sealed storage, il diario viene cifrato in modo sicuro cosicché soltanto il programma per la sua gestione (non modificato) presente in quel computer è in grado di accedervi.

Questo metodo di cifratura dei dati impedisce anche di rimuovere un disco da un computer e utilizzarlo, con i dati in esso contenuti, in un altro computer.

Nel trusted storage il compito di decidere chi sia autorizzato ad accedere ai dati fidati ricade sullo stesso dispositivo di memorizzazione, e non sull'applicazione che ha creato i dati. Ciò permette ad esempio di assegnare della memoria del disco alle applicazioni fidate di cui le altre applicazioni ignorano l'esistenza, o di creare un disco rigido i cui dati siano leggibili solo da un certo computer. Un disco rigido trusted deve contenere un processore crittografico, per essere in grado di garantire prestazioni elevate nella crittazione del disco, e si pone come radice ((EN) : root) di una catena di fiducia ((EN) : chain of trust) in cui controlla e firma le periferiche a cui l'utente decide di garantire l'accesso al computer[7][8].

Remote attestation[modifica | modifica sorgente]

Exquisite-kfind.png Per approfondire, vedi Direct Anonymous Attestation e Trusted Network Connect.

La remote attestation (attestazione remota) permette a terzi di interrogare il sistema e di conoscerne lo stato, ovvero di rilevarne le sue variazioni. In questo modo si può evitare che informazioni riservate siano inviate da un computer compromesso o non sicuro, o che da questo siano ricevuti comandi "pericolosi". Il meccanismo si basa sul protocollo di Direct Anonymous Attestation, ovvero utilizzando un certificato digitale generato dall'hardware che garantisce l'anonimità del processo. Il sistema può presentare tale certificato ad altri sistemi remoti per mostrare che esso non è stato compromesso.

L'attestazione remota è di solito effettuata per mezzo della cifratura a chiave pubblica, in modo tale che le informazioni scambiate possano essere lette soltanto dai programmi coinvolti nell'attestazione, e non da malintenzionati.

Per riprendere l'esempio del diario, il programma per la sua gestione potrebbe inviare le informazioni contenute in quest'ultimo ad altri computer soltanto se questi sono in grado di attestare che su di essi è in esecuzione una copia sicura del programma di gestione dello stesso. Combinata con altre tecnologie, l'attestazione remota fornisce un canale 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 li protegge mentre questi vengono elaborati, il sealed storage quando vengono salvati sul disco fisso; infine l'attestazione remota protegge i dati da utilizzi non autorizzati anche quando questi vengono utilizzati su altri computer.

Supporto del Trusted Computing[modifica | modifica sorgente]

Il Trusted Computing è supportato da qualsiasi sistema operativo. Linux lo supporta dalla versione 2.6.13[9], mentre in Microsoft Windows è implementato sia dal sistema operativo stesso, attraverso BitLocker Drive Encryption in Windows Vista, che da programmi sviluppati da terze parti[10][11]. Anche la piattaforma Java supporta il Trusted Computing attraverso un Trusted Software Stack open source chiamato jTSS[12].

La distribuzione Linux Gentoo supporta il Trusted Computing attraverso il Trusted Software Stack open source Trousers[13], ed esiste una versione del boot loader GRUB modificata che supporta il Trusted Computing, chiamata TrustedGrub[14].

Applicazioni del Trusted Computing[modifica | modifica sorgente]

Reti Informatiche Sicure[modifica | modifica sorgente]

Exquisite-kfind.png Per approfondire, vedi Trusted Network Connect.

Attraverso il Trusted Computing è possibile creare reti informatiche sicure. Il Trusted Computing Group ha pubblicato le specifiche di un'architettura di rete, chiamata Trusted Network Connect, che attraverso il protocollo AAA è in grado di garantire l'attestazione anonima sicura di ogni dispositivo che cerca di connettersi alla rete[15]. Ogni dispositivo, al momento della connessione, invia all'autenticatore una serie di informazioni cifrate sulle proprie generalità e sul proprio stato, che vengono confrontate da un sistema di controllo con dei database per garantire o rifiutare l'accesso.

Cifratura del disco rigido[modifica | modifica sorgente]

Windows Vista Ultimate e Business fanno uso del Trusted Platform Module per implementare BitLocker Drive Encryption[16]. Il Trusted Platform Module è utilizzato per effettuare un bootstrap sicuro e accedere alle chiavi di decrittazione del disco rigido. All'avvio del computer una serie di controlli viene effettuata nel BIOS, nel master boot record e nella partizione di boot finché il Trusted Platform Module non riceve le chiavi di decifratura e le utilizza per decifrare l'hard disk come richiesto. Questo fa sì che, per esempio, in caso di furto sia impossibile accedere ai dati semplicemente inserendo l'hard disk in un altro computer.

Enforcer è invece un modulo di sicurezza di Linux scritto per garantire la sicurezza del sistema operativo garantendo che non avvenga alcuna alterazione del file system[17]. Enforcer è in grado di interagire con hardware trusted per garantire alti livelli di sicurezza per software e dati sensibili. Può interagire con un Trusted Platform Module per garantire l'immagazzinamento dei dati sicuri in un file system crittato, disabilitandolo quando rileva file alterati e impedendone l'accesso finché la macchina non viene riavviata con file non alterati, proteggendo così i dati da attacchi.

Un terzo programma di crittazione della memoria di massa che fa uso del Trusted Computing è Turaya.Crypt, che differisce dagli altri due per essere concepito per essere in grado di funzionare in diverse modalità d'uso[18]. Turaya.Crypt può infatti crittare sia hard disk che periferiche rimuovibili come chiavi USB; è in grado di funzionare sia in sistemi a utente singolo, chiedendo password prima del boot del sistema operativo, sia in sistemi multiutente, garantendo a un amministratore centrale i diritti di poter scegliere le risorse da assegnare a ogni singolo utente.

Possibili applicazioni del Trusted Computing[modifica | modifica sorgente]

Protezione da virus e programmi spia[modifica | modifica sorgente]

La firma digitale del software potrà permettere agli utenti di riconoscere le applicazioni originali create da produttori di cui egli si fida, distinguendole da versioni false contenenti componenti di codice maligno. Ad esempio, in rete circolano molte versioni fasulle del popolare programma di messaggistica istantanea MSN Messenger, spacciate per originali ma arricchite di spyware (programmi spia), scaricabili da siti che imitano in tutto la grafica del sito originale. Il Sistema Operativo, verificando la mancanza di una firma digitale valida e constatando che il programma si "spaccia" per prodotto Microsoft, potrebbe avvertire l'utente che il programma non è "affidabile". Si noti che le versioni espanse o i client che si appoggiano alla rete MSN di norma dichiarano l'autore (mediante l'infrastruttura PKI).

Anche se il Trusted computing è indicato come mezzo per rendere il sistema inattaccabile dai virus, Microsoft ha negato che tale funzionalità sarà presente con la semplice introduzione della sua architettura NGSCB, in quanto la maggior parte del software, inizialmente, sarà il software attuale, "non protetto". Tuttavia il colosso di Redmond afferma che il Trusted computing potrà essere utilizzato dai produttori di software come piattaforma di sviluppo per creare antivirus e firewall di nuova generazione, che possono essere avviati in uno stato di esecuzione "protetto" e quindi non manipolabile da virus e programmi spia.

Misure di prevenzione degli imbrogli nei giochi online[modifica | modifica sorgente]

Spesso nei giochi in linea viene lamentata la possibilità da parte di certi giocatori (cheater) di imbrogliare mediante l'uso di bot, cioè giocatori virtuali governati da intelligenze artificiali, o modificando la propria copia del gioco per avere un vantaggio sugli altri giocatori. Grazie alla combinazione di Remote Attestation, secure I/O e memory curtaining, il server, e allo stesso tempo gli altri client, avranno la certezza dell'onestà dei partecipanti alla sfida, ovverosia della genuinità della loro copia del gioco.

Sistemi di Digital Rights Management[modifica | modifica sorgente]

Exquisite-kfind.png Per approfondire, vedi Digital Rights Management.

L'introduzione dell'infrastruttura di calcolo fidato permetterà ai produttori di software la creazione di un sistema DRM (gestione dei diritti digitali, in pratica sistemi anticopia) praticamente inviolabile, impedendo la duplicazione non autorizzata di programmi o materiale audiovisivo.

Grazie al Sealed Storage i brani scaricati via Internet o memorizzati su supporto fisico (es. CD Audio) potranno essere crittografati in modo da poter essere letti soltanto da un programma (in caso di brano scaricato anche l'hardware in uso potrebbe venire considerato) sicuro che, grazie al memory curtaining impedirà l'intercettazione della forma decrittografata del brano, e grazie al secure I/O non permetterà ad altri programmi di spiare i buffer della scheda audio (aree di memoria tampone contenenti i flussi audio che stanno per essere riprodotti) né sostituire la stessa con un impianto di registrazione professionale. Allo stesso modo il software potrà tutelarsi da copie non autorizzate.

Protezione dal phishing[modifica | modifica sorgente]

Correntisti sicuri

Grazie all'uso della Remote Attestation, sarà possibile tutelarsi dal crescente fenomeno del phishing eseguendo una verifica sull'integrità del server bancario con cui si tenta una transazione sicura. Le specifiche del TPM prevedono che determinate chiavi di accesso memorizzate nel dispositivo (es. il PIN di accesso al conto corrente bancario) possono essere attivate solo se il richiedente rispetta i requisiti di attestazione. Non solo il browser con supporto TC (TC-enabled in gergo) potrà determinare la validità del sito internet anche in caso di improbabile camuffamento del DNS, ma lo stesso TPM non rilascerà la chiave, con la solita tecnica della firma di un numero casuale, a nessuno se non agli interlocutori autorizzati: nell'esempio il server bancario in questione.

Inoltre lo stesso server, mediante AIK e Remote Attestation, potrà distinguere se l'utente sta operando dal proprio PC di casa o da un'altra postazione (es. imponendo un tetto massimo alle operazioni, contattando telefonicamente per conferma) qualora egli abbia preso accordi in merito con la propria banca.

Possibilità dell'uso della biometria in Rete[modifica | modifica sorgente]

Bancomat biometrici in Corea del Sud
Exquisite-kfind.png Per approfondire, vedi Biometria.

Uno dei principali ostacoli alla diffusione della biometria in una Rete di Calcolatori è la non revocabilità delle credenziali di accesso. Una password d'accesso può essere cambiata, un certificato digitale revocato, ma le impronte digitali o le creste dell'iride non possono essere cambiate nel momento in cui qualcuno entri in possesso di tali informazioni.

Pensiamo nuovamente all'autenticazione in un sistema bancario, stavolta con impronte digitali. Le impronte dell'utente vengono trasformate dal lettore in una sequenza di bit, ossia in forma digitale. Tale sequenza di bit verrà poi inviata al server per l'autenticazione. Se per assurdo un utente malevolo entrasse in possesso di tale codifica digitale, potrebbe facilmente riutilizzarla per autenticarsi al posto del legittimo utente con un client ad hoc che simula il comportamento del lettore. E non ci sarebbe più modo per l'utente di utilizzare servizi di autenticazione biometrica perché qualcuno ha già le sue credenziali.

Con la tecnologia attuale, una connessione SSL garantisce che nessuno possa intercettare la sequenza di bit rappresentante le impronte suddette, ma la presenza di uno spyware sul PC permetterebbe un'intercettazione delle impronte direttamente dal lettore con le conseguenze catastrofiche di cui sopra.

Le soluzione al problema è praticamente unica: fare in modo che dal bus del lettore esca una sequenza criptata non leggibile da nessuno tranne un software fidato. Con il secure I/O è possibile realizzare questa soluzione in tutta sicurezza.

Protezione dal SimUnlock[modifica | modifica sorgente]

Molti operatori di telefonia cellulare, come H3G, propongono al pubblico l'acquisto di un telefonino ad un prezzo ridottissimo a patto di utilizzarlo solo ed esclusivamente con la carta SIM abbinata e viceversa. Molti clienti, per usare il cellulare con schede di altri operatori a tariffe più convenienti e/o per usare la scheda su un altro telefonino:

  • sovrascrivono il software del cellulare in modo da fargli accettare tutte le SIM card GSM/UMTS (il c. d. SimUnlock);
  • sovrascrivono l'IMEI di un secondo apparecchio da usare con la scheda.

Grazie all'utilizzo di un opportuno TPM nei cellulari soggetti a blocco, sarà impossibile l'avvio con un software diverso da quello specificatamente approvato dal costruttore. Inoltre l'operatore potrà usare l'Endorsement Key per stabilire che l'utente non stia usando un cellulare manomesso.

Risultati sicuri dal calcolo distribuito[modifica | modifica sorgente]

L'uso dell'attestazione remota potrebbe permettere agli ideatori di un programma di calcolo distribuito che i partecipanti al programma usino una versione trusted del software di elaborazione: in questo modo si può essere sicuri che i dati inviati da quel client siano corretti, ovverosia che non siano stati deliberatamente alterati dall'utente. Questo permetterebbe di effettuare simulazioni su larga scala (per esempio simulazioni climatiche) avendo la certezza che i partecipanti non forniscono dati falsi: ciò assicura che i risultati globali della simulazione siano autentici.

Sostenitori e detrattori[modifica | modifica sorgente]

I sostenitori del TC sono oltre 170 aziende[19] tra le più grandi dell'industria informatica mondiale, come AMD, hp, IBM, Intel, Microsoft e Sun Microsystems e lo presentano come la soluzione per ottenere computer più sicuri, affidabili e meno attaccabili da virus e programmi nocivi. Microsoft Windows Vista fa uso del Trusted Computing per implementare la tecnologia BitLocker Drive Encryption per la crittografia dell'hard disk, mentre Intel ha lanciato una tecnologia chiamata Trusted Execution Technology per garantire un avanzato supporto hardware del Trusted Computing.

L'esercito USA richiede che tutti i suoi computer ne siano dotati[20][21]; dal 3 luglio 2007 tutti i computer acquistati dal dipartimento della Difesa Americano devono essere dotati di chip TPM di versione 1.2[22]. La Commissione Europea finanzia un progetto open source per lo sviluppo del Trusted Computing chiamato OpenTC, che lavora a stretto contatto sia con diversi membri del gruppo, quali AMD, Hewlett-Packard e IBM, sia con importanti istituti accademici europei, tra cui l'Università di Cambridge e il Politecnico di Torino[23].

La più grossa critica al Trusted Computing Group viene invece dalla comunità legata al software libero. La Free Software Foundation nei propri articoli fa spesso riferimento al Trusted Computing come "Treacherous Computing", ovvero "informatica infìda"[24]. In Italia No1984, un gruppo il cui nome si ispira al noto romanzo di G. Orwell "1984", si pone fermamente contro questa nuova tecnologia e, ad oggi, ha tradotto in italiano un breve filmato divulgativo di critica al Trusted Computing[25] ed ha pubblicato vari articoli sull'argomento, assieme ad un elenco dei computer che contengono al proprio interno un chip TPM[26].

Critiche[modifica | modifica sorgente]

Fotogramma di un famoso video di informazione contro il Trusted Computing

Le voci critiche sul Trusted Computing sostengono che un suo effetto indesiderabile potrebbe essere quello di imporre restrizioni immotivate all'uso del computer da parte dei legittimi proprietari. Il livello di fiducia e sicurezza è, infatti, garantita dall'amministratore; molti utenti desktop non hanno tuttavia l'esperienza e le capacità d'amministrazione necessarie per operare politiche di sicurezza efficaci sulla propria stazione di lavoro, e le funzionalità del Trusted Computing hanno come obiettivo quello di sopperire alle carenze tecniche del proprietario del PC; l'implicazione denunciata dai critici è quella di privare il proprietario del diritto di decidere quale software usare per accedere a servizi offerti da altri computer in rete.

La disapprovazione del TC da parte di alcuni esperti di sicurezza[27] deriva dal fatto che tale tecnologia potrebbe aumentare la capacità di controllo dei sistemi da parte dei produttori hardware e software, in maniera che essi possano imporre quello che gli utenti hanno il diritto di fare con i propri dispositivi, e approfittarne per attuare meccanismi che minaccerebbero la libera competizione del mercato dell'Information and Communication Technology ed il libero sviluppo del software da parte dei singoli individui, come invece attualmente accade.

I critici inoltre sono preoccupati del fatto che non si può essere sicuri che l'hardware che implementa il TC sia realizzato correttamente e non contenga delle backdoor (meccanismi in grado di garantire l'accesso non autorizzato a chi ne conosce presenza e uso) o funzioni nascoste che possono rappresentare un rischio per la sicurezza del sistema e quindi, dipendentemente dall'ambito nel quale il sistema viene utilizzato, per la riservatezza o per la sicurezza di un'azienda o per la sicurezza nazionale. La paura nasce dal fatto che le specifiche del TC sono pubbliche ma non lo sono le relative implementazioni. Allo stesso modo, molti sono preoccupati che i modelli crittografici ed i relativi algoritmi utilizzati diventino obsoleti. Ciò potrebbe portare ad un'obsolescenza forzata dei computer con TC. Per esempio, nelle nuove versioni delle specifiche TC è stato aggiunto, e richiesto, l'algoritmo crittografico AES.

Mentre i sostenitori affermano che il Trusted Computing aumenta la sicurezza, i critici ribattono che non solo la sicurezza non ne trarrà alcun beneficio, ma il TC faciliterà anche la realizzazione di Digital Rights Management (DRM) di nuova generazione, lederà il diritto alla riservatezza e imporrà altre restrizioni agli utenti (legittimi proprietari del dispositivo). Affidare la gestione dei computer in rete ad autorità di controllo piuttosto che ai singoli individui potrebbe creare fenomeni di censura informatica. 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[senza fonte]. I sostenitori del secure computing sostengono che è possibile ottenere della sicurezza addizionale senza passare il controllo dei computer dagli utenti a dei super-utenti.

Come risposta a ciò, i sostenitori del TC ritengono che le preoccupazioni sulla riservatezza siano prive di basi, poiché i consumatori manterranno la scelta tra sistemi basata sulle loro necessità individuali. I sostenitori del TC asseriscono che alcune necessità richiedano dei cambiamenti a livello hardware per permettere al computer di agire come un sistema fidato, ricordando anche che, nel caso in cui non si intenda utilizzare tale tecnologia, il modulo TPM è rimovibile da un computer oppure completamente disattivabile attraverso il BIOS.

La natura della fiducia[modifica | modifica sorgente]

Il nome della tecnologia deriva da trust (in italiano "fiducia") ma assume un significato particolare: non significa che sia affidabile dal punto di vista dell'utente, ma piuttosto, secondo i detrattori del Trusted Computing, che debba essere considerato fidato secondo i canoni imposti dai produttori dei dispositivi, del software o dei contenuti multimediali che vengono fruiti attraverso questi dispositivi. Infatti i dispositivi che implementeranno tale tecnologia potranno, oltre che proteggere il software da manomissioni, imporre restrizioni su applicazioni ritenute non desiderabili dai produttori (ad esempio perché inaffidabili, pericolose per l'utente o, secondo i detrattori, per gli interessi del produttore stesso). La principale critica mossa al TC è quindi che non verrebbe implementato a causa della poca fiducia verso il mondo informatico da parte degli utenti, ma a causa della poca fiducia verso gli utenti da parte delle aziende aderenti al progetto.

Impossibilità di cambiare software[modifica | modifica sorgente]

Libertà di scegliere il proprio browser e il proprio lettore musicale

In precedenza è stato fatto l'esempio del diario. Il sealed storage, pur proteggendolo da codice maligno, secondo i critici non farebbe distinzione tra questi ed altri programmi utili, come quelli che potrebbero essere usati per convertire il diario in un nuovo formato o semplicemente editor migliori.

Un utente che volesse cambiare il programma per la gestione del proprio diario con uno alternativo (concorrente) potrebbe incontrare problemi come l'impossibilità per il nuovo programma per la gestione del diario di leggere le informazioni presenti nel vecchio, perché nel caso in cui l'applicazione che ha creato i dati faccia uso di sealed storage (ovvero il sistema utilizzi il TC) i dati creati sarebbero accessibili soltanto da questa e non dal nuovo programma. Secondo tali speculazioni l'utente potrebbe quindi essere impossibilitato a leggere o modificare le informazioni presenti nel proprio diario se non per mezzo del programma con quale esso è stato creato. Se l'editor originale non permettesse l'esportazione dei file in una versione non protetta da sealed storage, l'utente si ritroverebbe costretto all'uso di tale programma.

C'è chi teme che Microsoft o altri produttori di software possa usare questa funzionalità per impedire a programmi di automazione per l'ufficio come OpenOffice.org di leggere file prodotti con il pacchetto proprietario Office. La diffusione, ad esempio, di documenti Word in Rete da parte di una Pubblica Amministrazione o azienda dove Office è in uso da anni, costringerebbe tutti coloro che necessitano di leggere tali documenti ad acquistare una regolare licenza del pacchetto (ed eventualmente del sistema operativo Microsoft Windows).[28] Ciò, tuttavia, seppur tecnicamente possibile per Microsoft, non sarebbe legale, in quanto verrebbero violate le norme antitrust, atte a impedire il monopolio di un soggetto nel mercato.

Perdita del controllo sui propri dati[modifica | modifica sorgente]

I contestatori del TC, vista la presenza delle maggiori etichette musicali e cinematografiche nel TCG, contestano che l'obiettivo unico del Trusted Computing sia quello di supportare in modo più rigoroso il meccanismo di gestione dei diritti digitali o Digital Rights Management (DRM): una tecnologia per evitare che gli utenti condividano e utilizzino, senza autorizzazione, file coperti da diritti d'autore o privati.

Il Trusted Computing può essere usato per attuare meccanismi di DRM[29]. Ad esempio gli artisti potrebbero fornire delle regole su come la loro musica può essere utilizzata, al momento del download (scaricamento), in maniera tale che l'utente abbia la possibilità di fruire della loro opera solo un numero limitato di volte, a loro totale discrezione[30]. Inoltre potrebbero usare l'attestazione remota per inviare la loro musica solo ad un lettore musicale in grado di far rispettare le loro regole: il sealed storage impedirebbe all'utente di aprire il file con un altro lettore che non rispetta le restrizioni dell'editore, mentre il memory curtaining impedirebbe all'utente di fare una copia del file mentre esso viene riprodotto. Un eventuale watermark audio impedirebbe la riproduzione su sistemi trusted (muniti di supporto a TC) se l'utente registrasse il brano per via analogica con metodi convenzionali, ad esempio collegando l'uscita della scheda audio ad un impianto di registrazione.

Senza l'attestazione remota, questo problema non esisterebbe. L'utente potrebbe scaricare la canzone e riprodurla con un lettore che non rispetta le restrizioni dell'artista, o uno che permette la conversione della canzone in un formato "senza restrizioni" come l'MP3 o l'Ogg.

Difficoltà nel cambiare computer[modifica | modifica sorgente]

Con il Trusted Platform Module facente parte integrante e indivisibile del personal computer (ad esempio se è integrato nella CPU), tutte le identità digitali (le Attestation Identity Key) utilizzate per proteggere i dati e i contenuti multimediali legalmente acquisiti sono, di fatto, "al di fuori della portata dell'utente". Per un utente che voglia cambiare computer (ad esempio per malfunzionamento), oppure utilizzare i suoi dati su più di una piattaforma, secondo i critici, potrebbe rappresentare un problema.

Le specifiche del TCG prevedono una procedura per il trasferimento delle AIK ad un altro TPM[31], ma secondo i critici tale procedura non può essere semplice, in quanto aprirebbe la strada a possibili violazioni alle restrizioni delle licenze d'uso di software, o di contenuti protetti da proprietà intellettuale, che utilizzino sistemi DRM legati alla tecnologia del TC[senza fonte]. D'altro canto, chi volesse utilizzare l'infrastruttura TC del proprio computer per proteggere dati di cui è l'autore, vorrebbe avere la possibilità di trasferire facilmente tali dati anche su altri sistemi ai quali ha accesso, come è in grado di fare se utilizza soluzioni di protezione della privacy quali GPG o PGP.

Perdita dell'anonimato su Internet[modifica | modifica sorgente]

Poiché un computer con tecnologia TC è in grado di dichiarare la propria identità, secondo i critici sarà possibile per i venditori, ed altri in grado di sfruttare la funzionalità dell'attestazione, ottenere dati sull'identità dell'utente di quel computer con un elevato grado di precisione[senza fonte], nonostante il Trusted Computing, come detto sopra, utilizzi l'attestazione anonima.

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 subito 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[senza fonte]. Mentre chi propone il TC sostiene che gli acquisti in linea e le transizioni di denaro possano essere ritenute più sicure grazie all'attestazione remota, questa schedatura potrebbe causare la perdita dell'aspettativa di anonimato da parte dell'utente durante l'utilizzo di Internet.

L'unico dubbio che gli scettici si pongono è quello delle modalità di utilizzo effettive dei dati personali ottenuti, specie in paesi come l'Italia dove la normativa sul trattamento dei dati personali è molto severa.

Owner Override[modifica | modifica sorgente]

Una delle principali polemiche nasce perché il Trusted Computing protegge il sistema da tutte le interferenze, persino dal controllo del proprietario. Una semplice soluzione a questo problema è quella di lasciare al proprietario dell'elaboratore la possibilità di controllare queste protezioni. Questa operazione è denominata Owner Override ed attualmente è abbozzata soltanto come un suggerimento di modifica. Prevede la possibilità da parte del proprietario di "scavalcare" le protezioni imposte dal dispositivo TPM sui dati sensibili. Quando la Owner Override viene attivata, 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.

L'utente proprietario potrebbe decidere quindi di:

  • impedire l'attivazione del Trusted Platform Module;
  • alterare la propria identità, cioè la Attestation Identity Key;
  • generare false attestazioni;
  • gestire le proprie chiavi (non la Endorsement Key, ovviamente) salvate all'interno del TPM.

La prima funzionalità è disponibile su tutte le piattaforme dotate di TC. Attraverso il tool di configurazione del BIOS, il proprietario della macchina può disattivare completamente il TPM in modo che il computer si comporti come una macchina di vecchia generazione. Ciò potrebbe ovviamente incidere sulla possibilità di utilizzare software che ha come requisito minimo un TPM genuino, ossia un TPM che abbia una Endorsement Key riconosciuta come genuina dal server cui ci si vuole collegare. Con l'Attestazione Remota scavalcata, sarebbe possibile forzare l'elaboratore a generare false attestazioni – per esempio, certificati che indicano che si sta usando Internet Explorer quando in realtà si usa Mozilla Firefox. Invece di riportare quando il software è stato modificato, l'attestazione remota indicherebbe al contrario quando il software è stato cambiato senza il permesso del proprietario[32].

Alcuni membri del TCG hanno però contestato questa modifica, presentandola come la potenziale rovina del movimento TC [senza fonte]. L'Owner Override, se permettesse al proprietario di manipolare le informazioni di sicurezza, farebbe cadere l'intera idea di fiducia nei confronti degli elaboratori degli altri utenti, ossia il compito stesso dell'Attestazione Remota. 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 durante le transazioni in Rete.

Praticità del Trusted Computing[modifica | modifica sorgente]

I critici sostengono che il Trusted Computing abbia dei rilevanti problemi pratici: qualsiasi chip, incluso il TPM, può rompersi, e in quel caso deve essere aggiornato o sostituito. Ciò in alcuni casi, come per esempio il mancato backup delle chiavi di attestazione, comporterebbe per l'utente la perdita dell'accesso ai propri dati[33]: dati che possono essere di grande importanza e/o valore per l'utente stesso e che non potranno essere recuperati in alcun modo. Alcuni utenti ritengono che la possibilità di un tale evento sia inaccettabile. Un'altra critica molto pesante al TC è l'ipotetica impossibilità di accesso ai dati della macchina in caso di perdita delle password di accesso. Un sistema di crittografia automatica dei dati rende impossibile l'operazione di recupero dei dati (perché quasi sempre non è il sistema ad essere importante, ma i dati che contiene) per questo i sistemi di crittografia automatica vengono utilizzati solo in contesti relativamente ristretti. Basare i diritti d'accesso ai dati o l'identificazione dell'utente sull'identità verificabile di un qualche componente hardware pone inoltre il problema di come smaltire i rifiuti elettronici.

Voci correlate[modifica | modifica sorgente]

Note[modifica | modifica sorgente]

  1. ^ (EN) TPM Design Principles - Specification Version 1.2 - Level 2, Revision 103, sezione 38, "Revoke Trust"
  2. ^ (EN) Trusted Computing Fact Sheet
  3. ^ Asus presenta la nuova linea di schede madri compatibili con Windows Vista
  4. ^ (EN) TCG TPM Specification Design Principles, versione 1.2, revisione 103, pagina 16 e successive
  5. ^ (EN) Intel Trusted Execution Technology Architectural Overview - Pagina 3, Protected Graphics
  6. ^ (EN) OpenTC -D02.2 Requirements Definition and Specification - Pagina 90
  7. ^ (EN) Slide sul Trusted Storage
  8. ^ (EN) The Register - Trusted Storage Specs near to completion
  9. ^ (EN) Registro dei cambiamenti in Linux 2.6.13
  10. ^ Infineon Security Platform nel Sony Vaio TX3XP
  11. ^ Utility per la sicurezza nei notebook Acer
  12. ^ (EN) Trusted Computing for the Java Platform
  13. ^ (EN) Trousers Home Page
  14. ^ (EN) TrustedGrub su SourgeForge.net
  15. ^ (EN) Trusted Network Connect FAQ
  16. ^ Ferguson, Niels, AES-CBC + Elephant: A Disk Encryption Algorithm for Windows Vista, Microsoft TechNet, agosto 2006.
  17. ^ (EN) Enforcer Home Page
  18. ^ (EN) Turaya.Crypt Device Encryption Information
  19. ^ (EN) https://www.trustedcomputinggroup.org/about/members/
  20. ^ (EN) U.S. Army requires trusted computing
  21. ^ (EN) strategic goal n. 3 , "deliver a joint netcentric information that enables warfighter decision superiority", October 2006
  22. ^ (EN) http://iase.disa.mil/policy-guidance/dod-dar-tpm-decree07-03-07.pdf
  23. ^ (EN) OpenTC Partners
  24. ^ Richard Stallman - Puoi fidarti del tuo computer?
  25. ^ Filmato di critica sul Trusted Computing
  26. ^ Hardware TC-compliant - no1984.org
  27. ^ (EN) Trusted Computing' Frequently Asked Questions - Ross Anderson
  28. ^ (EN) Electronic Frontier Foundation - Meditations on Trusted Computing
  29. ^ (EN) Authenticated Booting, Remote Attestation, Sealed Memory aka “Trusted Computing”
  30. ^ (EN) Digital Rights Management Demonstrator - Requirements, Analysis, and Design
  31. ^ Trusted Computing - The RTM and the TPM Infrastructure Group Working Activity, Royal Holloway University of London
  32. ^ (EN) Trusted Computing: Promise and Risk - Electronic Frontier Foundation
  33. ^ (EN) Cosa succede ai miei dati se il TPM si rompe? ,Trousers FAQ

Altri progetti[modifica | modifica sorgente]

Collegamenti esterni[modifica | modifica sorgente]

Siti e documentazioni ufficiali[modifica | modifica sorgente]

Discussione e informazione sul Trusted Computing[modifica | modifica sorgente]

Sostenitori del Trusted Computing[modifica | modifica sorgente]

Oppositori del Trusted Computing[modifica | modifica sorgente]

Progetti che fanno uso di Trusted Computing[modifica | modifica sorgente]

  • (EN) openTC - Progetto sponsorizzato dalla UE per creare software open source che sfrutti il TC
  • (EN) TrouSerS - The Open Source TCG Stack
  • (EN) Enforcer - Driver Linux per l'utilizzo di Trusted Computing
  • (EN) Trusted Java - API Java per Trusted Computing
Sicurezza informatica Portale Sicurezza informatica: accedi alle voci di Wikipedia che trattano di Sicurezza informatica