Skip to content

Tecniche di protezione del software in Java Bytecode

In questa tesi vengono presentate alcune tecniche completamente originali, cioè ideate dall'autore, di offuscamento e watermarking di programmi Java Bytecode.

La tecnica di offuscamento presentata sfrutta la difficoltà presente in tutti i decompilatori Java testati (Jad, Jode, Source Again, Soot) di tradurre ad alto livello un particolare tipo di istruzioni Java Bytecode. La potenza di questa tecnica sta nel fatto che il codice ad alto livello generato dai decompilatori che operano su programmi Java Bytecode offuscati è o non ricompilabile, in quanto sintatticamente errato, oppure sintatticamente corretto ma semanticamente differente rispetto al codice originale.

La tecnica di watermarking sfrutta alcune caratteristiche dell'offuscamento introdotto in precedenza e sfrutta inoltre l'operazione della composizione di offuscamenti, la quale, usata in modo opportuno, porta a dei risultati molto interessanti.

CONSULTA INTEGRALMENTE QUESTA TESI

La consultazione è esclusivamente in formato digitale .PDF

Acquista
Mostra/Nascondi contenuto.
Introduzione Il Java e` ormai divenuto uno dei linguaggi di programmazione piu` diffusi e apprezzati. I programmi scritti in Java, infatti, godono di almeno due caratteristiche che la maggior parte degli altri linguaggi non riescono a sod- disfare: la portabilita`, cioe` la possibilita` di eseguire lo stesso programma su piattaforme hardware e software differenti, e la sicurezza, poiche´ la politica di questo linguaggio impedisce alla gran parte dei codici malevoli di creare danni nel computer su cui sono eseguiti. Questa seconda caratteristica, in particolare, e` quella che ha favorito la grande diffusione delle applet Java, cioe` vero e proprio codice Java che viene inserito all’interno di una pagina WEB e viene in seguito scaricato ed eseguito nel computer del client che visualizza questa pagina. D’altro canto, il linguaggio Java presenta anche una caratteristica che in molti casi non e` desiderabile, cioe` la relativa facilita` con cui, dato un codice eseguibile, e` possibile risalire al codice ad alto livello originario. Un programma scritto in Java, infatti, una volta compilato viene trasformato in un altro programma, avente la stessa semantica, scritto nel linguaggio inter- medio (cioe` ne´ ad alto ne´ a basso livello) Java Bytecode, solitamente salvato in un file con l’estensione .class. Il problema e` che questi file .class con- tengono al loro interno una grande quantita` di informazione su quello che era il proprio codice sorgente, quindi e` relativamente facile creare dei pro- grammi, chiamati decompilatori, che, partendo da un file .class, riescano a ricostruire il suo codice ad alto livello. Abbiamo detto che questo non e` un fatto apprezzabile, in quanto permette ad un possibile nostro concorrente di impossessarsi della nostra proprieta` intellettuale, e magari di “rubarci” qualche pezzo di codice particolarmente innovativo al fine di inserirlo in un proprio programma e di farci concorrenza sleale. L’obbiettivo principale di questa tesi sara` quello di presentare alcuni metodi per contrastare i “furti” di questo tipo in due modi: attraverso l’offuscamento di codice e attraverso il watermarking. La finalita` dell’offu- scamento di codice e` quella di applicare ad un programma alcune trasforma- zioni che non influiscano sulla sua semantica, ma che introducano un certo grado di confusione e di incomprensibilita` della sua logica interna, al fine di ostacolarne la comprensione e quindi lo scippo delle nostre idee. Il water- marking invece e` l’introduzione all’interno di un programma di una sorta di xiii

CONSULTA INTEGRALMENTE QUESTA TESI

La consultazione è esclusivamente in formato digitale .PDF

Acquista
Il miglior software antiplagio

L'unico servizio antiplagio competitivo nel prezzo che garantisce l'aiuto della nostra redazione nel controllo dei risultati.
Analisi sicura e anonima al 100%!
Ottieni un Certificato Antiplagio dopo la valutazione.

Informazioni tesi

  Autore: Alessandro Brunelli
  Tipo: Laurea II ciclo (magistrale o specialistica)
  Anno: 2006-07
  Università: Università degli Studi di Verona
  Facoltà: Scienze Matematiche, Fisiche e Naturali
  Corso: Informatica
  Relatore: Roberto Giacobazzi
  Lingua: Italiano
  Num. pagine: 99

