Thanks for asking a fascinating question.
I believe you will find the information I am providing here will
answer your questions -- at least, answer them to the extent they are
answerable, because much of the legal landscape regarding software and
intellectual property is changing very rapidly.
But first, I want to reiterate the disclaimer at the bottom of the
page -- I am not a legal professional, and Google Answers is no
substitute for professional legal advice.
That said, let me get to your question.
First off, I agree, in part, with my colleague, sublime1-ga, who wrote
that there are "endless examples" of software that plays the role of
your Software B, in allowing access to some proprietary part of
However, I must disagree with the statement that there has never been
a legal challenge to this practice. Quite the contrary, it is the
outcome of these legal challenges that has encouraged developers to
pursue this practice.
I also can't be complacent in saying that you can undertake such
reverse engineering (or however you care to call it) without any
Let me lay out some of the background on all this, focus on a key
legal case in the US, and then lay out some of the issues you should
consider as you move forward with your project.
In general, the courts in the US (and I believe in much of Europe as
well) have been fairly friendly when it comes to taking other people's
inventions apart to see how they tick, and then taking advantage of
the lessons learned --reverse engineering, as it's often called.
This long-standing willingness of the legal system to support reverse
engineering was carried over into the software age in a key 1992 case
known as Sega v Accolade:
This case, which is remarkable on several fronts, is perhaps most
notable for being written in a clearly straightforward and
undertandable way. Plain English in a legal document!!! Who would
have thought it possible.
I'd encourage you to look over the case, but here is an excerpt of its
This case presents several difficult questions of first impression
involving our copyright and trademark laws. We are asked to
--first, whether the Copyright Act permits persons who are neither
copyright holders nor licensees to disassemble a copyrighted computer
program in order to gain an understanding of the unprotected
functional elements of the program. In light of the public policies
underlying the Act, we conclude that, when the person seeking the
understanding has legitimate reason for doing so and when no other
means of access to the unprotected elements exists, such disassembly
is as a matter of law a fair use of the copyrighted work.
--Second, we must decide the legal consequences under the Lanham
Trademark Act of a computer manufacturer's use of a security system
that affords access to its computers to software cartridges that
include an initialization code which triggers a screen display of the
computer manufacturer's trademark. The computer manufacturer also
manufactures software cartridges; those cartridges all contain the
initialization code. The question is whether the computer manufacturer
may enjoin competing cartridge manufacturers from gaining access to
its computers through the use of the code on the ground that such use
will result in the display of a "false" trademark. Again, our holding
is based on the public policies underlying the statute. We hold that
when there is no other method of access to the computer that is known
or readily available to rival cartridge manufacturers, the use of the
initialization code by a rival does not violate the Act even though
that use triggers a misleading trademark display.
Elsewhere the case specifically mentions reverse engineering:
Accolade used a two-step process to render its video games compatible
with the Genesis console. First, it "reverse engineered" Sega's video
game programs in order to discover the requirements for compatibility
with the Genesis console. As part of the reverse engineering process,
Accolade transformed the machine-readable object code contained in
commercially available copies of Sega's game cartridges into
human-readable source code using a process called "disassembly" or
"decompilation".2 Accolade purchased a Genesis <977 F.2d 1515> console
and three Sega game cartridges, wired a decompiler into the console
circuitry, and generated printouts of the resulting source code.
Accolade engineers studied and annotated the printouts in order to
identify areas of commonality among the three game programs. They then
loaded the disassembled code back into a computer, and experimented to
discover the interface specifications for the Genesis console by
modifying the programs and studying the results. At the end of the
reverse engineering process, Accolade created a development manual
that incorporated the information it had discovered about the
requirements for a Genesis-compatible game. According to the Accolade
employees who created the manual, the manual contained only functional
descriptions of the interface requirements and did not include any of
In the second stage, Accolade created its own games for the Genesis.
According to Accolade, at this stage it did not copy Sega's programs,
but relied only on the information concerning interface specifications
for the Genesis that was contained in its development manual. Accolade
maintains that with the exception of the interface specifications,
none of the code in its own games is derived in any way from its
examination of Sega's code. In 1990, Accolade released "Ishido", a
game which it had originally developed and released for use with the
Macintosh and IBM personal computer systems, for use with the Genesis
Bottom line here is that this key case had (in 1992) clearly accepted
an aggressive type of software reverse engineering as a form of 'fair
use' -- that is, allowable under US (and many other countries')
So that's the bottom line, right? WRONG!!!
Software manufacturers have pushed back, both through licensing
language (the infamous end-use-license-agreements or EULA's), as well
as by influencing passage of new laws, such as the equally-infamous
Digital Millenium Copyright Act (DCMA). There's also evolving law
regarding software protection under patents as well as copyright and
Here's some interesting perspective on these developments:
Frequently Asked Questions (and Answers) about Reverse Engineering
In particular, have a look at:
--Is reverse engineering legal?
--What "copying" of computer programs is permitted under copyright law?
--What elements of a computer program are copyrightable?
--Is reverse engineering affected by patent law?
--Are licensing provisions prohibiting reverse engineering enforceable?
--Is the reverse engineering of a technological protection measure
illegal under the DMCA?
This last question, in particular, warrants a careful read. It states
that, under DMCA, it is necessary to first ask (not necessarily
get...just ask) permission of the copyright holder in order to have
valid status under the law to reverse engineer software. DMCA also
lays out a number of criteria and limitations which are described in
the Q&A's, and which also do not have much of a clarifying track
record yet in the courts.
Also give careful attention to the EULA you presumably agreed to when
you purchased the software in question. If there is language there
regarding any aspect of reverse engineering of the software, you will
need to take that into consideration.
As is often the case, the real bottom line on all this is less than
The laws and the courts have certainly embraced a certain amount of
reverse engineering for software applications as a legitimate means of
doing business. I would venture a guess that the law is on your side
in this matter.
On the other hand, there is absolutely nothing that I know of in all
this to stop Company A from filing an infringement complaint if they
take umbrage at Company B's actions.
Of course, Company B may win in the end. But it can be something of a
Pyrrhic victory, given the time, expense and energy involved in
On the other hand, Company A is faced with the same disincentives of
cost, energy and time. In addition, they have the added disincentive
of the courts appearing to be disinclined to rule that a modest
example of reverse engineered software product amounts to
With all that as background, let's revisit your specific set of
-- Is this valid, no matter whether the data is written in a plain
text file, or in any proprietary format?
I'm not sure the text format is really an issue here -- at least I
haven't come across any legal material specifically discussing this
aspect. The general principle is that some amount of reverse
engineering is acceptable in many cases, and the particular format of
the text involved would seem to be a very minor aspect.
-- Would you have any examples of conflict in such situation, where an
American or European court would have confirmed officially this point
I believe the Sega v Accolade is the key case in this regard. Some
other discussion of this, and related cases, can be seen here:
- Or, are you positively sure that never such a conflict has been
ruled against the developer of such software?
In general, the cases that are viewed as setting precedent in these
issues (at least in the US), are those cases mentioned in the link
Like I said at the outset, the legal landscape here is complicated and changing.
Like I also said at the outset, there's simply no substitute for
professional legal advice.
I trust this information fully answers your question.
However, please don't rate this answer until you have everything you
need. If you would like any additional information, just post a
Request for Clarification to let me know how I can assist you further,
and I'm at your service.
All the best,
search strategy -- mostly used bookmarked sites for intellectual
property and examined them for information on reverse engineering.
Also conducted a Google search on [ sega accolade ]