is reverse engineering illegal?

I’ve noticed that in the legal mumbo jumbo attached to certain products (software, electronics), there’s often a warning that it’s prohibited to reverse-engineer the product. But isn’t the whole point of reverse engineering to bypass copyrights legally? My understanding of the process (which, for better or worse, owes a lot to the movie Paycheck), is that a team of engineer whiz kids are given the task of creating a product that performs functions A, B, and C, without examining the original (so one is not copying, say, a particular model of a Sony DVD player, but designing a product that does exactly what this original product does, without knowing exactly how the original project does it). If this is a correct model of what reverse engineers do, how can this be illegal? It seems that if this were indeed illegal, well, thought itself would be illegal, since in this example, the whiz kids are creating a brand new solution to the problem of how to do what that original Sony DVD player does.

Or to take a simpler, goofy example, if I want to make something that looks and tastes like a Twinkie in my own kitchen, without knowing what the exact ingredients of a Twinkie are, (a) is this reverse engineering, and (b) could this possibly be illegal?

I suspect that “reverse engineering” will just come down to what a jury feels when encountaring it. But, my belief is (I am not a lawyer) that when they say “No Reverse Engineering”, that this means that you can’t decompile it, or otherwise submit their application to some sort of tool that does various evil things to figure out how the innards work. Similarly, if your UI is a blatant rip-off they can get you for infringing on their Look & Feel.

Or, to relate this to something physical: A Car

You can get in the car, drive it around for a few moments, maybe take a photo then go off and build a thing that has four wheels, moves under self-propulsion, etc. But it can’t look like their car, and you can’t pop open the hood and go over all the parts “Ooooh, this is how that works!”–you will have to figure that part out yourself.

Also, as I understand it, file formats are open ground. You can reverse engineer the Windows Word format and create an application which reads and displays those without issue.

It’s far from a cut and dried issue. There are a lot of legal variables under US law.

First of all, there is the issue of having a contract in place to prevent you from reverse engineering (“RE” for the rest of this post). When you buy a product that comes with a contract and your purchase is considered acceptance of that contract, then the terms of the contract hold. So if the contract says no RE, and if you RE the product, you have violated the contract and Legal Hellhounds Inc. make your life miserable.

Note that shrink wrap or click thru licenses that a lot of software comes with are of course considered 100% legally binding by the makers and 0% binding by the more devious buyers. The truth is somewhere inbetween and has not been officially settled. The makers of course usually have a lot more $ than you and that is what matters in lower courts. Buyer beware.

The classic case of RE during the early PC days were the clone makers RE the IBM PC BIOS. It was a 2 stage process: group 1 decompiled and studied the BIOS and figured out it’s functionality. What BIOS call did what. Only that was passed to group 2 who then programmed a BIOS that duplicated the functionality. Group 2 couldn’t just re-use the original code. In fact, they weren’t allowed to even see the original.

The US courts have generally looked quite favorably on that type of RE. It is considered a necessary component of advancing technology. Remember, the purpose of patents in the US was originally to encourage innovation.

However, for most interesting software and hardware products today, to defend yourself against a lawsuit, you first have to show you used a legally obtained copy that was not encumbered by an anti-RE license. Good luck with that.

If reverse engineering is properly conducted it is perfectly legal as far as I can tell.

You buy some of the things you want to reverse engineer and put them through their paces. You form a team composed of those people who will certify that they have never worked for the company whose product you are going to reverse engineer. This protects you against charges of stealing trade secrets which are property and thus protected against stealing.

Members of this team then write a specification for a device that will do the same things as the original. The team then develops the device from the specification and not from copying the original.

Seems OK to me.

It depends. (Doesn’t it always?)

IANA lawyer, but I’m an engineer who’s had to deal with patent issues a few times. Here’s my experience in the matter:

If a product (or process) is patented, another company may not be able to reproduce verbatim without paying license fees. If the originator decides not to patent the product or process, then nobody else gets to make it until the patent expires. For utility patents filed in the US, expiration is 20 years from the initial filing date, although some companies, notably pharmeucitical manufacturers, have managed to extend this by making a new product that is a functional extention of the original and causing all formulations to fall under the new patent. Other types of patents (ornamental, biological, utility, software, et cetera) have different limitations and functions. See your local patent lawyer for more detail.

Processes and products that are identical to patented ones still fall under the control of the patent-holder, even if they were developed independantly. You can choose to challenge a patent or the applicability and, short of a legal injunction, continue producing the product in question, but you might be liable for retroactive license fees (which could be in excess of profits) in the case that your challenge fails. Typical challenges include that the patent is too general (doesn’t cover the specifics of the challenged product), too specific (product is manifestly different in some way from the patent description), that the product or process is already in the public domain (was “generally known” prior to issuance of the patent) or that the challenger invented the process prior to the patent-holder (in the US), that the patent results in gross monopolization of an entire industry, and so forth. It’s exceedling rare that patents are overturned, but patent-holders are not infrequently required to license their patents out to other manufacturers.

