Newsgroup: it.scienza.fisica
Titolo: Reverse Engineering

Salve,
pur avendo un'idea (sul significato),
non ho presente le diverse aplicazioni
pratiche: meccaniche, software (decrittare
un programma) e possibilmente altre.
Se qualcuno mi fa qualche ulteriore esempio
circostanziato gliene sarei molto grato.
Ciao, Patrizio

 un programma) e possibilmente altre.
Posso farti un esempio concreto in campo software di
un'applicazione lecita: far funzionare un programma bacato
di cui non hai il sorgente.
In generale direi che le applicazioni illecite sono ben
piu' numerose di quelle lecite.
Ciao
Paolo Russo

 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						つづく

Patrizio ha scritto:

Ho il sospetto che la mia risposta potrebbe essere un po' OT, ma provo a 
risponderti cercando di essere rapido visto che la tua domanda e' stata 
accettata.
Software: un caso tipico e' il reverse engineering di un eseguibile 
compilato (tipo un programma commerciale che si ha solo come .exe o 
altra forma "lanciabile" ma non come codice sorgente) per cercare di 
risalire almeno a parti dell'algoritmo implementato, al fine di 
acquisire informazioni sulle tecnologie usate... es: il reverse 
engineering dei client skype per scoprire quale algoritmo/protocollo di 
cifratura utilizzano per proteggere le comunicazioni.
Il R.E. mi risulta sia esplicitamente vietato da praticamente tutte le 
licenze software "commerciali"
Ciao
Andrea Barontini

 un programma) e possibilmente altre.
Beh l'idea di fondo e' semplice: prendere un prodotto esistente
(*engineered*, "ingegnerizzato") e invertire il processo, cioe'
scomporlo e analizzarlo in modo da capire com'e' fatto, per poi in
genere costruirne una copia (o applicare le tecniche scoperte a
prodotti simili).
Un esempio informatico potrebbe essere: c'e' un programma di cui hai
l'eseguibile ma non il codice sorgente, quindi analizzi (con molta
pazienza :) il codice assembly, capisci come funziona, e quel punto
poi scrivere un sorgente che generi un nuovo programma che faccia la
stessa cosa.
Un esempio elettronico/meccanico divertente e' questo:
http://www.grandideastudio.com/portfolio/smart-parking-meters/
Un gruppo di hacker amanti della sicurezza ha smantellato uno dei
nuovi parchimetri di San Francisco, decodificando il protocollo dati
tra i diversi chip e il loro funzionamento, e costruendo una carta
contraffatta con credito infinito (un po' come taroccare le chiavette
delle macchinette delle bibite :)
Pleg
PS: il gruppo di hacker era guidato da Jacob Applebaum, che e' un tipo
estremamente bizzarro e in gamba... e soprattutto, qualcuno che puo'
permettersi di fare l'imbecille con Knuth ha tutta la mia stima :))
http://www.appelbaum.net/
PPS: per chi non l'avesse notato: la maglietta di Jacob e'
RICORSIVA :))

 ha scritto nel messaggio 
news:ea0510ad-1f6a-407d...@q22g2000yqm.googlegroups.com...

Nell'ambito della progettazione industriale, ci si riferisce alla 
trasformazione dei vecchi progetti realizzati con carta e matita in progetti 
realizzati mediante programmi CAD, in particolare tridimensionali. Ciò al 
fine di integrare vecchi progetti nella nuova progettazione. La sua utilità 
sta nel fatto che buona parte dei nuovi progetti consiste in realtà in una 
rielaborazione dei vcchi.
E' una procedura costosa e non priva di rischi: basti pensare agli errori 
che si possono introdurre nel processo di reingegnerizzazione.
ciao
davide


In generale è usato per "verificare"  che i particolari presi dalla 
produzione rispondono veramente alle matematiche dei particolari 
corrispondenti -nel disegno non è possibile quotare tutto-.
Infatti, fatta la fotografia, si procede alla sovrapposizione virtuale 
dei due modelli matematici, quello cad - ideale e preciso - con quello 
reale. Lo stesso sw segnala per mezzo di colori le distanze  relative 
tra i due modelli, cioè dove il modello "reale" si discosta maggiormente 
dal modello ideale.
Emanuele