Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: source code can be retrieved from an engine

Author: Dann Corbit

Date: 11:22:36 01/31/06

Go up one level in this thread


On January 28, 2006 at 16:07:15, Uri Blass wrote:

>On January 28, 2006 at 15:54:46, Sebastian Leibnitz wrote:
>
>>Look here:
>>
>>http://www.program-transformation.org/Transform/AutomaticDecompiler
>
>Thanks
>
>If I understand correctly it is even not possible to get assembly code of a
>program automatically and the user need to guess things.

100% correct decompilation is PROVABLY impossible (it has been shown to be
equivalent to the question "Will the Turing machine halt?")

On the other hand, for specific machines and specific compilers, it is possible
to write decompilers that are generally helpful most of the time.

You can't turn the hamburger back into the cow, no matter what anyone says.  But
you can figure out things like "What kind of cow was it?"  "What part of the cow
did this come from?"

The comments are gone.  The helpful variable names are gone.  The code will be
much larger and will have been rearranged by the compiler.

We can take a decompiler or disassembler and get back half of the information we
are looking for.  With human intervention, maybe 75%.  But we are not going to
get back our original program.

That's on the one hand.  On the other hand, with something like the IDA together
with someone who knows assembly can clearly recover the basic algorithms.

On the other, other hand, it is going to be a lot of work.  Nobody is going to
push a button and have the original program spit out the other end.  It is going
to be a program similar to the original (clearly NOT identical) and with most of
the human readable stuff stripped out.  So several passes would be needed to
figure out what is going on.

Consider even a program with all the variable names and comments intact like
Fruit 2.1 or Crafty 19.20 as examples.  Will you simply read and understand 100%
of what is going on?  Now change all the variable names to things like EAX and
remove all the comments.  How about now?



This page took 0 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.