Salta la navigazione


Phobos(default)

Ringrazio phobos(default)per il bellissimo post che mi ha inviato per email.

Spero che la sua collaborazione con il blog di Sabayon-mania continui con altri articoli interessanti come questo.

Trusted Computing:

Trusted Computing:
IL TPM, ovvero l’acronimo di Trusted Platform Module(modulo per una piattaforma fidata),
è un chip che oggi è presente in molti dispositivi elettronici, dai pc (sia fissi che portatili) ai cellulari e così via….Questo chip segue le specifiche del TCG, ovvero un consorzio fondato dalle pricipali industrie produttrici di hardware e software al mondo tra le quali: AMD, HP, IBM, Intel, Microsoft, Sony, SunMicrosystem alle quali si sono affiancate quasi tutte le restanti aziende. L’obiettivo principale del TCG è quello di sviluppare un chip da poter includere in tutti i pc in modo da abilitarne le funzionalità del trusted computing.
Le principali funzionalità del trusted computing riguardano la sicurezza fornendo:

-Generazione sicura di chiavi crittografiche
-Generazione di numeri casuali
-Attestazione remota
-Sealing
-Binding

Generazione sicura di chiavi crittografiche e numeri casuali:
Al giorno d’oggi principalmente ci sono due tipi di metodi crittografici:
-crittografia simmetrica;
-crittografia asimmetrica.

Crittografia simmetrica:
La crittografia simmetrica tradizionale si basa sul concetto di valore segreto condiviso (la chiave), da distribuirsi tra tutte le parti coinvolte nella comunicazione riservata. La chiave è necessaria e sufficiente per cifrare e successivamente decifrare le informazioni trasferite, in modo tale che un terzo soggetto in ascolto, anche se a conoscenza del metodo crittografico, non riesca a comprendere il messaggio.
In questo metodo la necessità di avere un segreto condiviso ha reso tale procedura non sempre pratica, principalmente per il fatto che i soggetti devono stabilire un canale di comunicazione sicuro prima di cominciare lo scambio dei messaggi, infatti trasferire il segreto su un canale non sicuro renderebbe lo schema molto vulnerabile. Nel mondo dei computer, si comunica spesso con sistemi ed utenti mai conosciuti in precedenza, pertanto non esiste a priori un canale di comunicazione sicuro.
Crittografia asimmetrica:
La crittografia asimmetrica, non si basa su un segreto condiviso. Ogni soggetto
detiene due informazioni: una (la chiave pubblica) serve per creare un messaggio
cifrato, ma è inutilizzabile per la decifrazione, mentre l’altra (la chiave privata)
serve per decifrare il messaggio precedentemente cifrato. In questo modo i soggetti che intervengono nello scambio di messaggi si possono scambiare rispettivamente le chiavi pubbliche utilizzando un canale non sicuro, non curandosi del fatto che vi sia una terza persona in ascolto. Per questo tipo di crittografia viene utilizzato l’algoritmo RSA,che si basa sull’osservazione del fatto che la complessità di calcolo insita nella moltiplicazione di due numeri di grandezza arbitraria è piuttosto bassa, essendo direttamente proporzionale al numero di cifre da moltiplicare. Al contrario, la complessità insita nella fattorizzazione di un grande numero è molto più elevata.
L’algoritmo RSA per prima cosa sceglie due numeri primi (divisibili solo per se stessi o per 1) arbitrari e molto grandi p e q e li moltiplica. A questo punto utilizza il prodotto con il coprimo (p-1)(q-1) (dove per coprimo intendiamo quando due numeri hanno nessun altro divisore comune eccetto 1 e -1) per costruire la chiave pubblica. Come detto prima, questa chiave può essere utilizzata per cifrare le informazioni, ma da sola non è sufficiente per la decifrazione, a meno di ricorrere alla fattorizzazione.
Il punto è che la fattorizzazione del prodotto di due grandi numeri primi è spesso
impossibile alla pratica, rendendo vano ogni attacco. Il problema si trova
nell’implementazione di un tale algoritmo su una macchina deterministica, dato che il calcolatore non trova nessuna difficoltà nel trovare due numeri primi molto grandi, purtroppo però nessun altro deve poter indovinare quali siano questi due numeri primi,e questi ultimi non possono essere gli stessi su ogni macchina. Tuttavia per generare un numero primo realmente imprevedibile, occorre introdurre una buona dose di casualità.
Da questa necessità sono nati i PRNG(Pseudo-Random Number Generators) ovvero generatore di numeri pseudo-casuali. I PRNG per poter generare numeri abbastanza casuali devono poter usufruire di fonti di entropia(casualità). Fonti di entropia possono essere le periferiche esterne. Su quasi tutti i computer, le periferiche esterne comunicano rilevanti eventi asincroni, quali le informazioni che si rendono disponibili sulla scheda di rete o sulla tastiera, utilizzando il meccanismo degli interrupt hardware. Ad ogni dispositivo è associato a un numero di interrupt hardware (IRQ) e riferisce degli eventi che verificano su di esso modificando la tensione della linea hardware designata all’interno del computer, corrispondente proprio all’ IRQ in questione.
Purtroppo anche questo sistema di crittografia può essere oggetto di attacco,
pertanto numerose piattaforme hardware odierne implementano generatori di numeri casuali fisici, denominati TRNG(True Random Number Generators) ovvero generatori di numeri realmente casuali. Questi dispositivi riescono produrre in maniera più affidabile dati realmente imprevedibili. Alcuni di questi dispositivi hanno uno schema a due oscillatori. L’oscillatore ad alta frequenza genera un segnale base, che è sostanzialmente una successione di stati logici alternati(101010101010). L’altro oscillatore è un dispositivo a bassa frequenza, cha lavora nominalmente a una frequenza di 1/100 rispetto a quello ad alta velocità, ma la cui frequenza reale è modulata da un resistore che serve da fonte principale di entropia. Alcune caratteristiche misurabili di un resistore cambiano per l’effetto del rumore termico e altri fenomeni casuali del materiale. Il TPM fornisce il supporto hardware per le operazioni appena descritte.

