Just a note:
Lockdown is completely possible to do in Java
But its not working yet.
~Hdx
Dumping StarCraft's RAM image to a file is cheating, results in massive "hash files", and will be broken as soon as someone implements it and Blizzard changes lockdown to hash the location it loaded itself into memory as well.
Just sayin'.
Dumping the "RAM image" is rather useless. You just need to hash the three versioncheck files using a generated key from the server as well as a hash calculated off of the game's DirectX video buffer.
The whole idea behind lockdown isn't that complicated. The only hack it checks for is pplug114.bwl (by trying to get the base address of it), but then again if you have a hack loaded, it probably modified the game's memory which is put through hash (not the actual files on disk, once again, it gets the base address of the files loaded). Just finding exactly what it hashes is the hard part.
It is easier to write your own implementation than to write a workaround for loading Blizzard's version