Marc is a patent attorney and shareholder of the intellectual-property law firm of Poms, Smith, Lande, & Rose in Los Angeles, CA. Marc specializes in computer law and can be contacted at meb@delphi.com.
The best things in life are supposed to be free. But what about software? Surprisingly, the concepts implemented by software can often be copied without violating the law, as can many of the algorithms which implement them. What must be respected are intellectual-property rights in copyrights, patents, trade secrets, and trade dress. The trick is to identify when these intellectual-property rights are present--then to steer clear of them.
By far, copyrights are the most prevalent form of protection for computer software. But no copyright can stop you from lawfully using the ideas upon which the software is based.
Every piece of software will usually be protected by a copyright. Protection will usually be provided, even if the software has not yet been registered with the Copyright Office and even if it is not marked anywhere with a copyright notice. The duration of copyright protection is also very long--a minimum of 50 years for software written after 1976. Although the validity of a copyright can be challenged, such challenges are usually not successful.
On the other hand, the scope of copyright protection is not particularly broad.
First, copyrights only protect against copying. Even identical software will not be an infringement of a copyright if it was created independently, that is, not copied from the copyrighted software. Be warned, however, that a court may not believe that identical software was independently created, particularly when the software is unique and substantial in length. Wise software developers also embed dummy, nonfunctional code that sticks out like a sore thumb if the software is duplicated.
Second, copyrights only protect the "form of expression," not the "underlying ideas." The real difficulty in copying software lawfully lies in distinguishing between the protectable form of expression and the unprotectable underlying ideas. The courts have not yet clearly defined this demarcation line. There are nevertheless several factors which are helpful in predicting its location.
One important question is whether the copied information represents the only way of performing a particular operation, or at least one of only a very few ways. If it does, a court is likely to conclude that only the underlying idea has been taken.
Another important factor is the degree of abstraction between the copied information and the underlying code. Slight variations in code are not likely to avoid a copyright. The use of high-level flow charts or algorithms, on the other hand, are likely to be viewed as the underlying idea, rather than the form of expression. Copyright law does not prohibit the extraction of source code from object code--that is, reverse engineering--to uncover the higher levels of abstraction.
A further consideration is the quantity of the information which is copied. Extraction of only a few high-level flowchart segments or algorithms would probably be permissible. Slavish use of every one of them, particularly if organized in the same way as the copyrighted software, may well be deemed a violation. The problem here is that more than ideas are being taken. The selection, organization, and presentation of those ideas are also being taken, an appropriation which a court may regard as within the protectable form-of-expression category.
When dealing with programming languages, therefore, it probably would be unwise to appropriate the entire set of commands, particularly the syntax. On the other hand, it is unlikely that a successful copyright-infringement claim could be maintained if the functionality of only a few commands was used, particularly if changes are made in the names of the commands and their syntax.
Of course, some assemblers, interpreters, compilers, and database engines are specifically designed to run applications written for a competitor's product. In this case, the exact command names and syntax must be used or the application will not run. In this instance, the court may find the "copying" to be legal. Although a complete collection of ideas is being used, complete use is the only way to implement the desired function, namely to run the application program written for the competitor's product.
Rarely, on the other hand, must a user interface be fully duplicated to achieve the needed functionality. Making the interface look and operate differently is the safest course. On the other hand, copying a few functional or design elements of the interface would probably be acceptable. Copying all of it is risky.
In summary, all software should be viewed as being protected by a copyright, unless there is certain evidence to the contrary. Large segments of code should never be copied. High-level flow diagrams or algorithms can probably be copied, but it is risky to copy them all. Whenever possible, have the person who writes the code be someone different from the person who studied the original software and extracted the ideas from it. When it is believed that the underlying ideas are simply duplicative of ideas already in the public domain, copy from the material in the public domain instead. When in doubt, consider obtaining a license from the original copyright owner.
You hear a lot of talk these days about whether software is patentable and whether it should be patentable. While some people are talking, however, others are applying for and receiving software patents! Quarterdeck, for example, recently obtained a patent covering a memory-management technique used in its well-known QEMM memory manager. There also appears to be a growing acceptance of these patents by the courts and the Patent Office. Although still not common, software patents therefore do exist.
U.S. patents are currently enforceable for 17 years, except when the patent was issued after December 12, 1980, and maintenance fees have not been paid. Any U.S. patent bearing a number less than 4,000,000 is older than 17 years and therefore can no longer be enforced. In June of this year, the enforcement period will increase to 20 years, but will run from the date the application for patent is filed, not from the date it is granted, as it does now.
It is a lot easier to determine the scope of protection afforded by a patent, than a copyright. Unlike a copyright, each patent specifically delineates exactly what it covers. This is accomplished at the end of each patent in one or more separately numbered "claims." Each "claim" contains a description in words of exactly what it embraces.
The rule is that a patent is infringed upon when each and every element recited in a single patent claim is found in the accused product or process. Sometimes, the absence of a recited element will not avoid infringement if the accused product or process has an equivalent element which performs substantially the same function, in substantially the same way, to achieve substantially the same result. The presence of additional elements or even improvements is irrelevant if all of the elements recited in a single patent claim are found in the accused product or process. Unlike copyrights, moreover, independent creation is no defense. Patents can cover an idea, as well as the form of expression. They can also cover a process, as well as a product.
Typically, however, the accused software will not itself contain each of the elements recited in any single patent claim. Each patent claim will usually recite additional elements, such as a ROM, microprocessor, or storage device. Nevertheless, the software will still constitute an infringement, if and only if the software has no substantial use other than in the product or process recited in the claim, or if the software is promoted as being useful in such a product or process.
Usually, software covered by a patent will be prominently marked "Patented" or "Pat.," along with the patent number. "Patent Pending" or "Pat. Pend." means that an application for patent has been filed, but that a patent has not yet been granted. Until the patent is granted, there is no enforceable patent right. On the other hand, enforcement steps can sometimes be taken after a patent has issued against software which was written and sold before the patent issued. The reason is because use of a patented invention is an infringement, as well as the manufacture and sale of it. Thus, not even "Patent Pending" markings should be ignored.
The absence of patent markings does not always ensure against a patent infringement claim. Like copyrights, patent markings are not an absolute requirement for enforcement, although their absence will reduce the scope of remedies which are available. The only sure way of verifying the absence of a patent is to have a patent search performed. When the name of a suspected patent owner or developer is known, that name can be looked up in an "assignee" or "assignor" index. Otherwise, a search of patents by subject matter can be performed. Subject-matter searches are commonly known as "infringement searches." Infringement searches must usually be performed at the Patent Office by a competent searcher under the direction of an attorney.
There are many sources for obtaining a copy of a U.S. patent. Most large libraries have them on microfilm. The text of a patent, as well the numbers of patents owned by a particular company, can also now be obtained from a few large databases, such as CompuServe. This information can also be obtained from the Patent Office.
Once the possibility of an infringement is perceived, the advice of a knowledgeable patent attorney should be sought. Although the scope of a patent's protection is far more clearly delineated than with a copyright, there are numerous factors which bear on that scope. In addition, there are a broad variety of legal defenses which can be asserted against a patent, even when it is infringed.
Some software concepts can be protected as a trade secret. The concept must not be generally known. It must also be the subject of reasonable efforts by the owner of the alleged trade secret to maintain its secrecy. Ideas, as well as expression can be protected.
Identifying the possibility of trade-secret protection requires an analysis of the circumstances under which the software was obtained. No trade-secret rights are likely to be afforded if the software was lawfully obtained and if restrictions on its use and disclosure were not promised.
Mass-produced software is typically marketed using a "shrink-wrap" license. The software is packaged in a box which states on the cover that use of the software is restricted by terms of an enclosed license. After the software is purchased, the purchaser opens the box and is usually confronted with a lengthy "License Agreement" in tiny print on the face of an envelope containing the floppy disks or CD-ROM. Most users never bother to even read this material.
These shrink-wrap licenses are not likely to be enforced. Moreover, the wide-spread distribution of this type of software probably negates one of the other fundamental requirements for trade-secret protection--the requirement that the information not be generally known.
Once the possibility of trade-secret protection is eliminated, lawful efforts can usually be made to extract the underlying source code by reverse-engineering the software. Unless prohibited by an enforceable contract (that is, something other than a shrink-wrap license), there is probably no legal impediment to extracting source code from its object code.
Software developers sometimes claim that the portions which they want to copy are not a trade secret because they are generally known. In this case, the best course is to copy from the material in the public domain, not from the software to which protection is claimed. For evidentiary purposes, the person copying from the publicly available material should not be the person who had access to the protected software.
As noted, it is not clear today how fully user interfaces are protected by copyright law. As a consequence, software owners sometimes claim that user interfaces are protected by the law of "trade dress."
Trade-dress and trademark law are very similar. Trademark law protects a name or insignia. Trade-dress law protects the way a product is packaged or presented. Neither are intended to protect the creator's concept. Instead, they are designed to protect the consumer from being confused into erroneously believing that one product originates from the same source as another.
Imagine seeing a set of golden arches on a fast-food restaurant along with the sign "The Best Hamburgers." McDonald's would probably be successful in claiming that this constitutes an infringement of its trade dress. Although McDonald's name has not been used, the "dress" of the restaurant is sufficiently similar to create a likelihood of confusion in the mind of the consumer.
Duplication of a user interface is sometimes alleged to create the same problem. But this infringement theory is not an easy one on which to succeed. There are also steps which can be taken to minimize exposure to it. The entire user interface should not be duplicated. A distinguishing trademark for the new software owner should also be prominently displayed, both on the packaging and at least in the opening screen which is displayed. If any reasonable possibility of confusion remains, explicit statements should be added advising the user that the new software was not created or sponsored by, or associated with, the owner of the other software.
The basic ideas underlying software can usually be copied with legal impunity. Only a patent or trade secret could present a bar. Although almost all software is protected by copyright law, a copyright only bars duplication of the form of expression, not the underlying idea. Trade-dress problems can also usually be avoided.
When in doubt, seek the advice of legal counsel. Such advice can help avoid a potentially expensive and disruptive legal dispute. A favorable legal opinion can also reduce the chances of a punitive-type remedy being assessed in the event that an infringement is nevertheless found.
Insurance against infringement claims is also now being offered by companies such as Intellectual Property Insurance Corporation.
Copyright Office
Library of Congress
Washington, DC 20559
202-479-0700
Intellectual Property Insurance Corp.
10503 Timberwood Circle
Louisville, KY 40223
800-537-7863
Software Patent Institute
2901 Hubbard Street
Ann Arbor, MI 48106-1485
313-769-4083
U.S. Patent and Trademark Office
Department of Commerce
Washington, DC 20230
703-557-4636
Copyright © 1995, Dr. Dobb's Journal