logo SBA

ETD

Archivio digitale delle tesi discusse presso l’Università di Pisa

Tesi etd-11062007-115601


Tipo di tesi
Tesi di laurea specialistica
Autore
FABBRI, FRANCESCA
URN
etd-11062007-115601
Titolo
PROGETTO E REALIZZAZIONE DI UN PROTOCOLLO DI VERIFICA DELL'AFFIDABILITA' DI UN TERMINALE REMOTO
Dipartimento
INGEGNERIA
Corso di studi
INGEGNERIA INFORMATICA
Relatori
Relatore Dini, Gianluca
Relatore Bernardeschi, Cinzia
Relatore Lupetti, Simone
Parole chiave
  • untrusted terminal problem
Data inizio appello
04/12/2007
Consultabilità
Non consultabile
Data di rilascio
04/12/2047
Riassunto
La Tesi propone il progetto e l’implementazione di un protocollo in grado di verificare l’affidabilità di un terminale remoto, grazie all’utilizzo delle tecnologie offerte dal Trusted Computing Technology (TPM, TSS, etc). Tramite la cosiddetta Remote Attestation, una piattaforma locale, quale un PC o un dispositivo mobile, è in grado di autenticare la configurazione hardware e software di una piattaforma remota, in modo da ottenere un certo grado di fiducia in quest’ultima. Tutto questo può essere particolarmente utile nel caso in cui un utente voglia utilizzare dei terminali pubblici, come in un Internet Cafè oppure nelle sale degli hotel, senza avere il timore che altre persone entrino in possesso dei propri dati sensibili (tramite la presenza di virus, malware, etc all’interno del terminale).
Il protocollo che viene proposto utilizza un dispositivo mobile fidato, come un normale cellulare, per verificare lo stato software del terminale. Esistono due varianti del protocollo: nella prima, il dispositivo mobile non ha sufficienti funzionalità per fare tutto autonomamente quindi l’utente si avvale del supporto di un server remoto fidato in grado di eseguire la Remote Attestation; nella seconda, invece, l’utente utilizza un dispositivo con maggiori capacità tanto da eseguire la Remote Attestation senza l’ausilio di nessun altro componente. Entrambi le varianti sono state implementate utilizzando il linguaggio di programmazione Java (J2SE/J2ME), in modo da verificare il reale funzionamento del protocollo. Sia il TPM emulator versione 0.5 (Strasser, M., 2006), un'implementazione software delle funzionalità offerte da un TPM hardware, sia IAIK JTSS versione 0.1 (Winkler, T.,2007), l'implementazione per il linguaggio di programmazione java del TSS, vengono utilizzati per la realizzazione del protocollo. Inoltre la correttezza del protocollo è stata dimostrata utilizzando la logica BAN.


The Thesis presents a way to remotely verify untrusted terminals using the
technologies that comply with the specifications of the Trusted Computing Group
(https://www.trustedcomputinggroup.org). A local platform, i.e., a PC or a mobile
phone, can authenticate the hardware/software configuration of a remote platform,
by means of the socalled
Remote Attestation, in order to give the user confidence
on the trustworthiness of the this platform. This technique is useful in scenarios
such as when a user wants to use a public terminal (for example, in an Internet Café
or in a hotel lounge), but he does not want that his sensitive data are stolen by third
parties thanks to the presence of malicious codes in the terminal.
The proposed verification technique leverages Remote Attestation and uses a
trusted personal device (e.g., a cellphone) to verify the configuration of a remote
untrusted terminal. There are two variations of the technique, that capture two
different application scenarios. In one scenario, the personal device is not powerful
enough to perform Remote Attestation, so the user exploits a trusted remote server
that performs the Remote Attestation on behalf of the user. In the other scenario, the
personal device is capable of carrying on a Remote Attestation.
Early prototypes of both variations have been implemented using the Java
programming language (J2SE and J2ME) in order to test the proposed the
verification technique at the functional level. In particular, we have used the TPM
emulator version 0.5 (Strasser, M., 2006), a software package for Linux operating
systems providing TPM functionality as a pure software implementation, and the
IAIK JTSS version 0.1 (Winkler, T., 2007), an implementation of the TCG Software
Stack (TSS) for the Java ™ programming language. Finally, the correctness of the
protocols for both scenarios has been verified using the BAN logic.
File