Encyclopedia > Reverse engineering

  Article Content

Reverse engineering

To Reverse-engineer (RE) something (a device[?], an electrical component, a software program, etc.), is to take it apart and analyze its workings in detail, and after that to reconstruct a new device/program/etc. that does the same thing, without actually copying anything from the original. The verb form is to reverse-engineer, spelled with a hyphen.

Reverse-engineering is commonly done to avoid copyrights on desired functionality, and may be used for avoiding patent law, though this is a bit risky: patents apply to the functionality, not a specific implementation of it.

Reverse-engineering things (like software) for interoperability (i.e. supporting file formats etc.) is mostly believed to be legal, though patent owners often agressively pursue their patents.

Table of contents

Reverse engineering of electronic components

Coordinate-measuring machines[?] (CMM) can be used to digitise[?] a circuit and the information can be utilised in computer-aided modelling. New and improved techniques in reverse engineering include laser scanning[?] which, as the name implies, uses laser beams to scan across the surface of components of any shape and display the results in real time.

Reverse engineering of software

Reverse engineering can also apply to software. For example, reverse engineering of binaries for the Java platform can be accomplished using ARGOuml.org (http://www.ARGOuml.org). One very famous case of reverse engineering was the first non-IBM implementation of BIOS.

In the United States, the Digital Millennium Copyright Act exempts from the circumvention ban some acts of reverse engineering aimed at interoperability of file formats and protocols (17 USC 1201 (http://www4.law.cornell.edu/uscode/17/1201)(f)), but judges in key cases have ignored this law.

The Samba software, which allows systems that are not running Microsoft Windows systems to share files with systems that are, is a classic example of software reverse engineering, since the Samba project had to reverse engineer unpublished information about how Windows file sharing worked, so that non-Windows computers could emulate this. The WINE project does the same thing for the Windows API, and OpenOffice.org is one party doing this for the Microsoft Office file formats.

Reverse engineering as a competitive activity

Reverse engineering is also a competitive activity, used to analyze, for instance, how a competitor's product works, what it does, who manufactures it, what components it consists of, estimate costs, identify potential patent infringement, etc.

See also

All Wikipedia text is available under the terms of the GNU Free Documentation License

  Search Encyclopedia

Search over one million articles, find something about almost anything!
  Featured Article

... is a major centre of education. Today there are 12 university level institutions with about 10,000 scientists and 51,000 students. The most important schools of ...