Attestazione Remota:

L’attestazione remota permette a terzi di poter interrogare il sistema e conoscerne il suo stato, rilevando pertanto, anche le possibili variazioni, evitando in questo modo l’invio di informazioni riservate da un computer compromesso. L’attestazione remota si basa su un Certificato Digitale(un documento elettronico che associa l’identità di una persona ad una chiave pubblica) generato dall’hardware, che riporta quali software sono in esecuzione al momento.

Sealing:

Letteralmente significa sigillamento dei dati, permette una criptazione degli stessi usando una certa configurazione, una combinazione tra hardware e software, che dovrà rimanere invariata fino alla loro decriptazione.

Binding:

Il binding, che significa collegamento dei dati al TPM, cifra i dati usando una chiave di approvazione (una chiave RSA identificata univocamente al TPM stesso), garantendo, in questo modo, che i dati siano decifrati solamente da quel TPM
Queste sono principalmente le funzioni fornite dal TPM, ora c’è da prendere in considerazione questo schema logico….

Trattandosi di un sistema crittografico, o “interdittivo”, il Trusted Computing obbedisce ad un modello dove un “attore” crea il suo perimetro di controllo e, da quel punto a scendere, gli altri devono stare alle sue regole. Questo è un punto cruciale per capire come funziona il Trusted Computing. Non esiste un ente superiore che “delega” il potere all’attore. Non c’è nessuno che “certifichi” i programmi o che li possa rendere utilizzabili. Ogni attore utilizza la piattaforma crittografica messa a disposizione dal TPM per creare il suo personale “dominio”. Da quel punto in poi, chiunque voglia accedere a quel dominio deve sottostare alle sue leggi, qualunque esse siano.

Più in dettaglio:
1.L’utente, che è l’ultima ruota del carro in questo schema, può usare le funzionalità crittografiche del TPM per creare un perimetro di sicurezza intorno ai suoi documenti. Chiunque voglia accedere a queste sue risorse deve sottostare alle sue leggi (in pratica, siamo di fronte ad un sistema ERM, “Enterprise Rights Management”).
2.I produttori di software possono sfruttare le funzionalità crittografiche del TPM per creare un perimetro di sicurezza che protegga i loro programmi ed i dati usati dai loro programmi. Dato che il “punto di ingresso” nel sistema dei produttori del software si trova al di sopra di quello degli utenti, gli utenti devono sottostare alle regole dei produttori di software. Ovviamente, i venditori di contenuti sfruttano le funzionalità offerte da questi programmi per creare un perimetro di sicurezza attorno ai loro contenuti e si trovano quindi in una posizione intermedia tra il produttore del software e l’utente. Questo è il DRM (Digital Right Management).
3.Chi produce il sistema operativo, si trova in una posizione superiore a chi crea il software applicativo e quindi può imporre le sue leggi sui produttori di software. Ad esempio, può decidere quali programmi possono girare sulla sua piattaforma.
4.Chi produce il BIOS, si trova in una posizione ancora più alta e può decidere quale sistema operativo può essere caricato.
5.Chi produce l’hardware si trova in una posizione ancora più alta e può decidere che BIOS può essere caricato.
6.Chi fa le leggi che vigono nel paese in cui viene prodotto l’hardware può controllare tutta questa catena di poteri.
C’è da notare ancora una volta come non esista un “ente di certificazione superiore”. Non ce né bisogno: ogni attore crea e gestisce tutto il potere di controllo a cui può materialmente aspirare. Dal suo punto di ingresso nel sistema (la “Root of Control”) a scendere ogni attore agisce da ente di certificazione supremo, senza bisogno delle autorizzazioni, delle certificazioni o delle benedizioni di nessun’altro.
Questo articoletto da me fatto punta a sottolineare i possibili pregi e difetti del TPM, dove
nel nome della sicurezza (cifratura migliore..etc etc)viene pagato un prezzo da me considerato troppo alto, come ad esempio la libertà di scelta dei possibili programmi utilizzabili sul pc, per poi cosa, difendere le copyright delle multinazionali?

by Phobos(default)

Fonti:
Il Rumore dell’Hacking di Michael Zalewski
Wikipedia
La Spina nel Fianco

Annunci

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione /  Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...

%d blogger hanno fatto clic su Mi Piace per questo: