You include a .h file, link against a .c file, and call a function internally inside the app, which you use to make the app fail if it doesn't return success.
Once compiled, you now run my program to "sign" the binary. Once signed, they can't make any changes to the binary, even compressing it, otherwise it'll bomb out when trying to run.
For them to bypass my signing, they'd need to:
A) Figure out how it's signed, and replicate the signing, which odds are, not happening.
B) Hack the code in the binary to skip over the protection routines, possible, but these people don't seem up to that, we'll see. If they bypass it like this, we can toughen it up a bit.
C) Compile from source. As we all know, this is near impossible, and they'd never do that. Why if they do this, we'll just have to let them continue with their stupid hacks

Oh and BTW, the signatures written into the binary are also covered by signatures, and unless you have my algorithms, you won't be able to modify any of them and keep the others in sync, since they all cover each other. Man, I love reading up PhD thesis crypto papers that everyone ignores
