Re: Reverse Engineering

From: Daniele Orlandi <daniele_at_orlandi.com>
Date: Fri, 03 Sep 2010 00:59:20 +0200

Patrizio wrote:
>
> pur avendo un'idea (sul significato),
> non ho presente le diverse aplicazioni
> pratiche: meccaniche, software (decrittare
> un programma) e possibilmente altre.

Non so cosa c'entri con it.scienza.fisica, ma se il moderatore ha fatto
passare significa che gli interessa (?) :)

> Se qualcuno mi fa qualche ulteriore esempio
> circostanziato gliene sarei molto grato.

"Decrittare" non è il termine giusto perché non c'è nulla di crittografato.

Per scrivere un programma si parte da una descrizione "human friendly" che è
il cosiddetto sorgente. È scritto in un linguaggio che normalmente è molto
espressivo e riesce a descrivere bene l'algoritmo. Le variabili hanno
normalmente un nome che richiama il significato di quello che contengono,
idem per nomi di funzioni, oggetti, metodi ed etichette varie.

Quando prendi questo sorgente e vai a compilarlo tutte queste informazioni
utili per l'umano vengono rimosse e quello che ottieni è un coso binario che
piace tanto alla CPU.

Ma da quel coso ritornare a capire qual era il significato originario non è
un'operazione meccanica. Armato di intuito, esperienza e qualche strumento
si può tentare di ricostruire il sorgente e il suo significato e questo è
appunto il reverse engineering del software.

Ciao,

-- 
  Daniele Orlandi						つづく
Received on Fri Sep 03 2010 - 00:59:20 CEST

This archive was generated by hypermail 2.3.0 : Thu Nov 21 2024 - 05:10:37 CET