I want a private DLL for my need, not to use Windows APIs. So, the programmer explain to me how to use that DLL (to add it to my VB, or any application of mine), how to deal with the functions in it, what are the needed strings to be forwarded to that function, and how to do that.
So, the DLL(s) given by the programmer must hold the whole security thing in the program.
1- Read (low-level and securely) the physical parts of the PC (like Hard Disk Serial, Motherboard, BIOS, MAC..etc.. the manufactory serials that are not changed anyhow)
2- To have an algorithm to generate a Hardware Fingerprint for that user PC, which will be given to me by phone call by the user.
3- I need to have a KEY generator to generate a key against that Hardware Fingerprint.
4- User enters the key in the text box, then it will check using a secured algorithm if the key entered is correct for that Hardware finger print (THE FINGER PRINT IS NO WAY STORED IN THE PC, EVEN NOTHING IN THE REGISTRY)
5- If correct, it will decrypt the program (it will be encrypted using AES for example) with the key.
6- It will store the key in the registry (not the hardware finger print) so it will always check (in real-time) the hardware finger print against that key, and then start the program if it is correct.
I want to be aware of using already hooked or dangerous APIs.
I need a document that explains everything in the given work in detail, in addition to a How to use document. The document will contain info and example (in Visual Basic 6) about how it works. And the document will contain what functions to put in VB to call the DLL file, and what strings to forward, and how to do that, from the first step of running the program, till the running and decryption of the program.
I think using C++ and Assembly for Low-Level programming might be a good choice. It needs to be a low-level programmed which reades it without Windows resources.
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.
2) Deliverables must be in ready-to-run condition, as follows (depending on the nature of the deliverables):
a) For web sites or other server-side deliverables intended to only ever exist in one place in the Buyer's environment--Deliverables must be installed by the Seller in ready-to-run condition in the Buyer's environment.
b) For all others including desktop software or software the buyer intends to distribute: A software installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request.
3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement).
Microsoft Windows - All versions.
Any OS supported would be great!