Is decompilation legal?

General discussion about computer chess...
Jeremy Bernstein
Site Admin
Posts: 1226
Joined: Wed Jun 09, 2010 7:49 am
Real Name: Jeremy Bernstein
Location: Berlin, Germany
Contact:

Is decompilation legal?

Post by Jeremy Bernstein » Sat Jan 08, 2011 11:44 am

From H.G.Muller on TalkChess:

"You don't seem to understand how different the alleged cases of Ippolit vs Rybka 3 and Rybka vs Fruit are. You talk about them as if they are exactly the same. While they are in fact vastly different:

Fruit was an open-source project. The code and ideas were made public by the author, and everyone was free to take and use them. If Rybka was based on Fruit, this was totally legal. Its author was known and addressble.

Ippolit, on the other hand, seems to be a decompiled code that comes from nowhere, published by 'authors' that do not want to divulge their true identity. If it was derived from a decompiled Rybka, that would make it totally illegal. Any work based on Ippolit would be based on _stolen_ code."

Based on everything that I've read, this is at worst a legal grey zone, and at best completely legal. Does anyone here have the necessary expertise to disprove Mr. Muller's thesis?

http://digital-law-online.info/lpdi1.0/treatise25.html
http://www.shell-storm.org/papers/files/454.pdf (starting p. 1607)
http://www.chillingeffects.org/reverse/faq.cgi
http://lwn.net/Articles/134642/

BB+
Posts: 1484
Joined: Thu Jun 10, 2010 4:26 am

Re: Is decompilation legal?

Post by BB+ » Sat Jan 08, 2011 12:04 pm

I tripped my way through this previously. http://www.open-chess.org/viewtopic.php ... t=20#p7101
For instance, Articles 4.2 and 6 of the Computer Programs Directive for the EU discuss this, and I think the intent is to prohibit reverse engineering in general (and most likely thus the sense of whatever happened with R3/IPPOLIT).
There is also a claim that the shareit! license forbids it, and I consider that here: http://www.open-chess.org/viewtopic.php ... t=20#p7191
For instance, the license (if any) you get with Rybka seems to depend on the re-distributor. I went to 3 major ones, and for none of them was I asked to click "I agree" not to reverse-engineer, etc., the product before being able to click "Confirm payment". One of the 3 had me click "I agree" about indemnity, etc., and one of the others had some boilerplate Terms and Conditions that included "no reverse-engineering", but I was never asked if I agreed to this. The validity of such "shrink-wrap" licenses is also a point of dispute [...] I don't know about the laws in the Russian Federation. :P
I personally don't think the "legal" question is the one of most interest, though it seems to get hammered quite often in lieu of alternative arguments.

BB+
Posts: 1484
Joined: Thu Jun 10, 2010 4:26 am

Re: Is decompilation legal?

Post by BB+ » Sat Jan 08, 2011 12:11 pm

Here are some comments from VR:
Subject: Re: Do we really want it?
From: Vasik Rajlich
Message Number: 384927
Date: August 29, 2004 at 09:00:04
[...]
Gerd,

disassembling for purposes of finding information is legal and cannot be prevented.

It would be legal (though incredibly hard) for someone to disassemble one of the commercial programs and publish his findings.

Vas
Subject: Re: Questions about disassembling
From: Vasik Rajlich
Message Number: 487295
Date: February 17, 2006 at 04:17:38

On February 17, 2006 at 02:33:32, Jouni Uski wrote:
[...]
>Is it possible to disassemble exe-file, which is zipped and/or copy protected like Fruit 2.2.1? Where are disassemblers downloadable?
[...]

IDA Pro is easily the best. Technically it is not legal (although even this is not quite that simple, there have been a number of court cases, etc), in practice in computer chess you can do it.

