Ippolit 2nd release

Discussion of anything and everything relating to chess playing software and machines.

Moderator: Ras

User avatar
George Tsavdaris
Posts: 1627
Joined: Thu Mar 09, 2006 12:35 pm

Re: Ippolit 2nd release

Post by George Tsavdaris »

M ANSARI wrote: What I meant is in actual coding of the software so that it would not be so easy for someone to decompile and steal the code. I am sure that there are ways to make things more difficult, with Rybka 3 it apparently was too easy as no steps were done to prevent that.
I remember recently Dann Corbit and GCP(Sjeng) saying that what you say is just pointless and a matter of just some minutes of delay to the ambitious hacker.
After his son's birth they've asked him:
"Is it a boy or girl?"
YES! He replied.....
Gian-Carlo Pascutto
Posts: 1260
Joined: Sat Dec 13, 2008 7:00 pm

Re: Ippolit 2nd release

Post by Gian-Carlo Pascutto »

George Tsavdaris wrote:
M ANSARI wrote: What I meant is in actual coding of the software so that it would not be so easy for someone to decompile and steal the code. I am sure that there are ways to make things more difficult, with Rybka 3 it apparently was too easy as no steps were done to prevent that.
I remember recently Dann Corbit and GCP(Sjeng) saying that what you say is just pointless and a matter of just some minutes of delay to the ambitious hacker.
I never said it was pointless. I said it wouldn't stop anyone but would increase the leadtime of the original programmer by making it harder. Which matches perfectly what the person you are replying to said.

Even delaying Ippolit by a month might have been enough to get Rybka 4 out the door and not have Vas be in the situation where he is now.
User avatar
George Tsavdaris
Posts: 1627
Joined: Thu Mar 09, 2006 12:35 pm

Re: Ippolit 2nd release

Post by George Tsavdaris »

Gian-Carlo Pascutto wrote:
George Tsavdaris wrote:
M ANSARI wrote: What I meant is in actual coding of the software so that it would not be so easy for someone to decompile and steal the code. I am sure that there are ways to make things more difficult, with Rybka 3 it apparently was too easy as no steps were done to prevent that.
I remember recently Dann Corbit and GCP(Sjeng) saying that what you say is just pointless and a matter of just some minutes of delay to the ambitious hacker.
I never said it was pointless. I said it wouldn't stop anyone but would increase the leadtime of the original programmer by making it harder. Which matches perfectly what the person you are replying to said.

Even delaying Ippolit by a month might have been enough to get Rybka 4 out the door and not have Vas be in the situation where he is now.
OK sorry then for paraphrasing you.

Would increase the leadtime. How much can you say an approximation? Because my opinion was that the delay is considerable(1-2 months) but Dann has corrected me saying it's a LOT lesser something like 5 minutes or so to do it(i hope i'm not paraphrasing him too).
After his son's birth they've asked him:
"Is it a boy or girl?"
YES! He replied.....
playjunior
Posts: 338
Joined: Fri Jun 22, 2007 12:53 am

Re: Ippolit 2nd release

Post by playjunior »

For a chess program it is very hard to really protect the code from reverse engineering.

The reason is that making the code hard to break makes it also slower. For a chess engine this is a no-no.
Gerd Isenberg
Posts: 2251
Joined: Wed Mar 08, 2006 8:47 pm
Location: Hattingen, Germany

Re: Ippolit 2nd release

Post by Gerd Isenberg »

playjunior wrote:For a chess program it is very hard to really protect the code from reverse engineering.

The reason is that making the code hard to break makes it also slower. For a chess engine this is a no-no.
Make the search iterative rather than recursive. Make it huge spaghetti, some indirect jumps anyway. Mix SSE, MMX and gp instructions, some punpcklqdq and punpckhqdq opcodes make the code a bit harder to understand ;-)
oreopoulos
Posts: 110
Joined: Fri Apr 25, 2008 10:56 pm

Re: Ippolit 2nd release

Post by oreopoulos »

M ANSARI wrote: What I meant is in actual coding of the software so that it would not be so easy for someone to decompile and steal the code. I am sure that there are ways to make things more difficult, with Rybka 3 it apparently was too easy as no steps were done to prevent that.
I remember Vas saying exactly the same thing for Rybka 3, when Strelka was out.
oreopoulos
Posts: 110
Joined: Fri Apr 25, 2008 10:56 pm

Re: Ippolit 2nd release

Post by oreopoulos »

