jump to navigation

Trusted Computing: perdita di controllo e possibili soluzioni. January 27, 2006

Posted by laspinanelfianco in Trusted Computing.
trackback

Si dice spesso che il Trusted Computing sottrae “controllo” al proprietario del computer ma, esattamente, questo come avviene? La perdita di controllo si ha sostanzialmente a causa delle seguenti due caratteristiche del Trusted Computing.

Endorsement Key

L’Endorsement Key (“chiave di approvazione” o qualcosa di simile) è una coppia di chiavi RSA (pubblica/privata) a 2048 bit che viene generata e memorizzata all’interno del TPM (il “Fritz Chip”) al momento della produzione. Questa coppia di chiavi identifica in maniera univoca il chip e, di conseguenza, il sistema su cui è installato. Questa coppia di chiavi non può essere cancellata, rimossa, modificata, sovrascritta, cambiata, copiata o trasferita all’esterno del chip. In pratica, è come se fosse fisicamente “incisa” nel silicio.

Le specifiche del Trusted Computing Group prevedono che questa coppia di chiavi non venga usata per identificare l’utente ma solo il chip. L’utente viene identificato da una delle infinite chiavi di attestazione che l’utente può generare grazie al chip e che può associare ad altrettante “identità virtuali”, una per ogni applicazione che richiede questo tipo di identificazione. In questo modo l’utente può avere una identità crittografica (cioè una “password”) per giocare a Doom in rete ed una per l’Home Banking.

Sfortunatamente, il software (scritto da altri e che può essere per voi assolutamente inaccessibile perchè cifrato) può accedere liberamente a questa coppia di chiavi e quindi può identificarvi liberamente (identificando il sistema e l’utente attivo). Questa è una delle specifiche del Trusted Computing Group, non un errore di implementazione: serve al software per sapere su quale sistema sta girando e quale utente sta usando il programma (e per gestire la licenza d’uso di conseguenza). Se esiste un modo di impedire al software di leggere la Endorsement Key ed usarla per identificarvi in modo univoco (trasferendo, se del caso, questa informazione ad un altro sistema in rete attraverso un canale cifrato), io non sono riuscito a trovarlo. David Safford stesso, nel suo famoso “Rebuttal“, ammette che a questa evidente violazione della privacy non c’è una vera soluzione (David Safford è un ricercatore dell’IBM ed uno dei più autorevoli sostenitori del Trusted Computing). Ecco cosa dice a pagina 4 del suo documento:

There is certainly a privacy aspect of access to the endorsement key, as it uniquely
identifies the platform, and the TCPA specification goes to great lengths to allow for anonymous certification. The best defense for privacy conscious users is simply to turn off the endorsement key.

Disabilitare la endorsement key equivale a mettere fuori uso il Fritz Chip (non in modo definitivo) ed a tagliare fuori l’utente dal mondo TC-compliant che si sta preparando all’orizzonte: niente accesso ai documenti TC prodotti da altri, niente accesso a musica e film protetti da sistemi TC e via dicendo.

Remote Attestation

La remote attestation (“attestazione remota”, cioè qualcosa come “certificazione remota”) è una funzionalità del Fritz Chip che permette ad un utente remoto (la vostra banca, un vostro amico che gioca con voi a Doom in rete, etc.) se il vostro sistema è stato modificato rispetto ad un momento iniziale noto in cui il vostro sistema è stato “fotografato” con un apposito hash digitale. Vi prego di notare due cose:

  • l’attestazione remota può essere usata da un altra persona o da un programma, anche attraverso la rete, per sapere se il vostro sistema è stato cambiato. In altri termini: è sotto la vostra gonna che stanno guardando.
  • questa funzionalità serve anche per sapere se voi avete cambiato il vostro sistema. In altri termini: non potete cambiare il vostro sistema di nascosto. Infatti, voi non potete interferire con questo processo in alcun modo: non potete nascondere informazioni al vostro interlocutore e non potete mentire.

Ovviamente, questa funzionalità serve per scoprire se state usando software od hardware diverso da quello che era presente al momento in cui il vostro sistema è stato “certificato”, in modo da impedirvi, ad esempio, di copiare abusivamente file da internet usando programmi “pirateschi” che si spacciano per “orginali”.

Sono questi i due elementi che producono la famigerata “perdita di controllo” del proprietario/utente sul suo sistema: l’utente è costretto a lasciarsi riconoscere (dal software) e l’utente è costretto a permettere che un estraneo (persona o software) verifichi con matematica certezza come è configurato il suo sistema.

Questa perdita di controllo avviene in un punto che coincide con la “radice logica” di qualunque possibile “albero degli elementi di controllo” che l’utente può avere a disposizione sul suo PC e quindi ha delle conseguenze devastanti. Senza poter (benevolmente) “mentire” o tacere sulla sua identità, l’utente è completamente espropriato della sua privacy. Senza poter decidere cosa un estraneo abbia il diritto di sapere sul conto della sua macchina, l’utente è nelle mani di questo estraneo per quanto riguarda le decisioni sul software da usare e quindi sulle operazioni che sarà possibile effettuare. Può fare solo ciò che sta bene al suo potentissimo sorvegliante remoto.

Owner override

Questa perdita di controllo non è certo sfuggita agli osservatori tecnici e quasi subito sono state proposte delle modifiche alle specifiche del Trusted Computing Group. In particolare Seth Schoen di EFF ha proposto una soluzione chiamata “Owner Override” (“Sovrascrittura del proprietario”, o qualcosa di simile). L’owner override consiste sostanzialmente nel concedere al proprietario del sistema (che può essere una persona diversa dall’utente momentaneo) di “sovrascrivere” il certificato che il Fritz Chip fornisce come risposta ad una richiesta di “remote attestation”. In pratica, questa tecnica consiste nel mentire scientemente al proprio interlocutore remoto facendogli credere che il proprio PC è configurato in modo diverso da quello reale.

L’owner override permette di decidere liberamente cosa un estraneo (persona o programma) possa scoprire riguardo alla struttura del nostro sistema informatico. In pratica, permette di dare a questo estraneo solo la certezza che il nostro sistema non sia stato modificato a nostra insaputa, ad esempio da un virus, impedendogli invece di sapere se il nostro sistema è stato modificato da noi, con nostra piena consapevolezza.

L’owner ovverride risolve solo il secondo dei due problemi elencati, cioè quello legato alla attestazione remota. La perdita di “anonimato” che consegue alla presenza delle Endorsement Key, rimane inalterata.

Oltre a questo, l’owner override è già stato esplicitamente rifiutato, tacciandolo di inapplicabilità, da autorevoli portavoce di IBM e del TCG, tra cui David Safford. Non verrà quindi utilizzato da nessuno dei produttori coinvolti nel progetto Trusted Computing.

Molti osservatori leggono in questo rifiuto di discutere di possibili, radicali cambiamenti delle specifiche del TC un evidente volontà delle aziende di imporre agli utenti una tecnologia lesiva dei loro diritti senza alcuna discussione democratica.

Il documento originale di Seth Schoen è disponibile qui:

TCPA: Promise and risks

La traduzione in italiano, in formato PDF ed a cura di VedoVa_NeRa di P2PForum è disponibile qui:

TCPA: Promesse e Rischi

Comments»

1. Blog navigabile a history » Trusted Computing: perdita di controllo e possibili soluzioni. - March 18, 2006

[…] Questo post è tratto da: Trusted Computing: perdita di controllo e possibili soluzioni., di Alessandro Bottoni Indice “Visitati e Mancanti”   >> Next “Mancante” […]


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: