1996-07-20 - Re: Reverse Engineer

Header Data

From: dlv@bwalk.dm.com (Dr.Dimitri Vulis KOTM)
To: cypherpunks@toad.com
Message Hash: 174aca24f643450ae4cd9c9ca0e5e0dbf624eca9e725407f3939f4cd8a29f52e
Message ID: <46wBRD4w165w@bwalk.dm.com>
Reply To: <199607191530.LAA13859@apollo.gti.net>
UTC Datetime: 1996-07-20 11:03:28 UTC
Raw Date: Sat, 20 Jul 1996 19:03:28 +0800

Raw message

From: dlv@bwalk.dm.com (Dr.Dimitri Vulis KOTM)
Date: Sat, 20 Jul 1996 19:03:28 +0800
To: cypherpunks@toad.com
Subject: Re: Reverse Engineer
In-Reply-To: <199607191530.LAA13859@apollo.gti.net>
Message-ID: <46wBRD4w165w@bwalk.dm.com>
MIME-Version: 1.0
Content-Type: text/plain


Mark Rogaski <wendigo@pobox.com> writes:
> : What do you mean by "reverse engineer?" I have heard this word several =
> : times especially in the world of hacking, but... can someone tell me =
> : what it really meant?
> : 
> 
> Reverse engineering is the process of taking a piece of executable code,
> be it a Win95 program or firmware for a cellular phone eeprom, and
> running it through a disassembler.  The disassembler converts the
> machine code into assembly instructions.  From there, a person with
> a lot of spare time, a good understanding of compiler design, and a lot
> of caffeine can translate the assembly instructions into a higher level
> language (ie. C, C++, VisualBasic).  The first part is easy (and writing
> a disassembler is a good project for upper-level Comp Sci courses), but
> the second part is a real bear and people with the knowledge and 
> drive to do it have my respect.

Small correction: oftentimes one is trying to figure out the 'secret' 
algorithm used by the program, and that can be done by analyzing the
assembler just as well. I did this a few times to break 'secret'
cryptosystems. 

Certain programs encrypt their executable code and decrypt it at runtime
to make reverse engineering more difficult.

---

Dr.Dimitri Vulis KOTM
Brighton Beach Boardwalk BBS, Forest Hills, N.Y.: +1-718-261-2013, 14.4Kbps





Thread