Condividi tramite


Debug di codice offuscato

Un effetto collaterale dell'offuscamento consiste nella maggiore difficoltà di gestione e risoluzione dei problemi di un'applicazione offuscata. In un'applicazione sottoposta a offuscamento completo, i nomi di tutti i tipi, i metodi e i campi vengono trasformati da nomi significativi e definiti in base a una logica in nomi privi di senso e casuali.

Ciò influisce sull'utilità dei report relativi ai bug inviati dagli utenti sotto forma di analisi dello stack. L'analisi dello stack è in pratica un elenco in cui è indicata la posizione all'interno del programma in cui si è verificato un problema. Nell'elenco sono contenuti i nomi incorporati nel programma, ad esempio i nomi dei metodi e dei tipi. Nell'analisi dello stack relativa a un programma offuscato sono contenuti i nomi offuscati, la cui lettura risulterà estremamente difficoltosa per il personale di supporto e per gli sviluppatori.

Dotfuscator Professional Edition consente di risolvere il problema grazie a uno strumento che decodifica automaticamente le analisi dello stack offuscate utilizzando il file della mappa di ridenominazione. In presenza di un'analisi dello stack offuscata, lo strumento sostituisce i nomi offuscati con quelli originali e visualizza il risultato. Tale strumento è incorporato in Professional Edition. PreEmptive offre la stessa funzionalità anche in uno strumento autonomo denominato Lucidator, per il quale è possibile ottenere una licenza per gruppo.

Il debug di applicazioni offuscate può essere effettuato anche internamente all'azienda in modo meno complesso rispetto al passato. Dotfuscator Professional Edition è in grado di generare file di simboli per il debug di applicazioni offuscate in formato PDB di Microsoft, quasi completamente corrispondenti ai file di simboli originali generati dal compilatore. Mediante tali file gli sviluppatori possono utilizzare un debugger per avanzare istruzione per istruzione in un assembly offuscato e visualizzare il codice sorgente originale.

© 2002-2007 PreEmptive Solutions. Tutti i diritti riservati.