home page link area riservata e-mail
Dipartimento di Informatica Università di Verona
Regione Veneto
 
PRESENTAZIONE UFFICIALE
DEL 19 DICEMBRE 2007


DOCUMENTAZIONE
DEMO
PEOPLE
FILMATI

ANALISI DEI PRESUPPOSTI
Software watermarking e code obfuscation sono due tecniche d'avanguardia per la tutela del software, e rappresentano gli approcci più promettenti per la protezione della proprietà intellettuale dei programmi.
Elenchiamo nel seguito rilevanti e recenti lavori nel campo dell'offuscamento e del watermarking di codice:

1. Mila Dalla Preda, Matias Madou, Koen De Bosschere and Roberto Giacobazzi. Opaque Predicates Detection by Abstract Interpretation, 2006.
2. Mila Dalla Preda and Roberto Giacobazzi. Control Code Obfuscation by Abstract Interpretation, 2005.
3. Mila Dalla Preda and Roberto Giacobazzi. Semantic-based Code Obfuscation by Abstract Interpretation,2005.
4. Ginger Myles and Christian Collberg, Software Watermarking via Opaque Predicates: Implementation, Analysis, and Attack, 2004.
5. Sharat Kodi Udupta, Saumya Debray and Matias Madou, Deobfuscation: Reverse Engineering Obfuscated Code, 2005.

Offuscamento e watermarking di codice possono anche essere combinati tra loro. Ad esempio si può pensare di prendere un programma, inserire la firma, e quindi offuscare il tutto per impedire ad un utente maleintenzionato di modificare la proprietà intellettuale. Esistono già dei prototipi per l'offuscamento di codice e il software watermarking: DIABLO è stato sviluppato in Belgio dall'università di Ghent e
SANDMARK è stato sviluppato in Arizona (U.S.A) dall'università di Tucson. Questi prototipi permettono di applicare tecniche note di offuscamento di codice e di software watermarking a programmi scritti in C++ e in Java. Il punto debole di questi prototipi e delle tecnologie che implementano è legato al fatto che essi si basano principalmente su sperimentazioni. Ovvero le trasfromazioni di codice che vengono fornite sono state sviluppate ad hoc per una certa classe di programmi e facendo delle assunzioni generali (dettate dall'osservazione della realtà) sulle capacità e le risorse a disposizione degli utenti maleintenzionati. Queste tecniche in generale funzionano ma hanno una derivazione sperimentale, nata cioè dall'osservazione di
caratteristiche di programmi che aiutano o ostacolano la violazione della prorietà intellettuale (es: maggiore è il numero delle linee di codice, il numero di cicli annidati..., maggiore sono le risorse necessarie per farne il reverse engineering). Quello che manca è la costruzione di un modello formale del problema e delle possibili
soluzioni, in grado di poter affermare con rigorosità matematica il livello di protezione garantito dall'applicazione di certe trasformazioni e allo stesso tempo che possa suggerire nuove forme di protezione.


 
 
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 
2007 © Copyright FAS-NET COMUNICAZIONE. Tutti i diritti riservati. 
 
richiesta informazioni