Presentation is loading. Please wait.

Presentation is loading. Please wait.

Reverse Engineering - Padma Dasari. Reverse Engineering Engineering is the profession involved in designing, manufacturing, constructing, and maintaining.

Similar presentations


Presentation on theme: "Reverse Engineering - Padma Dasari. Reverse Engineering Engineering is the profession involved in designing, manufacturing, constructing, and maintaining."— Presentation transcript:

1 Reverse Engineering - Padma Dasari

2 Reverse Engineering Engineering is the profession involved in designing, manufacturing, constructing, and maintaining of products, systems, and structures. The process of duplicating an existing component, subassembly, or product, without the aid of drawings, documentation, or computer model is known as reverse engineering. Software Reverse engineering is taking apart an object/program to see how it works in order to duplicate or enhance the object. Technically, Software reverse engineering involves reversing a program's machine code, into the source code.

3 Reverse engineering can be viewed as the process of analyzing a system to: Identify the system's components and their interrelationships Create representations of the system in another form or a higher level of abstraction Create the physical representation of that system physics is an attempt to reverse Engineering the Universe. Molecular Biology is an attempt to reverse Engineering the genetic code. Reverse Engineering

4 Why do Reverse Engineering? Consider a piece of software for which no one has yet bothered to write a manual or piece of software with undocumented features. An Artifacts are broken and we want to understand its structure so we can fix it. An Artifacts is old and clunky and want to replace with newer and sleeker version. Want to steal/replicate our competitors’ ideas.

5 Analyze piece of code in order to figure out how expensive it would be to make some proposed change. we can use two techniques. 1.Hierarchical Regular Expression 2. Island grammars. Reverse Engineering

6 Hierarchical Regular Expression –Lightweight analysis –Regular Expression (aUb)* aaabba (aUb)* Hierarchical Regular Expression

7  [ ] \ ( [ { }1 ] \ ) [ { ; }1 ] \{ \ ( [ { }1 ] \) Hierarchical Regular Expression

8 Reasons for reverse engineering a part or product: The original manufacturer of a product no longer produces a product There is inadequate documentation of the original design The original manufacturer no longer exists, but a customer needs the product The original design documentation has been lost or never existed Some bad features of a product need to be designed out. To strengthen the good features of a product based on long- term usage of the product To analyze the good and bad features of competitors' product Is it legal? What are reasons!!

9 Instant Messaging: The instant messaging marketplace is current fragmented among a lot of different networks: AOL Instant Messenger MSN Messenger Yahoo Messenger Google Talk and others. Instant Messaging or IM

10 Although these IM companies have periodically discussed making their networks interoperable, at present none of them are, despite the fact that they’ve been on the market for years. Ex: AOL, Yahoo, MSN has been there for years and no sharing among these networks. Needs many IM applications instead of one application software -Software reverse engineering come to rescue. IM: [No] Networking

11 Reasons for reverse engineering a part or product: An open source project called Fire built a Mac OS X application that can access all four networks (and some others). That means that I can run one program and have access to all four networks Details about Fire software can be found at http://fire.sourceforge.net/ Reverse Engineering

12 The Compilation Process Gathering Info Determining Program Behavior Determining Interesting Functions Understanding Assembly Debugging Executable formats Code Modification Network Application Interception Tools Scientific Methods- Steps


Download ppt "Reverse Engineering - Padma Dasari. Reverse Engineering Engineering is the profession involved in designing, manufacturing, constructing, and maintaining."

Similar presentations


Ads by Google