Copy Protection
Stephen Early
steve at greenend.org.uk
Fri, 7 Sep 2001 20:57:42 +0100
On Friday, 7 Sep 2001, John Sullivan wrote:
> >Indeed. However, this doesn't gain you as much as you might think: in
> >the general case it's impossible to write a program that can work out
> >what another program is going to do. (Think "halting problem".)
>
> What about software such as VMWare, or other Virtual Machines -
> surely they pre-parse code and alter its behaviour before actually
> running it?
They do, in order to virtualise instructions that would otherwise not
be virtualisable. (See the paper referenced in my other message.)
However, they can't "understand" what the virtualised code is doing in
any meaningful sense: they can't say, for example, "oh, it's obviously
executing %random_algorithm; we should modify it $this_way to make the
outcome be what we want".
Virtual machine monitors can mediate the interactions between the
programs running in the virtual machine and the outside
world. However, once they have permitted an interaction to take place,
they can't plausibly restrict the meaning of that interaction without
extra infrastructure.
Steve Early