Table of Contents
What is Software?
How to Evaluate Your IP Rights in Software
How to Copyright Your Software
How to Patent Your Software
How to Protect Trade Secrets in Software
Contractual Protections
Your company’s proprietary software is its most valuable asset. It has been for sometime because you are, after all, in the software business. Whether your company licenses software to others, uses software to provide services to customers, or uses software for its own internal operations, proprietary software can give your company a competitive edge in the marketplace. That edge will almost certainly be lost without appropriate legal protection.
You can seek to protect your company’s intellectual property (“IP”) rights in software under several intellectual property regimes, including copyright, patent and trade secret law. You can also protect your IP rights in software with contractual provisions, such as confidentiality obligations and use restrictions. You can further protect your company’s IP rights in software with non-IP statutes and common law tort claims, like trespass to chattels, but those methods may offer you only bare remedies rather than prevention. Prevention is key when protecting IP in software.
Each form of legal protection has unique advantages and disadvantages. Some forms are cumulative and others exclusive. The forms of protection best suited to your company’s needs depends on several factors, including (1) the nature and function of the software, (2) the company’s business model, including how and by whom the software will be used or
distributed, (3) the scope, strength and length of the contemplated form of IP protection, (4) the preclusive effect of the chosen type of protection on other modes of protection, and (5) the difficulty and expense involved in obtaining, maintaining or enforcing each form of protection.
What is Software?
The U.S. Copyright Act defines a computer program as “a set of statements or instructions to be used directly or indirectly in a computer in order to bring about a certain result.” (17 U.S.C. 101) The program’s instructions can be fixed in any electronic, print or other medium and are typically set out in human-readable source code and machine-readable object code form.
As a software company, however, your company has a strong interest in obtaining protection for more than the computer program’s literal code. A program’s non-literal elements, such as its user interface, can be more valuable than the literal code itself. “Software” is typically broader in scope than the more narrowly defined “computer program.” It includes (1) system software (i.e., operating system), (2) application software (i.e., to carry out specific tasks), (3) documentation (i.e., user, system administrator and other manuals), (4) libraries (i.e., codes and data used by the computer program), and (5) frameworks used to develop the program (i.e., support programs, compilers, code libraries, tool sets and APIs).
How to Evaluate Your IP Rights in Software
A useful tool to determine the rights that may be asserted in software is to first separate the computer program into literal and non-literal elements. Next, determine on an element- by-element basis which elements may be protected by copyright. Then identify and evaluate any remaining software components to determine whether they qualify for any other legal protection. The first two steps are part of the abstraction-filtration-comparison test that courts in California apply to determine which elements of a computer program are copyrightable.1 This test is also helpful to identify software elements that can be protected by other forms of IP protection.
1. How to Copyright Your Software
In the U.S., as in most jurisdictions, copyright law is the favored form of IP protection for software. The U.S. Copyright Office regulates copyrights under the federal Copyright Act.
What Parts of Software Can You Copyright?
Copyrights attach to original works of authorship fixed in a tangible medium of expression. These include original: (1) Literary, musical, pictorial, graphic, dramatic and audiovisual works; (2) compilations of copyrightable or non-copyrightable works (i.e., data); and (3) derivative works of any of the foregoing.
Source code and object code are copyrightable as literary works if they are original and fixed in a tangible medium of expression, such as in print, computer hard drive or other electronic, magnetic or optical medium. Because computer code is expressive and functional, however, deciding which features of a program are eligible for copyright protection is more difficult than determining more traditional copyrightable subject matter. This is because the Copyright Act expressly excludes from its protection ideas, processes, systems and methods of operation, even if they are described, illustrated or embodied in an otherwise copyrightable work.
It is left to the courts to parse this difficult idea-versus-expression dichotomy to determine a program’s protectable, expressive elements and whether a party has infringed any copyrights in these elements. When doing so, courts take into account the program’s literal and non- literal elements because each is eligible for copyright protection.
The literal elements of a computer program are the source code and object code. The non-literal elements include the structure, sequence and organization of the program as an integrated whole and the program’s individual features or components. These can include (1) modules, subroutines and macros; (2) module substructure (nesting of one module within another); (3) control flow (the sequence in which modules perform their tasks); (4) files; (5) data flow (the sequence in which data moves through the program and is processed by the modules); or (6) user interface (data input formats and other non-graphical, internal code that enables the user and computer to communicate with one another, as opposed to the visible graphical user interface).
How Do You Determine What Elements Can Be Copyrighted?
To determine which elements of a computer program are copyrightable, the federal courts commonly identify and analyze each of the program’s literal and non-literal elements under one of three tests: (1) Abstraction-filtration-comparison, (2) method of operation, or (3) inherent necessity.
Because 10 of the 13 federal circuits – including the 9th Circuit based in San Francisco – rely on the abstraction test, you should use this test to evaluate the copyrightability of your company’s software, particularly if the company is based in California.
Under this test, expressive features of the program’s literal and non-literal elements are first examined at multiple levels of abstraction. The levels range from the program’s most abstract expression to its most concrete, and can be parsed into at least six levels of generally declining abstraction: (i) the main purpose (most abstract), (ii) the program structure or architecture, (iii) modules, (iv) algorithms and data structures, (v) source code, and (vi) object code (most concrete).
To identify the remaining material that is protectable expression, the contents and structure of each level are then filtered to exclude the following: (1) Ideas, procedures, processes, systems, methods of operation, concepts, principles or discoveries; (2) facts, information, and data; (3) elements that are so driven by considerations of efficiency that they can be expressed in only one or a limited number of ways, and thus are necessarily incidental to the program’s ideas (under the copyright doctrine of idea-expression merger); (4) common, standard or stock programming practices, components or usages (scènes à faire); (5) features dictated by external constraints or requirements, such as legal compliance, industry demands or hardware or software specifications, standards or compatibility requirements; (6) third- party and public-domain materials; and (7) other non-protectable elements.
How Do You Protect Your Software Under Copyright Law?
Copyright protection is formality-free in the U.S. and other member states of the Berne Convention for the Protection of Literary and Artistic Works. A software owner need not show publication, notification, registration or deposit of the work with the Copyright Offce to enjoy copyright protection for the owner’s software.
While not required, copyright registration provides numerous benefits to the software owner. Registration ensures the right to sue for infringement. It allows the copyright holder to recover statutory damages and attorneys’ fees if the software is registered before the infringement begins (or one month after you learned of the infringement). Registration is prima facie
evidence of the copyright’s validity if made within five years of the software’s first publication. Registration allows you to stop the importation of infringing copies of the infringing products if the registration is recorded with the U.S. Customs Service. Affixing a copyright notice (©) to the software also provides substantial benefits, including use as evidence against a defense of innocent infringement
What are the Registration Requirements?
Submitting an application to the Copyright Office to register your software requires you to provide a non-returnable deposit of a copy of at least a portion of the software being registered. Because registration requires a partial deposit – and with it public disclosure of the software – you may decide not to register the software’s source code because of concerns it
could compromise the code’s confidentiality and trade secret protection.2
To secure registration of your software, the Act requires you to deposit, within three months after the date of publication, two complete copies of the best edition of software published in the U.S.3
What is the Scope of Copyright Protection?
The owner of software copyrights enjoys exclusive rights of: (1) Reproduction, (2) modification, adaptation and preparation of other derivative works (i.e., translations, bug fixes, new releases and new versions); (3) distribution, including by license, sale or rental (in electronic file or other form); (4) public display and performance of works generated by the software, including screen displays, graphics and other audio, visual and audiovisual content. (17 U.S.C §106.) The software copyright owner may exercise these rights, assign them to others, or license them to third persons on an exclusive or non-exclusive basis.
Each exclusive right stands on its own, which allows the copyright owner to retain and exploit certain rights while transferring or licensing others.
What are the Limitations on Copyright Protection?
Given software’s relatively short economic life, the finite term of software copyright protection is rarely, if ever, a matter of concern. Software copyright owners should, however, carefully consider certain legal limitations on copyright protection.
For instance, a purchaser or other owner of a lawfully made copy of a computer program has the right to sell or otherwise dispose of that copy, other than by rental, lease, lending or similar transactions. This is the first sale doctrine.
The purchaser also has the right to display that copy at the place where the copy is located. He has the right to make or authorize the making of another copy or adaptation of the software for archival purposes, as an essential step in using the program, or to maintain or repair a device containing the program.
The purchaser is also permitted to make fair use of the program by copying and reverse engineering its object code to uncover non-copyrightable methods and ideas for legitimate purposes such as supporting interoperability with other software or creating new software products. By carefully crafting software distribution and license agreements, however, you can contract around these legal limits and acquire enforceable contract rights to prevent such uses.
How is Ownership of Copyrights in Software Determined?
Software is frequently large and complex, and thus usually created by a team of programmers. Ownership rights must be secured from each programmer who may have co-authorship rights in the software. This is because copyright ownership automatically vests in the individuals who create the work, unless the work is a “work made for hire.”
Under the Act’s work-made-for-hire provisions, a person – natural or otherwise – who does not create a work is considered its author if the person is the (1) creator’s employer (for whom the employee created the work within the scope of her employment), or (2) a person who has
specially commissioned a work that falls into one of nine specific categories in the Act under a written agreement stating the work is being made for hire.
Because computer programs are not included among the nine categories of works that non- employers may commission as works made for hire, if you hire an independent contractor to develop software for your company you must obtain a written assignment of the contractor’s rights in the software to ensure they are effectively transferred to your company.
You can also qualify commissioned software as a work-made-for-hire by obtaining the contractor’s written agreement that the software is a work made for hire and either (1) establish a de facto employment relationship with her by fulfilling common law agency requirements, or (2) where applicable, characterize the software as part of an audiovisual work, translation of another program or program language, or compilation under the Act.
A Brief Word on the Digital Millennium Copyright Act
Congress enacted the DMCA in 1998 to conform U.S. copyright law to its obligations under two World Intellectual Property Organization (“WIPO”) treaties, which require parties to provide effective legal remedies against the circumvention of technologies used to control access to copyrighted works. The DMCA prohibits a person from circumventing technology
that a software owner uses to prevent unauthorized access to its copyrighted software. The statute allows for the imposition of civil and criminal penalties against any person who (1) circumvents technology used to prevent unauthorized access to software or other copyrighted works, (2) traffics in technologies, products or services designed primarily to circumvent technologies used to prevent infringement of software or other copyrighted works, and (3) tampers with copyright notices or other digital rights information on software or other copyrighted works.
While the DMCA prohibits circumventing technology to gain unauthorized access to copyrighted materials, it does not prohibit circumventing technology that safeguards against copying these materials, other than prohibiting the trafficking in technologies and services designed primarily for this purpose. Exceptions to the DMCA’s anti-circumvention restrictions include the use of technology to reverse engineer software to achieve interoperability between software products, conduct encryption research, and conduct security testing so long as the person circumventing the access controls has lawfully obtained a copy of the software.
The Librarian of Congress has rulemaking authority to exempt specific classes of works from the act’s prohibition against circumventing access controls. The exemptions last for three years and apply to users of any exempted class of works if the DMCA’s bar against circumvention is likely to adversely affect the user’s non-infringing use of works in that class. These include, by way of example only, audiovisual works for educational purposes, literary works for use by the blind and disabled, and computer programs that allow unlocking of wireless devices.
2. How to Patent Your Software
A utility patent gives its owner the right to exclude others from making, using, offering to sell, selling or importing the owner’s patented invention. Unlike copyrights, patents protect the functional application of a software-implemented invention’s underlying inventive idea rather than merely the software’s written expression.
What is the Legal and Regulatory Authority for Patents?
U.S. patents are regulated by the U.S. Patent and Trademark Office (“U.S. PTO”) under the authority of the Patent Act as amended on September 16, 2011 by the American Invents Act.
What Software is Patent-Eligible Subject Matter?
The statutory requirements for obtaining patents on software-implemented inventions are the same as for other inventions. They include priority (first to file rather than invent), eligibility (patentable subject matter), utility (usefulness), novelty (not found in the prior art), non- obviousness (to a person of ordinary skill in the prior art), and definiteness (of the claims
comprising the invention).
Patent requirements are considerably more stringent than those governing copyrights. They have become even more so as a result of the federal courts’ increasing wariness of the patent eligibility of business method and other software-implemented inventions. Applicants for patents on these inventions typically claim them as novel methods, systems, machines (e.g.,
pre-programmed, special purpose computers), machine-readable physical media or some combination of these technologies. Courts closely scrutinize the patent eligibility of these inventions because patent claims directed to them are often drawn so broadly as to cover abstract ideas (e.g., mathematical formulas and algorithms) without limits sufficient to confine
the claims to specific applications.
The U.S. Supreme Court has addressed these issues, and while it has declined to rule out the patent eligibility of software inventions altogether, it has developed strict requirements for their patent eligibility. The court evaluates patent claims directed to software inventions in a multi-step process.
First, it looks at whether the claims are directed to one of the statutory categories of patent-eligible subject matter: (1) Processes (including methods), (2) machines, (3) articles of manufacture, (4) compositions of matter, or (5) new and useful improvements of any of the above.
Second, even if the claimed software-based invention is patent eligible, if the software patent claims are directed to one of the judicial exceptions to patent-eligible subject matter – including laws of nature, natural phenomena or abstract ideas – the invention is not patent eligible.
Third, even if this finding is made, however, the software may be patent eligible if the claim’s elements, considered individually or as an ordered combination, describe an inventive concept sufficient to ensure the claims are drawn to significantly more than the ineligible subject matter.4
Do You Have to Publicly Disclose the Software to Receive a Patent?
The Patent Office grants patents after examining and approving a patent application that provides a clear and definite description of the claimed invention. The application must state the manner and process of making and using the invention (enablement), and specify the best mode the inventor contemplates to carry it out (best mode).
These disclosures become public when the application is published and, if and when, the patent is issued. A key concern of software developers is the extent to which they must disclose trade secrets in the source code to obtain patent protection. The Patent Act, and the Patent Office’s practice and decisions interpreting the Act, regularly results in issuance of letters patent on software-implemented inventions without requiring the applicant’s disclosure of the software’s source code, flow charts or documentation where the invention is claimed in terms of functionality, and the application’s disclosure is sufficient to allow a person having ordinary skill in the art to program the computer disclosed in the application by performing the steps described in the application.
Who Owns Patents in Software Inventions?
Traditionally, ownership of a pending software patent application, and any patent issuing from it, originally vested solely in the inventor(s). Under the America Invents Act (“AIA”), for applications filed on or after September 16, 2012, the patent applicant may be the inventor, a person to whom the inventor assigned or is obligated to assign the invention, or a person who
otherwise shows a suffcient proprietary interest in the invention. Under the AIA, the patent is granted to the real party in interest.
3. How to Protect Trade Secrets in Software
What Laws Protect Trade Secrets?
Both federal and state laws protect trade secrets in the United States. Under federal law, trade secrets are protected in the Economic Espionage Act (“EEA”), which was enacted in 1996 and significantly amended by the Defend Trade Secrets Act (“DTSA”) in May 2016. At the state level, they are protected by some form of trade secrets statute. Most states, including California, have adopted a version of the Uniform Trade Secrets Act (“UTSA”) in most cases with few or no changes to the model act. California’s Uniform Trade Secret Act appears at Civil Code Sections 3426 et seq.
The EEA provides for criminal and civil actions to remedy the theft of trade secrets. The DTSA added a private right of action that supplements, but does not preempt, actions brought under state trade secret law.
What Subject Matter Can be Protected as Trade Secrets?
Definitions of trade secrets under federal or state laws vary in detail, but commonly provide that protectable trade secrets include any business, financial, technical or other information that: (1) Is not generally known or ascertainable through proper means by persons outside the trade secret owner’s organization or control; (2) provides economic value or a business
advantage to the owner by not being generally known; (3) the owner makes reasonable efforts to keep confidential.
Subject matter eligible for trade secret protection includes ideas, procedures, processes, systems, methods of operation, concepts, principles and discoveries. All of these are expressly excluded from copyright protection under the Copyright Act. Software is also protectable as a trade secret, if, as is typically the case, the basis of the alleged misappropriation is not unauthorized copying, but rather a breach of contract, trust, confidence or other duty in acquiring, using or disclosing any confidential form or portion of the software, such as the software’s source code.
What Remedies Exist for Theft of Trade Secrets?
Like many state uniform trade secret acts, the DTSA provides for injunctions, compensatory damages, and punitive damages. The law allows a court to issue an injunction to preserve evidence and prevent trade secret disclosure. The injunction cannot prevent a person from taking a job, or place conditions on such a job, unless the limits are based on evidence of threatened misappropriation and not merely on information the person knows. An injunction also cannot conflict with state laws prohibiting restraints on practicing a lawful profession, trade or business.
A court can award compensatory damages for theft of trade secrets for actual loss and unjust enrichment (but not both) resulting from the theft. It can alternatively award a reasonable royalty for the unauthorized disclosure or use of the trade secret. A court may also award exemplary damages of up to two times the amount of compensatory damages for willful and malicious theft as well as attorneys’ fees and costs to the prevailing party.
The DTSA provides a special remedial feature by allowing a trade secret owner to obtain an expedited ex parte seizure order in extraordinary circumstances to prevent the propagation or dissemination of the owner’s trade secret.
How to Secure and Maintain Trade Secret Rights?
There is no requirement to register trade secrets to ensure their protection. Trade secret rights are acquired and maintained solely by the owner’s reasonable efforts to preserve the secrecy of valuable confidential information within its organization (among employees and independent contractors), and among selected third parties that need to use or review the information, such as customers, software developers, suppliers, service providers, lenders, and prospective acquirers.
This is typically accomplished by applying appropriate security measures at your company’s facility and computer networks, and by using written confidentiality agreements. No legal notice need be attached to trade secrets. However, you should mark software and related documentation as “SECRET” or “CONFIDENTIAL” to provide actual notice of your company’s
rights, preserve secrecy and discourage misappropriation.
Companies that own proprietary software typically safeguard their trade secret rights in source code by maintaining the source code in confidence, and releasing it only selectively and under strict restrictions against copying, reverse engineering, transfer and disclosure.5 By adopting these measures, you can preserve your company’s trade secret rights in source
code even if you widely sell, license and distribute copies of the software’s object code to distributors or end users.
The ability to protect the object code version of your software as a trade secret is more difficult, particularly if the published object code is broadly distributed. That said, your company can retain trade secret rights in object code if it only uses the software internally, and maintains the code’s confidentiality among all employees and contractors with appropriate physical, technical and legal tools. You can also retain trade secret rights in object code if you distribute the code narrowly to a select, identifiable group of end users, subject to restrictions against copying, reverse engineering, transfer and disclosure.
If you take these protective measures, your company’s trade secret rights may extend even to code embodied in a patented software invention. For this to happen, the Patent Office must find that the applicant need not disclose the software’s code because the statutory patent disclosure requirements are satisfied by the applicant’s description of the software’s function.
4. Contractual Protections
Most commercial software products are distributed in object code form only pursuant to a written license agreement. These agreements typically grant the licensee narrowly drawn rights, require confidentiality, and place a number of restrictions on copying, modifying, redistributing and, in certain instances, accessing the licensed software. The contracts also typically prohibit reverse engineering and other means of reconstructing the software’s source code.
By crafting your software agreements in this fashion, you can contract around statutory first sale, fair use (including reverse engineering) and essential use rights by licensing, rather than selling, physical copies of the software subject to use restrictions and the licensees’ waivers of these rights. These agreements also allow you to withhold distribution of tangible copies of the software by adopting a SaaS or other remote service model.
This legal model is based on the notion that under a software license agreement the licensee typically licenses rather than owns a copy of the software, and thus the statutory limits on copyright protection do not apply. Your company, as the software rights owner, is then free to impose contractual restrictions on the transfer and use of copies of your software.
The practice of imposing contract restrictions on distributed source code makes it generally eligible for contract protection in addition to or in place of any trade secret, copyright or patent rights that may apply. Even though claims to enforce software contract rights may relate to copyrightable subject matter, they are not preempted under Section 301 of the Copyright Act because when you claim a breach of contract you must prove extra elements beyond the infringement of your copyrights under Section 106 of the Copyright. Moreover, a breach of contract claim asserts rights only against the contracts counterparty, not the entire world or public at large.
Claims for breach of contract, therefore, are not equivalent to or preempted by copyright infringement claims. Accordingly, when you license your software you can preserve both contract and statutory IP rights (i.e., copyrights and patents) by framing license agreement restrictions in several ways. You can include restrictive covenants that, if breached, give rise to an action for breach of contract. You can include conditions to the license grant that, if breached, suspend or terminate the license and give rise to an action for copyright or patent infringement. You can limit or restrict the scope of the license grant – by territory, term, types of uses, number of users, volume of usage, and field of use – that, if exceeded, would give rise to a claim of infringement.
About the Author
Lonnie Finkel established Finkel Law Group, a Professional Corporation, in 2003. Since then, his focus has been returning the business of law to the practice of law by concentrating his firms’ efforts on the client’s needs rather than the firms’ bottom line.
Finkel Law Group has extensive experience helping its software company clients navigate federal and state laws affecting their intellectual property rights in software, including all of the proprietary interests they maintain in their copyrights, trade secrets and patents.
- Certain related works are distinguished from software and are not addressed in this paper. For instance, computer generated output (“CGO”) (except as embodied by the computer program’s code), includes data and data sets, printed or other textual works, audiovisual works, music, sound effects, screen displays and graphical user interface (visual elements, such as buttons, icons, pull-down menus, windows and scroll bars, that enable a user to interact with a computer). These items represent products of computer programs, rather than the programs themselves. (Computer Associates Int’l Inc. v. Altai, Inc.,982 F.2d 693 (2d Cir. 1992). The diverse forms of CGO may be protected in various ways, including (1) copyright (for literary, pictorial, musical and audiovisual works, including computer games and characters, derivative works and compilations), (2) trade dress (for the total image and overall appearance of nonfunctional features of a graphical user interface, screen display or other distinctive design), (3) trademark (for screen-displayed or printed names, words, colors, designs, sounds, fictional characters and other distinctive source-identifying marks), or (4) design patents or registered designs (for novel, non-obvious, ornamental icons and screen displays or software-generated product designs). As a second example, automated databases – which include facts, data, images, music, videos or other information assembled into an organized format that can be accessed by a retrieval program or system – are not software, but are also protectable under copyright law.
- The registration requirements seek to allay these concerns by permitting the applicant to deposit one of the following to protect against disclosure of trade secrets: (1) The first and last 25 pages of source code with trade secrets blocked out; (2) the first and last ten pages of source code alone with no portions blocked out; (3) the first and last 25 pages of object code plus any 10 or more consecutive pages of source code with no portions blocked- out; or (4) for programs less than 50 pages, the entire source code with trade secret blocked out. If a portion of the code is blocked out it must be proportionately less than the remaining material, and the remaining material must an appreciable amount of original code. The applicant may also register the software’s source code under the Copyright Office’s “rule of doubt,” if it’s unable or unwilling to deposit the source code and confirms in writing that the deposited object code contains copyrightable material. This form of registration does not result in a presumption of copyright validity.
- Software is considered published if it is made available to the general public on an unrestricted basis, whether by sale, license, loan, rental or other transfer to an unrestricted group of users. For example, publication occurs by the distribution of commercial off-the-shelf software to the general public. Such distribution is almost always limited to the software’s object code. The program’s source code is left unpublished and thus beyond the reach of the mandatory deposit requirement. In addition, because no legally cognizable publication takes place in the following circumstances, the mandatory deposit requirement does not apply to: (1) Limited publications (distributions) of object or source code to a selected class of persons (i.e., enterprise software) for a limited purpose and without the right of reproduction, redistribution or sale; and (2) hosting software to provide it as a service (SaaS).
- The inventive concept requirement is not satisfied by patent claims that direct the broad application of a natural law, phenomenon or idea to achieve a specified result without stating limits that avoid preempting the use of the concept for all purposes. It is also not satisfied by claims that direct the use of a staple technology – like the Internet or general purpose computer – to implement an abstract idea. The requirement is also not met by claims that implicate field of use limitations.
- Even though reverse engineering may qualify as a fair use under the Copyright Act, it can still violate the owner’s trade secret rights if done in breach of a duty or enforceable contract obligation.