Protecting your rev apps

Gordon gwalias-rev at yahoo.com
Fri Dec 17 15:04:36 EST 2004


Dear Revolutionaries

Is there any way to access something like a unique ID
number for the computer currently running the rev app?

It is my understanding that Intel starting giving all
CPUs a unique IDs a few years back, probably to help
MS combat software piracy. I don't whether other chip
makers do the same (AMD for example).

More generally, my question is:

Is there any way of obtaining or generating some kind
of unique ID for an individual computer, for licensing
purposes. I have read a lot of discussion in the rr
archives about using crypto keys and hidden license
files and so on. It seems like getting the CPU ID
(perhaps through the Win API) would be like the best
way to do it.

I had another idea for this - if you write files to a
disk, the exact addresses and distribution of file
fragments will arguably be unique on anything except a
newly formatted disk. To get around even this
limitation, what you could do is use a random number
sequence to generate a whole bunch of random files of
differing lengths and to delete a random subset of
them and expand a random subset of the ones that
remain by a random number of bytes. The remaining
pattern of files on the hard drive would then act as a
kind of digital signature that you make a digest of
using their hardware addresses on the disk (sector and
block numbers) and their random contents. Even if
somebody copied all these files to another computer,
their distribution on the new disk would not be the
same and only by imaging the entire original hard
drive and outputting the result onto another drive,
could you reproduce this (unless you had access to
your hard drive at the hardware level and could write
bit sequences to specific sectors and blocks). You
might even be able to make this tougher to do by
incorporating the index of bad blocks for the original
drive, into the digest. Could such a dsik drive
fingerprint scheme be feasible (or maybe its already
been done)?

Replies to my this and to my original question would
be greatly appreciated.

Best

Gordon



More information about the use-livecode mailing list