Gian-Carlo Pascutto wrote: Even delaying Ippolit by a month might have been enough to get Rybka 4 out the door and not have Vas be in the situation where he is now.
He is not in any situation. Ippolit is a nice engine (crippled in features). Its a good as a second opinion, but this will not hurt even a tiny bit Rybka sales.

I even think that some competition, and some free code with new ideas, will probably do good to everyone.

Think positive.
bigo

Re: Ippolit 2nd release

Post by bigo »

bob wrote:
George Tsavdaris wrote:
M ANSARI wrote:Rybka 4 will be out in about a month or so. It will be all that Ipollit is and much much more. It will be the chess engines hardcore users have been dreaming about, with lots of goodies yet not seen on any engine ...
How do you know all that?
The only negative thing this time though (for hackers that is) is that it will have a heavy padlock on its code. Hopefully that will not be intrusive enough to hurt performance.
If this is the true(and unfortunately it won't be easy at all to find out as we would not have the unlocked version of R4 to compare) then i guess many people will not buy the program. I will be one of them.
There is no copy protection that can't be broken. All it does is hurt the legit users, not the thieves. I used to take great delight in doing this, just to see if I could. One can do wonders with a debugger, if he knows assembly language fairly well. :)

My only comment: I absolutely refuse to buy _any_ software that requires that I insert the CD every time I want to use the program (and I am not talking chess engines here since I don't buy/use commercial ones). On my laptop, I often have the CD/DVD drive removed to make room for an extra battery. I will not buy software that requires any sort of "dongle" (a device plugged into a printer/serial/usb port needed to "unlock" the software). If I found something I _really_ wanted, I would buy it and defeat the copy-protection to make it actually usable again. I would not give away copies, but I do refuse to deal with draconian copy-protection methodologies.


Bob can I ask why you don't use or buy chess engine software? Don't you need the best to test Crafty? I heard you say this several times here, it sounds kind of arrogant as if you can't learn anything from commercial programs, what's your beef with the commercials. I don't really believe that you would admit to hacking a program for fun but not test it. Even if you did it for fun don't you feel somewhat dishonest?
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: Ippolit 2nd release

Post by bob »

M ANSARI wrote:Nobody said anything about dongles or CD/DVD's ... I agree that doesn't work and I would also not buy anything that requires that. I remember early Chessbase software where I had to put a stupid dongle ... total FAIL. Also the entire thing with requiring you to put a DVD or CD just to get the program to run is a total turn off. Fortunately now with CB products if you run another engine in the GUI you don't need to insert any DVD to get the engine to run.

What I meant is in actual coding of the software so that it would not be so easy for someone to decompile and steal the code. I am sure that there are ways to make things more difficult, with Rybka 3 it apparently was too easy as no steps were done to prevent that.
You can try the obvious and encrypt the executable, and use another executable to load and decrypt the engine. But that fails, you just wait until the real engine is running and then use the debugger to start poking around. You can't decrypt on the fly instruction by instruction as it would be too slow. As I said, this is a hopeless assignment.
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: Ippolit 2nd release

Post by bob »

George Tsavdaris wrote:
Gian-Carlo Pascutto wrote:
George Tsavdaris wrote:
M ANSARI wrote: What I meant is in actual coding of the software so that it would not be so easy for someone to decompile and steal the code. I am sure that there are ways to make things more difficult, with Rybka 3 it apparently was too easy as no steps were done to prevent that.
I remember recently Dann Corbit and GCP(Sjeng) saying that what you say is just pointless and a matter of just some minutes of delay to the ambitious hacker.
I never said it was pointless. I said it wouldn't stop anyone but would increase the leadtime of the original programmer by making it harder. Which matches perfectly what the person you are replying to said.

Even delaying Ippolit by a month might have been enough to get Rybka 4 out the door and not have Vas be in the situation where he is now.
OK sorry then for paraphrasing you.

Would increase the leadtime. How much can you say an approximation? Because my opinion was that the delay is considerable(1-2 months) but Dann has corrected me saying it's a LOT lesser something like 5 minutes or so to do it(i hope i'm not paraphrasing him too).
Depends on what is done. But someone with a good debugger might have to waste a day or two or three to get past the protection, before diving in to the disassembly and then de-compiling tasks. It wouldn't be a huge / significant delay in general. I have even hacked up an operating system to help me figure out how to break copy protection so that I could run a program without the CD installed on my laptop. Been quite a while since I needed to do this since I now use linux and nothing is copy-protected like that (at least nothing I use).