Reversing : The Hacker's Guide to Reverse Engineering

(ff) #1

Is Reversing Legal?


The legal debate around reverse engineering has been going on for years. It
usually revolves around the question of what social and economic impact
reverse engineering has on society as a whole. Of course, calculating this kind
of impact largely depends on what reverse engineering is used for. The fol-
lowing sections discuss the legal aspects of the various applications of reverse
engineering, with an emphasis on the United States.
It should be noted that it is never going to be possible to accurately predict
beforehand whether a particular reversing scenario is going to be considered
legal or not—that depends on many factors. Always seek legal counsel before
getting yourself into any high-risk reversing project. The following sections
should provide general guidelines on what types of scenarios should be con-
sidered high risk.


Interoperability


Getting two programs to communicate and interoperate is never an easy task.
Even within a single product developed by a single group of people, there are
frequently interfacing issues caused when attempting to get individual com-
ponents to interoperate. Software interfaces are so complex and the programs
are so sensitive that these things rarely function properly on the first attempt.
It is just the nature of the technology. When a software developer wishes to
develop software that communicates with a component developed by another
company, there are large amounts of information that must be exposed by the
other party regarding the interfaces.
A software platform is any program or hardware device that programs can
run on top of. For example, both Microsoft Windows and Sony Playstation are
software platforms. For a software platform developer, the decision of whether
to publish or to not publish the details of the platform’s software interfaces is
a critical one. On one hand, exposing software interfaces means that other
developers will be able to develop software that runs on top of the platform.
This could drive sales of the platform upward, but the vendor might also be
offering their own software that runs on the platform. Publishing software
interfaces would also create new competition for the vendor’s own applica-
tions. The various legal aspects that affect this type of reverse engineering such
as copyright laws, trade secret protections, and patents are discussed in the
following sections.


Foundations 17
Free download pdf