Just a general comment though: it is _extremely_ hard to figure out the innovations in a program. Basically, I would say that in practice it is impossible. Yes, you can locate the move generator, because you already know what that looks like and what it does. But understanding the evaluation terms, or adjustments to search depth, would require an ungodly effort, especially for a complex program. Let me put it like this: every aspiring computer chess programmer has been very strongly tempted to try his hand at disassembling. When I started computer chess, Shredder was the king. We all wanted to know what he was doing. And nobody found out. Not Chrily Donninger. Not Frans Morsch. And not any of the then-amateurs.

You'll find some people posting here for example about what they "found" in Rybka. So far it has always just been transparent guessing based on program behavior, with the disassembly argument used to make it seem legit.

Vas

Sentinel
Posts: 122
Joined: Thu Jun 10, 2010 12:49 am
Real Name: Milos Stanisavljevic

Re: Is decompilation legal?

Post by Sentinel » Sat Jan 08, 2011 2:55 pm

Vas is practically saying authors of Ippolit are gods. This is just hilarious... :lol: :lol: :lol:

Jeremy Bernstein
Site Admin
Posts: 1226
Joined: Wed Jun 09, 2010 7:49 am
Real Name: Jeremy Bernstein
Location: Berlin, Germany
Contact:

Re: Is decompilation legal?

Post by Jeremy Bernstein » Sat Jan 08, 2011 3:15 pm

BB+ wrote:Here are some comments from VR:
Subject: Re: Do we really want it?
From: Vasik Rajlich
Message Number: 384927
Date: August 29, 2004 at 09:00:04
[...]
Gerd,

disassembling for purposes of finding information is legal and cannot be prevented.

It would be legal (though incredibly hard) for someone to disassemble one of the commercial programs and publish his findings.

Vas
Subject: Re: Questions about disassembling
From: Vasik Rajlich
Message Number: 487295
Date: February 17, 2006 at 04:17:38

On February 17, 2006 at 02:33:32, Jouni Uski wrote:
[...]
>Is it possible to disassemble exe-file, which is zipped and/or copy protected like Fruit 2.2.1? Where are disassemblers downloadable?
[...]

IDA Pro is easily the best. Technically it is not legal (although even this is not quite that simple, there have been a number of court cases, etc), in practice in computer chess you can do it.

Just a general comment though: it is _extremely_ hard to figure out the innovations in a program. Basically, I would say that in practice it is impossible. Yes, you can locate the move generator, because you already know what that looks like and what it does. But understanding the evaluation terms, or adjustments to search depth, would require an ungodly effort, especially for a complex program. Let me put it like this: every aspiring computer chess programmer has been very strongly tempted to try his hand at disassembling. When I started computer chess, Shredder was the king. We all wanted to know what he was doing. And nobody found out. Not Chrily Donninger. Not Frans Morsch. And not any of the then-amateurs.

You'll find some people posting here for example about what they "found" in Rybka. So far it has always just been transparent guessing based on program behavior, with the disassembly argument used to make it seem legit.

Vas
Great material. Thanks for sharing it.

tomgdrums
Posts: 42
Joined: Thu Aug 05, 2010 12:23 am

Re: Is decompilation legal?

Post by tomgdrums » Sat Jan 08, 2011 4:19 pm

BB+ wrote:I tripped my way through this previously. http://www.open-chess.org/viewtopic.php ... t=20#p7101
For instance, Articles 4.2 and 6 of the Computer Programs Directive for the EU discuss this, and I think the intent is to prohibit reverse engineering in general (and most likely thus the sense of whatever happened with R3/IPPOLIT).
There is also a claim that the shareit! license forbids it, and I consider that here: http://www.open-chess.org/viewtopic.php ... t=20#p7191
For instance, the license (if any) you get with Rybka seems to depend on the re-distributor. I went to 3 major ones, and for none of them was I asked to click "I agree" not to reverse-engineer, etc., the product before being able to click "Confirm payment". One of the 3 had me click "I agree" about indemnity, etc., and one of the others had some boilerplate Terms and Conditions that included "no reverse-engineering", but I was never asked if I agreed to this. The validity of such "shrink-wrap" licenses is also a point of dispute [...] I don't know about the laws in the Russian Federation. :P
I personally don't think the "legal" question is the one of most interest, though it seems to get hammered quite often in lieu of alternative arguments.
What then do you think is of most interest?

