reverse engineering full report
project report tiger|
Active In SP
Joined: Feb 2010
16-02-2010, 09:38 PM
REVERSE ENGINEERING.pptx (Size: 394.62 KB / Downloads: 1,228)
reversre enginerring.doc (Size: 113.5 KB / Downloads: 1,005)
Engineering is the profession involved in designing, manufacturing, constructing, and maintaining of products, systems, and structures. At a higher level, there are two types of engineering: forward engineering and reverse engineering.
Forward engineering is the traditional process of moving from high-level abstractions and logical designs to the physical implementation of a system. In some situations, there may be a physical part without any technical details, such as drawings, bills-of-material, or without engineering data, such as thermal and electrical properties.
The process of duplicating an existing component, subassembly, or product, without the aid of drawings, documentation, or computer model is known as reverse engineering.
Reverse engineering can be viewed as the process of analyzing a system to:
1. Identify the system's components and their interrelationships
2. Create representations of the system in another form or a higher level of abstraction
3. Create the physical representation of that system
Reverse engineering is very common in such diverse fields as software engineering, entertainment, automotive, consumer products, microchips, chemicals, electronics, and mechanical designs. For example, when a new machine comes to market, competing manufacturers may buy one machine and disassemble it to learn how it was built and how it works. A chemical company may use reverse engineering to defeat a patent on a competitor's manufacturing process. In civil engineering, bridge and building designs are copied from past successes so there will be less chance of catastrophic failure. In software engineering, good source code is often a variation of other good source code.
In some situations, designers give a shape to their ideas by using clay, plaster, wood, or foam rubber, but a CAD model is needed to enable the manufacturing of the part. As products become more organic in shape, designing in CAD may be challenging or impossible. There is no guarantee that the CAD model will be acceptably close to the sculpted model. Reverse engineering provides a solution to this problem because the physical model is the source of information for the CAD model. This is also referred to as the part-to-CAD process.
Another reason for reverse engineering is to compress product development times. In the intensely competitive global market, manufacturers are constantly seeking new ways to shorten lead-times to market a new product. Rapid product development (RPD) refers to recently developed technologies and techniques that assist manufacturers and designers in meeting the demands of reduced product development time. For example, injection-molding companies must drastically reduce the tool and die development times. By using reverse engineering, a three-dimensional product or model can be quickly captured in digital form, re-modeled, and exported for rapid prototyping/tooling or rapid manufacturing.
1. REASONS FOR REVERSE ENGINEERING A PART OR PRODUCT
1. The original manufacturer of a product no longer produces a product
2. There is inadequate documentation of the original design
3. The original manufacturer no longer exists, but a customer needs the product
4. The original design documentation has been lost or never existed
5. Some bad features of a product need to be designed out. For example, excessive wear might indicate where a product should be improved
6. To strengthen the good features of a product based on long-term usage of the product
7. To analyze the good and bad features of competitors' product
8. To explore new avenues to improve product performance and features
9. To gain competitive benchmarking methods to understand competitor's products and develop better products
10. The original CAD model is not sufficient to support modifications or current manufacturing methods
11. The original supplier is unable or unwilling to provide additional parts
12. The original equipment manufacturers are either unwilling or unable to supply replacement parts, or demand inflated costs for sole-source parts
13. To update obsolete materials or antiquated manufacturing processes with more current, less-expensive technologies
Reverse engineering enables the duplication of an existing part by capturing the component's physical dimensions, features, and material properties. Before attempting reverse engineering, a well-planned life-cycle analysis and cost/benefit analysis should be conducted to justify the reverse engineering project and implimentations. Reverse engineering is typically cost effective only if the items to be reverse engineered reflect a high investment or will be reproduced in large quantities. Reverse engineering of a part may be attempted even if it is not cost effective, if the part is absolutely required and is mission-critical to a system.
Reverse engineering of mechanical parts involves acquiring three-dimensional position data in the point cloud using laser scanners or computed tomography (CT). Representing geometry of the part in terms of surface points is the first step in creating parametric surface patches. A good polymesh is created from the point cloud using reverse engineering software. The cleaned-up polymesh, NURBS (Non-uniform rational B-spline) curves, or NURBS surfaces are exported to CAD packages for further refinement, analysis, and generation of cutter tool paths for CAM. Finally, the CAM produces the physical part.
It can be said that reverse engineering begins with the product and works through the design process in the opposite direction to arrive at a product definition statement (PDS). In doing so, it uncovers as much information as possible about the design ideas that were used to produce a particular product.
2. DIFFERENCE BETWEEN REVERSE ENGGINEERING AND OTHER TYPES
The most traditional method of the development of a technology is referred to as "forward engineering." In the construction of a technology, manufacturers develop a product by implementing engineering concepts and abstractions. By contrast, reverse engineering begins with final product, and works backward to recreate the engineering concepts by analyzing the design of the system and the interrelationships of its components.
Value engineering refers to the creation of an improved system or product to the one originally analyzed. While there is often overlap between the methods of value engineering and reverse engineering,
the goal of reverse engineering itself is the improved documentation of how the original product works by uncovering the underlying design. The working product that results from a reverse engineering effort is more like a duplicate of the original system, without necessarily adding modifications or improvements to the original design.
4. STAGES INVOLVED IN THE REVERSE ENGINEERING PROCESS
Since the reverse engineering process can be time-consuming and expensive, reverse engineers generally consider whether the financial risk of such an endeavor is preferable to purchasing or licensing the information from the original manufacturer, if possible.
In order to reverse engineer a product or component of a system, engineers and researchers generally follow the following four-stage process:
Â¢ Identifying the product or component which will be reverse engineered
Â¢ Observing or disassembling the information documenting how the original product works
Â¢ Implementing the technical data generated by reverse engineering in a replica or modified version of the original
Â¢ Creating a new product (and, perhaps, introducing it into the market)
In the first stage in the process, sometimes called "prescreening," reverse engineers determine the candidate product for their project and implimentation. Potential candidates for such a project and implimentation include singular items, parts, components, units, subassemblies, some of which may contain many smaller parts sold as a single entity.
The second stage, disassembly or decompilation of the original product, is the most time-consuming aspect of the project and implimentation. In this stage, reverse engineers attempt to construct a characterization of the system by accumulating all of the technical data and instructions of how the product works.
In the third stage of reverse engineering, reverse engineers try to verify that the data generated by disassembly or decompilation is an accurate reconstruction the original system. Engineers verify the accuracy and validity of their designs by testing the system, creating prototypes, and experimenting with the results.
The final stage of the reverse engineering process is the introduction of a new product into the marketplace. These new products are often innovations of the original product with competitive designs, features, or capabilities. These products may also be adaptations of the original product for use with other integrated systems, such as different platforms of computer operating systems.
Often different groups of engineers perform each step separately, using only documents to exchange the information learned at each step. This is to prevent duplication of the original technology, which may violate copyright. By contrast, reverse engineering creates a different implementation with the same functionality.
5. ACTUAL REVERSE ENGGINEERING PROCESS:
The reverse engineering process begins with identifying the project and implimentation scope.
Once defined, the appropriate method to capture geometry is selected based on accuracy required, part geometry, and how the final output will be used.
The part can be physically measured using traditional hand tools, by using non contact inspection equipment by using a touch-probe coo In the reverse engineering process, the geometry can also be "captured" by mapping the surface with 3d scanning services such as a laser scanner, co-ordinate measuring machine (CMM) ...or a portable CMM. ...through the use of a white light scanner ..by using a full contact CMM scanner or by a process called Capturing Geometry Internally (CGI). This is a method involving potting of the part, curing it, milling through the potted sample at pre-defined depths, and taking scans at each of the milled depths to produce an internal and external point cloud geometry. These various methods of 3d scanning services are used to capture a part's geometry during the reverse engineering process.
It is important that the correct method be used to capture geometry for any reverse engineering project and implimentation. The method is dependent on the part shape, required accuracy, project and implimentation goals, and how the final results will be used.
Once the geometry is captured, the reverse engineering project and implimentation continues and the point cloud is produced and surfacing can beginÂ¦
A full parametric 3-D CAD model can be developed, using one of our customer compatible CAD platforms, making the reverse-engineered model ready for tooling or additional design modifications Some customers require 2-D drawings of the component. We obtain and use your CAD templates with title block information. Any other corporate standards are used where necessary. If a template or title block is not available, weâ„¢ll use a generic format and follow ANSI Y14 drafting standards and employ best practices in both cases.
Active In SP
Joined: Feb 2011
30-04-2011, 01:43 PM
gggggg.ppt (Size: 1.59 MB / Downloads: 361)
Reverse Engineering is a very self-explicative term
You take something and, from there, try to learn how (some aspect of) it was engineered
It’s also obviously broad
For example, it’s often used to describe the process through which you generate a higher-level, architectural view of a piece of software given its source code
Basic background on assembly language
Types of reverse engineering tools and demonstrations of these tools:
Decompilers: REC, DJ
Hex editors: WinHex, Tsearch
Disassemblers/Debuggers: IDAPro, OllyDbg, Win32Dasm, BORG
Types of reverse engineering prevention tools
Code obfuscators: Y0da’s Cryptor, NFO
Hex editors read executing programs from RAM.
Display their contents in hexadecimal code.
Enable the editing of the running hexadecimal code.
Decompile a binary programs into readable source code.
Replace all binary code that could not be decompiled with assembly code.
Provides utility to debug the program.
To find bugs in their program.
Only tool by which one can trace/break a function or code line.
Converts binary file in its equitant assembly language instruction.
Basicaly a converter.
Ex –WIN 32 DASM &IDA.IDA
Diagram of Code Obfuscators
RE of Machines
RE of Software
RE of IC’s/Smart Cards
RE is illegal.
It is costly.
Evaluation/Breaking of copy-protection schemes
Assorted how’s and why’s
In mechanical field
Joined: Jul 2011
07-02-2012, 10:42 AM
to get information about the topic reverse engineering full report,ppt and related topic refer the link bellow
Joined: Apr 2012
19-06-2012, 05:29 PM
Reverse Engineering.ppt (Size: 374 KB / Downloads: 164)
What is Reverse Engineering ?
You have an unexpected case:
You finished one course project and implimentation using Java
Your program runs OK
But, by accident, you delete the java file
How to hand in your project and implimentation?
RE encompasses any activity that is done to determine how a product works, to learn the ideas and technology that were used in developing that product.
RE can be done at many levels
RE generally belongs to Software Maintenance
The Early Days of RE
Law of Software Revolution (Lehman, 1980)
Fundamental strategies for program comprehension (Brooks, 1983)
Taxonomy of Reverse Engineering (Chikofsky&Cross, 1990)
WCRE (Working Conference on R.E., 1990)
IWPC (Int. Workshop on Program Comprehension)
Why do we need RE ?
Recovery of lost information
providing proper system documentation
Assisting with maintenance
identification of side effects and anomalies
Migration to another hw/sw platform
Facilitating software reuse
Reverse Engineering is a new research area among software maintenance
RE includes activities of understanding the system and recovery info from system
Program understanding is the most important subset of Reverse Engineering
Discovery of abstraction is key issue