Protecting computer software--analysis and proposed alternative.

AuthorFlinders, Matt

Cite as: 7 J. HIGH TECH. L. 172

TABLE OF CONTENTS I. INTRODUCTION II. OVERVIEW OF WHAT CONSTITUTES SOFTWARE III. BRIEF OVERVIEW OF EXISTING MEANS OF PROTECTING SOFTWARE A. Patent Law B. Trade Secret Law C. Copyright Law D. Protection of Software through Technology IV. PERSPECTIVE OF POLICIES BEHIND COPYRIGHT LAW A. The Idea/Expression Dichotomy B. Overview of CONTU V. PERSPECTIVES OF THE POLICY BEHIND PATENT LAW VI. DISSEMINATING SOFTWARE'S IDEAS AND EXPRESSION VII. THE COPYRIGHTABILITY OF MACHINE CODE VIII. EUROPEAN COPYRIGHT AND PATENT PROTECTION FOR SOFTWARE IX. SUI GENERIS PROTECTION FOR FUNCTIONAL/EXPRESSIVE IP A. Semiconductor Chip Protection Act B. Design Patents C. Vessel Hull Design Protection X. THE CASE FOR AND AGAINST SEPARATE PROTECTION FOR SOFTWARE XI. CONCLUSION AND PROPOSED NEW RULES FOR THE PROTECTION OF SOFTWARE I. Introduction