User avatar
kingliveson
Posts: 1388
Joined: Thu Jun 10, 2010 1:22 am
Real Name: Franklin Titus
Location: 28°32'1"N 81°22'33"W

Re: Is decompilation legal?

Post by kingliveson » Sat Jan 08, 2011 6:21 pm

Jeremy Bernstein wrote:
BB+ wrote:Here are some comments from VR:
Subject: Re: Do we really want it?
From: Vasik Rajlich
Message Number: 384927
Date: August 29, 2004 at 09:00:04
[...]
Gerd,

disassembling for purposes of finding information is legal and cannot be prevented.

It would be legal (though incredibly hard) for someone to disassemble one of the commercial programs and publish his findings.

Vas
Subject: Re: Questions about disassembling
From: Vasik Rajlich
Message Number: 487295
Date: February 17, 2006 at 04:17:38

On February 17, 2006 at 02:33:32, Jouni Uski wrote:
[...]
>Is it possible to disassemble exe-file, which is zipped and/or copy protected like Fruit 2.2.1? Where are disassemblers downloadable?
[...]

IDA Pro is easily the best. Technically it is not legal (although even this is not quite that simple, there have been a number of court cases, etc), in practice in computer chess you can do it.

Just a general comment though: it is _extremely_ hard to figure out the innovations in a program. Basically, I would say that in practice it is impossible. Yes, you can locate the move generator, because you already know what that looks like and what it does. But understanding the evaluation terms, or adjustments to search depth, would require an ungodly effort, especially for a complex program. Let me put it like this: every aspiring computer chess programmer has been very strongly tempted to try his hand at disassembling. When I started computer chess, Shredder was the king. We all wanted to know what he was doing. And nobody found out. Not Chrily Donninger. Not Frans Morsch. And not any of the then-amateurs.

You'll find some people posting here for example about what they "found" in Rybka. So far it has always just been transparent guessing based on program behavior, with the disassembly argument used to make it seem legit.

Vas
Great material. Thanks for sharing it.
Interesting point of view from Vas. ;)
PAWN : Knight >> Bishop >> Rook >>Queen

Peter C
Posts: 154
Joined: Thu Jun 10, 2010 3:12 am
Real Name: Peter C

Re: Is decompilation legal?

Post by Peter C » Sat Jan 08, 2011 8:09 pm

Sentinel wrote:Vas is practically saying authors of Ippolit are gods. This is just hilarious... :lol: :lol: :lol:
And the weird thing is, he claimed to get emails from people who disassembled Rybka, which he claims is next to impossible.... :?

Vas is an interesting character, that's for sure.

Peter

stvs
Posts: 33
Joined: Thu Jun 10, 2010 9:53 am

Re: Is decompilation legal?

Post by stvs » Sat Jan 08, 2011 10:34 pm

Peter C wrote:
Sentinel wrote:Vas is practically saying authors of Ippolit are gods. This is just hilarious... :lol: :lol: :lol:
And the weird thing is, he claimed to get emails from people who disassembled Rybka, which he claims is next to impossible.... :?

Vas is an interesting character, that's for sure.

Peter
the most weird is that many ppl swear to him just for one free piece of "fish", (i think due to economic crisis) :)

BB+
Posts: 1484
Joined: Thu Jun 10, 2010 4:26 am

Re: Is decompilation legal?

Post by BB+ » Mon Jan 10, 2011 5:44 am

I personally don't think the "legal" question is the one of most interest, though it seems to get hammered quite often in lieu of alternative arguments.
What then do you think is of most interest?
I've always claimed that the independence of engines should be determined according to the standards of computer chess. One of the precedents here was Berliner (of HITECH) requesting the ChipTest/DeepThought team to remove something like 0.3% of their code (some sort of "Cray Blitz simulator" as a first version of an evaluation function) -- I think he had allowed Murray Campbell to use this with DT before, but not if they were going to compete in the same event.

Post Reply