FAQ

Per consultare la tesi è necessario essere registrati e acquistare la consultazione integrale del file, al costo di 29,89€.
Il pagamento può essere effettuato tramite carta di credito/carta prepagata, PayPal, bonifico bancario.
Confermato il pagamento si potrà consultare i file esclusivamente in formato .PDF accedendo alla propria Home Personale. Si potrà quindi procedere a salvare o stampare il file.
Maggiori informazioni
Ingiustamente snobbata durante le ricerche bibliografiche, una tesi di laurea si rivela decisamente utile:
  • perché affronta un singolo argomento in modo sintetico e specifico come altri testi non fanno;
  • perché è un lavoro originale che si basa su una ricerca bibliografica accurata;
  • perché, a differenza di altri materiali che puoi reperire online, una tesi di laurea è stata verificata da un docente universitario e dalla commissione in sede d'esame. La nostra redazione inoltre controlla prima della pubblicazione la completezza dei materiali e, dal 2009, anche l'originalità della tesi attraverso il software antiplagio Compilatio.net.
  • L'utilizzo della consultazione integrale della tesi da parte dell'Utente che ne acquista il diritto è da considerarsi esclusivamente privato.
  • Nel caso in cui l’utente che consulta la tesi volesse citarne alcune parti, dovrà inserire correttamente la fonte, come si cita un qualsiasi altro testo di riferimento bibliografico.
  • L'Utente è l'unico ed esclusivo responsabile del materiale di cui acquista il diritto alla consultazione. Si impegna a non divulgare a mezzo stampa, editoria in genere, televisione, radio, Internet e/o qualsiasi altro mezzo divulgativo esistente o che venisse inventato, il contenuto della tesi che consulta o stralci della medesima. Verrà perseguito legalmente nel caso di riproduzione totale e/o parziale su qualsiasi mezzo e/o su qualsiasi supporto, nel caso di divulgazione nonché nel caso di ricavo economico derivante dallo sfruttamento del diritto acquisito.
L'obiettivo di Tesionline è quello di rendere accessibile a una platea il più possibile vasta il patrimonio di cultura e conoscenza contenuto nelle tesi.
Per raggiungerlo, è fondamentale superare la barriera rappresentata dalla lingua. Ecco perché cerchiamo persone disponibili ad effettuare la traduzione delle tesi pubblicate nel nostro sito.
Per tradurre questa tesi clicca qui »
Scopri come funziona »

DUBBI? Contattaci

Contatta la redazione a
[email protected]

Ci trovi su Skype (redazione_tesi)
dalle 9:00 alle 13:00

Oppure vieni a trovarci su

Parole chiave

bytecode
cfg
ddg
flower
java
obfuscation
offuscamento
proprietà intellettuale
virtual machine
watermarking

Tesi correlate


Non hai trovato quello che cercavi?


Abbiamo più di 45.000 Tesi di Laurea: cerca nel nostro database

Oppure consulta la sezione dedicata ad appunti universitari selezionati e pubblicati dalla nostra redazione

Ottimizza la tua ricerca:

  • individua con precisione le parole chiave specifiche della tua ricerca
  • elimina i termini non significativi (aggettivi, articoli, avverbi...)
  • se non hai risultati amplia la ricerca con termini via via più generici (ad esempio da "anziano oncologico" a "paziente oncologico")
  • utilizza la ricerca avanzata
  • utilizza gli operatori booleani (and, or, "")

Idee per la tesi?

Scopri le migliori tesi scelte da noi sugli argomenti recenti


Come si scrive una tesi di laurea?


A quale cattedra chiedere la tesi? Quale sarà il docente più disponibile? Quale l'argomento più interessante per me? ...e quale quello più interessante per il mondo del lavoro?

Scarica gratuitamente la nostra guida "Come si scrive una tesi di laurea" e iscriviti alla newsletter per ricevere consigli e materiale utile.


La tesi l'ho già scritta,
ora cosa ne faccio?


La tua tesi ti ha aiutato ad ottenere quel sudato titolo di studio, ma può darti molto di più: ti differenzia dai tuoi colleghi universitari, mostra i tuoi interessi ed è un lavoro di ricerca unico, che può essere utile anche ad altri.

Il nostro consiglio è di non sprecare tutto questo lavoro:

È ora di pubblicare la tesi