There are also trade secrets, which is “inside information” on a process that isn’t patented (generally to prevent a competitor from adopting or improving upon a process) and proprietary information (specifications or data that are held by employees of a company who are legally bound not to disclose marked information). While it is not generally illegal to utilize trade secrets or proprietary information, the methods for acquiring said information are often unethical if not downright illegal. For instance, here’s an example of the use of proprietary information of Lockheed Martin Corporation by The Boeing Company for use in a proposal in which the two companies were competing against each other. Here’s another example of Boeing using proprietary Raytheon information. (I’m not deliberately trying to pick on the defense sector here; it’s just that with all of the cooperation with potential competitors and exchange of engineering and executive talent between major players this sort of thing has the potential to occur, and it’s actually surprising how rarely it does, which is a tribute to how much the industry has cleaned up at least this part of its act since the Eighties.) In this case, the case being contested isn’t that the proposed designs are too similar, but that information was acquired through processes that are illegal.

In general there is nothing preventing you from starting with a product and reproducing its qualities without specific knowledge of how it functions; and it’s not illegal to buy a product, tear it down, and figure out how it works. If you can make a competitive product that works on the same fundamental process but does it with sufficient distintion to the original product then you can evade a patent restriction, though this is a very grey area that depends upon how general or expansive the patent is. (Often, companies or individuals will attempt to patent a number of similar processes, even ones they can’t make work or minor variations on the original, in order to prevent a competitor from making a similar product. In short, it’s a lot of legal manipulation and tiptoeing to outwit your competitors. I find the whole field to be rather tedious and irritating–having to sort through patents, argue with other people what falls under a patent and what doesn’t, figure out how you can somehow twist the language to make your imitation seem unique–but on the plus side it does offer the ability of the small patent-holder to sell or license a design to an industry giant who can best implement the product without having it stolen out from under them. Well, sometimes, anyway.

Richard Feynman allegdly sold his patent rights for a nuclear-powered airplane, rocket, and electrical powerplant to the government (Department of Energy? Department of War? He doesn’t specify) for one dollar each, and made a stink about getting his dollar, which he spent on candy. (“Surely You’re Joking, Mr. Feynman”, pgs 162-5.)

So…reverse engineering itself isn’t illegal, but it might be illegal, or at least unethical, to produce a product or base a proposal upon the information you’ve obtained. There may be exceptions to this, such as breaking or distributing the method for an encryption algorithm for the apparent purpose of defeating copyprotection (DeCSS) but in general, knowledge by itself isn’t illegal.

Stranger

Definitely not an issue in the software business. Just ask Bill.

Thanks for all the learned and thorough answers to my original post. It seems like y’all are basically describing a Catch-22 situation, where (a) it’s not illegal in itself for me to reverse engineer a piece of software, but (b) as a consumer of the software, I’m implicitly agreeing not to do this once I buy the product, open the package, etc.

That’s not the way I’ve always used the term reverse engineering.

Reverse engineering is when you take something apart to see how it works and base your engineering on that. In normal engineering you start with the design and work your way to the product. In reverse engineering you start with the product and work your way backwards to the design. That’s why it’s called reverse engineering.

Making a copy of something based on how it works is called cloning. Cloning can be done properly, using the above method of isolating the design team from the original product, or it can be done using reverse engineering, which may not be quite so legal or ethical.

As a side note:

You cannot reverse engineer something 100%, no matter how precise your measurement & inspection tools are. This is because the manufacturer assigned a tolerance to each component. On the specimen you’re trying to reverse engineer, you do not know where each of your measured values falls in the tolerance band.

As an example, say you were reverse engineering a car engine. The manufacturer specified a bore diameter of 4.123" ±0.001". (You do not know this, of course.) You take your calipers and measure the bore diameter… it’s exactly 4.124" (which is in spec). Your reverse-engineered design will specify a bore diameter of 4.124" plus a tolerance (±0.001" or whatever).

See the problem here? Your reverse-engineered design will specify a bore diameter of 4.124" ±0.001", which means only half your engines will be in spec.

The moral of this story is that, unless you have the luxury of having many specimens on-hand, you cannot reverse engineer something 100%.

The way alot of companies used to reverse engineer (I’m not really up to date on this) is they would hire a team of scientists to examine and document the item as well as they could. Then, they would retire the whole team and replace them with a new team to construct a device based on the “research”. This is one reason Sony and other japanese tech companies are so successful today.