Article provided by Timothy B. McCormack, Seattle Copyright Attorney working in area of copyright litigation, procurement and development. This article is a continuation in the series of Software Copyright articles.
As noted, not all aspects of a computer program are protected under copyright law, including the ideas behind a particular program.(58) Sometimes the only way to access the ideas underlying a program is through reverse engineering.(59)
Reverse engineering can be accomplished in at least two ways.(60) First, one may reverse engineer a program through the program’s design documentation. For example, one may independently develop a competing program by having one team produce design documentation of desired inputs and outputs after lawfully analyzing the program from which the competing program is to be developed. Another team then writes codes for the competing program based on the created design documentation.
A second method of reverse engineering a program involves using decompiler or disassembler programs.
With decompiler or disassembler programs, one can turn object code into a source code derivative that is in human-readable language, but lacks much of the information contained in the original source code such as programmer comments, abbreviations, etc. The resulting source code derivative is then analyzed to see how the original program works. This information can then be used to create a new program that will accomplish the same task.
Be careful when reverse engineering a computer program using a decompiler or disassembler. In the process of reverse engineering a computer program, the unauthorized loading of an “intermediate” copy of the protected program can constitute copyright infringement. An “intermediate copy” is not the final work product of the alleged infringer, but a copy made in the process of creating that product. An intermediate copy, made in the course of reverse engineering, however, is still a copy, fixed in a tangible form, and therefore may infringe the copyright rights.(61) Indeed, one court recently granted a preliminary injunction for copyright infringement based, at least in part, on the fact that an unauthorized intermediate copy of the protected software was made in the reverse engineering process. The court noted that, “when an entire software program is copied, there is no doubt that protected elements of the software were copied.”(62)
The copyright statute provides an exception from liability even when a copy is undeniably made. The exception, called “fair use,” is made by weighing the following factors:
(1) the purpose and character of the use, including whether such use is of a commercial nature or is for nonprofit educational purposes;
(2) the nature of the copyrighted work;
(3) the amount and substantially of the portion used in relation to the copyrighted work as a whole; and
(4) the effect of the use upon the potential market for or value of the copyrighted work.
Thus, copying a work for research purposes will not necessarily be considered copyright infringement.(63) In one related case, the viability of the fair use defense ultimately hinged on the fact that traditional reverse engineering was the only available means to get at the unprotected ideas underlying the protected software.(64)
Once a program is safely “reverse engineered,” one must determine which information in the original program is “protected expression” and what is not protected. As previously mentioned, determining which non-literal aspects of a computer program can lawfully be used may be difficult. Specifically, the extent of protection afforded a program’s “structure, sequence, and organization” may require application of the abstraction-filtration-comparison test discussed previously in this memorandum. Further, one should note that reverse engineering may violate a program’s license agreement, sometimes called “shrink wrap” and “click wrap” licenses.
As a general rule, one should carefully read and obey any license agreements distributed with a computer program. Using the program for purposes beyond the scope of the program’s license agreement can create legal liability and possible copyright infringement.(65) For example, reverse engineering aspects of a program where the program’s license agreement strictly prohibits such an act may give rise to copyright liability issues.
(58)A discussion of a program’s non-literal elements and the abstraction-filtration-comparison test discussed previously in this memorandum provide some insight as to which elements of a computer program will be protected by copyright.
(59)See generally Sega Enters. Ltd. v. Accolade, Inc., 977 F.2d 1510 (9th Cir. 1992); Atari Games Corp. v. Nintendo of America, Inc., 975 F.2d 832, 842-43 (Fed. Cir. 1992).
(60)1 Michael D. Scott, SCOTT ON COMPUTER LAW § 3.47 [C][7] (1998).
(61)Sega at 1519. See also MAI Sys. Corp. v. Peak Computer, Inc., 991 F.2d 511 (9th Cir. 1993) (holding that “copying” occurs when a computer program is transferred to a computer’s RAM from another storage device; the RAM copy qualifies as “fixed” under the statute); Sega Enters. Ltd. v. MAPHIA, 857 F.Supp. 679, 686 (N.D. Cal. 1994) (games uploaded to a computer bulletin board by unknown users are unauthorized copies).
(62)Sony Computer Entertainment, Inc. v. Connectix Corp., 1999 WL 304052, 50 U.S.P.Q.2d 1920 (N.D. Cal. 1999); see also DSC Communications Corp. v. DGI Techs., Inc., 898 F. Supp. 1183 (N.D. Tex. 1995).
(63)Courts have applied the doctrine of fair use to protect the study of copyrighted software: even if the intermediate copy would be infringing, liability may be avoided if fair use applies. See, e.g., Atari at 843 (“When the nature of a work requires intermediate copying to understand the ideas and processes in a copyrighted work, that nature supports a fair use for intermediate copying. Thus, reverse engineering object code to discern the unprotectable ideas in a computer program is fair use. … Fair use to discern a work’s ideas, however, does not justify extensive efforts to profit from replicating protected expression. … The fair use reproductions of a computer program must not exceed what is necessary to understand the unprotected elements of the work.”); Sega at 1518 (“Although the question is fairly debatable, we conclude based on the policies underlying the Copyright Act that disassembly of copyrighted object code is, as a matter of law, a fair use if such disassembly provides the only means of access to those elements of the code that are not protected by copyright and the copier has a legitimate reason for seeking such access”).
(64)Sega Enters. Ltd. v. Accolade, Inc., 977 F.2d 1510, 1526 (9th Cir. 1992).
(65)Cf. Lasercomb America, Inc. v. Reynolds, 911 F.2d 970 (4th Cir. 1990) (holding that a license agreement preventing the development of a competing software program was abuse/misuse of copyright law).