[ros-kernel] FAQ: Clean Room reverse engineering vs Disassmbly

Steven Edwards steven_ed4153 at yahoo.com
Wed May 26 20:48:15 CEST 2004


Hello ros-kernel and Jason,
Sorry I did not repsond directly to private emails or the discussion on
the mailing list but I am a little slammed atm but this matter must be
cleared up.

IANAL but I have one on retainer for the ReactOS foundation and while
he is not a IP lawyer he seems to agree with the following statements.

Due to recent discussion on ros-kernel I want to clean this matter up
for everyone on what is allowed reverse enginering and what is not
allowed. Can someone clean this up and put it in a document for
ReactOS.com so we dont have to have this discussion again?

1. Clean Room reverse engineering means that you develop your
replacement interface without needing to look at the insides of the
orginal.

Exmaple: 
lets say I own a Tire company and I have a monopoly on tired for cars
right?
You cant take my tire and rip it apart to build a replacement but you
can take any cars that run on my tires and mesure them and weigh them
to figure out what pressure, density, etc the tire needs to be  and if
you make a compatible tire out of what you have learned then it is
viewed as clean roomed.

(note the process is more involved than this but this is it in short)

2. When is it not Reverse Engineering

OK so lets say you have a driver and you need to understand how
something in ntoskrnl works to get the driver working....

lets say you disassmble the nvidia driver and then implement something
in ntosknrl.exe thats not a derivitice work of ntosknrl, so it would be
ok unless NVIDIA got pissy which wouldnt matter because you are not
making a Nvidia replacement. But what happens if you step in to
ntoskrnl with IDA? Well if you implement the functions in question then
you are creating a derivitive work. 

So whats the solution? Anyone that has been disasmbling must find
another way to prove the information in question either by reversing a
third party driver or application or profiing said drivers and apps at
runtime.

remember copyright law is not like patents, your not tainted for life
or for the life of the patent....All you have to do is prove that the
information could be obtained another way and stay the hell out of IDA
inside Micrsoft Binarys...=)

Thanks
Steven
 
P.S. I am going on like 5 hours sleep in 3 days so all spelling and
grammer commnents can go ato /dev/null. Please clean this up and post
it on ReactOS.com




	
		
__________________________________
Do you Yahoo!?
Friends.  Fun.  Try the all-new Yahoo! Messenger.
http://messenger.yahoo.com/ 


More information about the Ros-kernel mailing list