As technology eases the ability to copy others' ideas and expressions, present intellectual property laws have struggled to fulfill their intended purposes to protect and promote art and innovation. (1) Changes to the system are imperative. Computer software is a relatively recent and very unique intellectual property that serves both as an expression of an idea and the idea itself. The founders and early developers of intellectual property law could not have foreseen the advent of this unique form of expression and the subsequent problems protecting it. (2) Our legislators and courts have instead attempted to squeeze software within existing copyright and patent laws in doctrinally conflicting fashions instead of carving out new and much needed doctrines for protecting this unique form of intellectual property. This Note looks at the present ways for protecting software from copying, both here and abroad, and the feasibility of such protection. This paper also proposes an alternative approach to protecting software with the intent that the changes be practical, efficient, and consistent with traditional intellectual property policy considerations.

  1. Overview of What Constitutes Software

    Software, in its most basic form, is a series of instructions copied into temporary or permanent memory on a computer which may subsequently execute those instructions. (3) Software is produced in a variety of human-readable and other very unreadable "languages." (4) A processor or controller in a computer comes with a very basic set of available instructions ("machine language") upon which it operates. (5) Whatever the original form, software must ultimately be reduced to those instructions which the computer "understands" and, when executed, becomes the basis for a "live" process on a computer. (6) Software has been generally categorized from low-level to high-level, indicating the relationship and degree of separation between higher level instructions and the most basic machine level codes. (7) As machines on which software is used become more complicated, layers of higher level "instruction sets" that are combinations of lower level instructions are used to simplify programming and improve the "readability" of software for humans. (8) High-level, human-readable code often includes comments by programmers and may even be accompanied by high-level flow charts and other diagrams. (9)

    Examples of programs written in lower-level code include "microcode" or "firmware." Low-level code is typically very simple and used on devices like digital watches or other simple machines. (10) Such programs may be seen as an integral part of the hardware, merely replacing the hardwired components of their predecessors with more dynamic and easily changeable "circuitry." (11) A typical personal computer (PC) generally consists of several layers of programming in which the "operating system" (e.g., Microsoft Windows, Macintosh OS) interacts with the computer at its most basic interface and acts as a bridge to higher-level "applications" (e.g., Microsoft Word). Such higher level programs are typically written in more human readable languages such as C++ or Java. Even higher levels of programming may be written by the end-user for automating basic tasks performed within an application (e.g., macros). (12)

  2. Brief Overview of Existing Means of Protecting Software

    Protection from software copying is presently available in varying degrees under patent, trade secret, and copyright laws. The unique characteristics of software, however, create troubling conflicts under each doctrine. While trade secret law appears to be well settled and applicable to software, the potential of decompilation and reverse engineering limits the effectiveness of its protection. (13) Software's inherent abstraction challenges patentability while its concurrent embodiment as a form of expression and utility challenge copyrightability.

    1. Patent Law

      Patent law generally provides protection for a "process" or "machine," assuming it meets the arduous standards of patentability, including novelty and utility. (14) The major problem with applying patent law to software is that software often can be reduced to mathematical calculations or manipulations of data, bringing it dangerously close to "abstraction" and what the Supreme Court previously precluded from patentability under 35 U.S.C. [section] 101. (15) With the advent of State St. Bank & Trust Co. v. Signature Financial Group, Inc. ("State Street"), however, software directed toward a sufficiently "useful, concrete, tangible" result may be patentable. (16)

      As will be discussed further, patent examiners, would-be patentees, and the courts are substantially challenged in determining when and where the line is crossed between abstraction and concreteness. Furthermore, the relatively hidden mechanisms behind commercially-distributed software make it difficult to establish or discount novelty or non-obviousness, rigorous standards under existing patent law.

    2. Trade Secret Law

      Trade secret law may be the only body of intellectual property law that does not pose substantial new hurdles with respect to software. Indeed, trade secret law is one of software's most useful forms of protection. Trade secret law generally provides protection for almost any form of knowledge so long as it is not "general knowledge." (17) Trade secret law is particularly useful in aiding the protection of high level source code (e.g., Java, C++, and BASIC) which has the benefit of almost built-in secrecy such that it can remain substantially independent of the machine code into which it is ultimately compiled and distributed. (18) Like a secret composition or formula such as the recipe for Coca Cola, the underlying high-level programming behind a software product may be extremely difficult and costly to extract, especially without the aid of a highly skilled expert. (19)

      Even though trade secret law provides fairly broad protection for software, the utilitarian nature of software and the ease of copying it have created unique problems bridging trade secret, patent, and copyright laws. Although decompilation (20) (or reverse engineering) of software may be considered a copyright violation in some circumstances, the "fair use" exception may absolve decompilators intending to understand the independent practice of underlying functions. (21) According to the court in Sega Enters. Ltd. v. Accolade, Inc. ("Sega"), the extracted "functionality" must be "the only and essential means of accomplishing a given task." (22) When, however, people use reverse engineering as a means of indiscriminate copying and resale existing works, the "fair use" defense is not available. (23) Rather, "indirect" or "intermediate use" that led to the creation of distinct independent works allowed the defendant to escape liability. (24)

      Thus, the challenge to the court in Sega was to protect authors of software from indiscriminate copying while attempting to avoid treading into areas traditionally exclusive to trade secret and patent law. The combined functional and expressive nature of software even poses problems in trade secret law that typically did not exist in other forms of technology. Unlike software, traditional reverse engineering such as that directed toward secret formulas, machines, or processes generally does not require acts of potential copyright infringement. (25)

    3. Copyright Law

      The act of copying software is not meaningfully distinguishable from copying digital music or video content. (26) Unlike the content of music or video recordings, however, there are significant questions about how software fits within copyrightable subject matter. (27) Although 17 U.S.C. [section] 102(b) states that "[i]n no case does copyright protection for an original work of authorship extend to any idea, procedure, process, system, method of operation," (28) "[t]he legislative history indicates that section 102(b) was intended 'to make clear that the expression adopted by the programmer is the copyrightable element in a computer program ...'" (29) Furthermore, "[b]ecause of the hybrid nature of computer programs, there is no settled standard for identifying what is protected expression and what is unprotected idea ..." (30)

      Existing copyright doctrine is notoriously conflicted in attempts to distinguish protected expression from "ideas" that more traditionally fall within the scope of patent law. In Baker v. Selden, for example, the Supreme Court held that a book on bookkeeping was copyrightable but not the ideas of bookkeeping in the book or the functional blank forms within the book. (31) "There is a clear distinction between the book, as such, and the art which it is intended to illustrate." (32) This notion of separating protected expression from ideas is known as the "idea/expression dichotomy," discussed in detail infra. (33)

      In Whelan Assoc., Inc. v. Jaslow Dental Lab., Inc., on the other hand, the court held that some structural elements of a software program designed to manage a dental laboratory were comparable to the...

To continue reading

Request your trial

VLEX uses login cookies to provide you with a better browsing experience. If you click on 'Accept' or continue browsing this site we consider that you accept our cookie policy. ACCEPT