Then it is not the only one you misunderstand. You consistently avoid the sections pertaining to intellectual property.kingliveson wrote:I think I was the one who pointed out that the documents were the same. My point is, I have read it. And it is not the only one I have read.CRoberson wrote:You need to reread the document and pay attention to the context in which those statements are made.kingliveson wrote:Actually, it is the same link just with more details. The paragraph is embedded in the detailed version.
1.2.The creation of better designs and the interoperability of existing products often begin with reverse engineering.The final stage of the reverse engineering process is the introduction of a new product into the marketplace. These new products are often innovations of the original product with competitive designs, features, or capabilities.
Reverse engineering, a legitimate form of 'discovery'
Moderator: Ras
-
- Posts: 2092
- Joined: Mon Mar 13, 2006 2:31 am
- Location: North Carolina, USA
Re: Reverse engineering, a legitimate form of 'discovery'
Re: Reverse engineering, a legitimate form of 'discovery'
Nope, not quite. I honestly believe you are mis-interpreting the text.CRoberson wrote:Then it is not the only one you misunderstand. You consistently avoid the sections pertaining to intellectual property.kingliveson wrote:I think I was the one who pointed out that the documents were the same. My point is, I have read it. And it is not the only one I have read.CRoberson wrote:You need to reread the document and pay attention to the context in which those statements are made.kingliveson wrote:Actually, it is the same link just with more details. The paragraph is embedded in the detailed version.
1.2.The creation of better designs and the interoperability of existing products often begin with reverse engineering.The final stage of the reverse engineering process is the introduction of a new product into the marketplace. These new products are often innovations of the original product with competitive designs, features, or capabilities.
The law regarding reverse engineering in the computer software and hardware context is less clear, but has been described by many courts as an important part of software development. The reverse engineering of software faces considerable legal challenges due to the enforcement of anti reverse engineering licensing provisions and the prohibition on the circumvention of technologies embedded within protection measures. By enforcing these legal mechanisms, courts are not required to examine the reverse engineering restrictions under federal intellectual property law. In circumstances involving anti reverse engineering licensing provisions, courts must first determine whether the enforcement of these provisions within contracts are preempted by federal intellectual property law considerations. Under DMCA claims involving the circumvention of technological protection systems, courts analyze whether or not the reverse engineering in question qualifies under any of the exemptions contained within the law.
Answer: In order to separate out those elements of a computer program that should be considered original expression from the unprotectable ideas and processes, courts utilize the Abstraction, Filtration, and Comparison test described in the case of Computer Associates v. Altai. [982 F.2d 693 (2d Cir. 1992)] Under this test, the court is required to go through the following steps to determine whether copyright infringement occurred:
* Retrace the designer's steps in the reverse order of its creation into manageable components in order to identify the unprotected ideas at each level of abstraction.
* Filter out the non-protectable elements, including those dictated by efficiency (the most efficient implementation of any given task) , merger (when there is only one way to express an idea), external factors (necessity of matching standards), and elements taken from the public domain (expressions not protected by intellectual property).
* Compare the allegedly infringing work and the initial work to determine whether a sufficient similarity exists in the protectable elements of the initial work.
Answer: While the validity of licensing prohibitions of reverse engineering has not yet been decided by courts, the conflict between state laws that would enforce these provisions and federal intellectual property law has been addressed. When considering cases where breach of contract or trade secret misappropriation is claimed (both state law claims), courts must first determine whether or not intellectual property law preempts those contracts enforced by the individual state. Preemption occurs when courts determine that federal intellectual property law must be considered in order to address the issues involved in the particular provisions.
Section 301 of the Copyright Act provides that a state law claim is preempted if:
1. (1) the work to be protected comes within the subject matter of copyright; and
2. (2) the state-created right forming the basis of the state law claim is equivalent to any of the exclusive rights within the general scope of copyright."
In order for the claim to be preempted it must first pass this equivalency test, which determines whether the state-created rights in upholding the contract are merely alternative articulations of the exclusive rights of copyright law. If the court determines that the contract provisions contain an "extra element" that require analysis of the contract to be preempted by copyright law, the courts generally proceed to an analysis of the possible infringement or exemption under fair use of the activities of the reverse engineer.
-
- Posts: 2331
- Joined: Mon Apr 09, 2007 5:36 pm
Re: Reverse engineering, a legitimate form of 'discovery'
I'd say ou are a Rybka vendor. Am I right?CRoberson wrote:Then it is not the only one you misunderstand. You consistently avoid the sections pertaining to intellectual property.kingliveson wrote:I think I was the one who pointed out that the documents were the same. My point is, I have read it. And it is not the only one I have read.CRoberson wrote:You need to reread the document and pay attention to the context in which those statements are made.kingliveson wrote:Actually, it is the same link just with more details. The paragraph is embedded in the detailed version.
1.2.The creation of better designs and the interoperability of existing products often begin with reverse engineering.The final stage of the reverse engineering process is the introduction of a new product into the marketplace. These new products are often innovations of the original product with competitive designs, features, or capabilities.
"Well, I´m just a soul whose intentions are good,
Oh Lord, please don´t let me be misunderstood."
Oh Lord, please don´t let me be misunderstood."
-
- Posts: 12778
- Joined: Wed Mar 08, 2006 8:57 pm
- Location: Redmond, WA USA
Re: Reverse engineering, a legitimate form of 'discovery'
It is mathematically provable that it is impossible to fully reverse any binary back into source code. It has been demonstrated that this is the equivalent of the halting problem.Osipov Jury wrote:It talks a lot about the RE and its legality, morality, etc.
But nobody talks about the technical possibility of the reverse. This is probably due to poor understanding of the subject matter.
For an individual binary created by a known compiler, it is possible to do fairly well, but it is still a very difficult and arduous task requiring human intervention.
I guess that only small sections of Rybka were reverse engineered (wild guess of 30%), but they turned out to be the most important sections and so the results proved to be shockingly strong.
There are some tools to automate the process now (IdaPro has a thing called HexRays decompiler http://www.hex-rays.com/decompiler.shtml)
I guess that even with these tools it is a very difficult task.
There are fundamental questions of right and wrong and many dark corners in these undertakings. I hope that in the long run, the field of computer chess is not harmed. If we can denude the work of the best professional programmers, where is the incentive for new workers to go into that field?
-
- Posts: 436
- Joined: Thu Mar 09, 2006 2:31 am
Re: Reverse engineering, a legitimate form of 'discovery'
It seems that once you settle on one side of the fence in this discussion you find it impossible to understand how anyone could have an opposing view.
Jim
Jim
Re: Reverse engineering, a legitimate form of 'discovery'
Bingo!!! This is the key question, not whether reverse engineering is illegal. We know it is legal. But where is the moral line? Morality depends. Is it OK to sleep with your brother's wife after he passes? Well, it depends how good she looks. Or should I say it depends on the culture. We know that this is a practice from Biblical times. The legal part has been settled, but the ethical question remains.Dann Corbit wrote: There are fundamental questions of right and wrong and many dark corners in these undertakings. I hope that in the long run, the field of computer chess is not harmed. If we can denude the work of the best professional programmers, where is the incentive for new workers to go into that field?
-
- Posts: 12778
- Joined: Wed Mar 08, 2006 8:57 pm
- Location: Redmond, WA USA
Re: Reverse engineering, a legitimate form of 'discovery'
I do not understand your remark. Is it directed at me? You do not quote what you are replying to.Jim Walker wrote:It seems that once you settle on one side of the fence in this discussion you find it impossible to understand how anyone could have an opposing view.
Jim
-
- Posts: 12778
- Joined: Wed Mar 08, 2006 8:57 pm
- Location: Redmond, WA USA
Re: Reverse engineering, a legitimate form of 'discovery'
This has definitely not been established.kingliveson wrote:Bingo!!! This is the key question, not whether reverse engineering is illegal.Dann Corbit wrote: There are fundamental questions of right and wrong and many dark corners in these undertakings. I hope that in the long run, the field of computer chess is not harmed. If we can denude the work of the best professional programmers, where is the incentive for new workers to go into that field?
There are many questions that remain. In fact, we have far more questions than we have answers.We know it is legal. But where is the moral line? Morality depends. Is it OK to sleep with your brother's wife after he passes? Well, it depends how good she looks. Or should I say it depends on the culture. We know that this is a practice from Biblical times. The legal part has been settled, but the ethical question remains.
Re: Reverse engineering, a legitimate form of 'discovery'
There different unique situations that present themselves when we talk about the legality of reverse engineering. But in many cases the courts have not sided with the plaintiffs. Let me add that you will have a hard time claiming damages or wrongdoing not unless you can prove infringement. Reverse Engineering is Legal.Dann Corbit wrote:This has definitely not been established.kingliveson wrote:Bingo!!! This is the key question, not whether reverse engineering is illegal.Dann Corbit wrote: There are fundamental questions of right and wrong and many dark corners in these undertakings. I hope that in the long run, the field of computer chess is not harmed. If we can denude the work of the best professional programmers, where is the incentive for new workers to go into that field?There are many questions that remain. In fact, we have far more questions than we have answers.We know it is legal. But where is the moral line? Morality depends. Is it OK to sleep with your brother's wife after he passes? Well, it depends how good she looks. Or should I say it depends on the culture. We know that this is a practice from Biblical times. The legal part has been settled, but the ethical question remains.
-
- Posts: 10803
- Joined: Thu Mar 09, 2006 12:37 am
- Location: Tel-Aviv Israel
Re: Reverse engineering, a legitimate form of 'discovery'
I do not know what is mathematically provable butDann Corbit wrote:It is mathematically provable that it is impossible to fully reverse any binary back into source code. It has been demonstrated that this is the equivalent of the halting problem.Osipov Jury wrote:It talks a lot about the RE and its legality, morality, etc.
But nobody talks about the technical possibility of the reverse. This is probably due to poor understanding of the subject matter.
I have a simple algorithm to do it for source that is limited in size when the only problem is that it takes a long time
To make things simple assume that the size of the source code is
not more than 1 Mbyte.
If you have an exe file and want to produce source that give you the same exe then simply try all the possible source codes when you start from all the possible source code of size of 1 bytes and continue with all source code with size of 2 bytes and continue in this way.
Most of the source code that you try are going to give a compilation error
and programs that you can compile are usually going to give a different exe than the exe that you want but in theory after enough time you are going to get exactly the exe that you need.
The more interesting question is if it is possible to have a significantly faster algorithm to build the source code (not exponential but polynomial)
Uri