Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations derfloh on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Locking DLLs?

Status
Not open for further replies.

rpk2006

Technical User
Apr 24, 2002
225
IN
I am using certain DLLs in my Visual Basic application, which are included in the package supplied to any user.

I want to lock these DLLs so that no other user can use these DLLs in their applications.

Any Idea?
---------------------------------
Securing a computer system has traditionally been a battle of wits: the penetrator tries to find the holes, and the designer tries to close them. — M.Gosser
 
i dont know much about vb specifically but sometimes in not knowing one can make suggestions that arent obvious.

if i understand dll's they're just a load functions yes?

isnt there some way you could make your function only work if your main program passes them a "key". if the function didnt receive the key it could just output some arbitrary useless value.

that way they would be useless to anyone else if they didnt know the 'key'.

if your package isnt supplied with source code, can they actually be reverse engineered?

i hope i'm not being too stupid :)
===============
Security Forums
 
rpk2006 -
IFAIK, there is no technical means via the OS to prevent people from using the DLLs. You could do as browolf suggests, and pass an unlock key with every call, but it's pretty easy to decompile a VB program and find it in the source.

I wouldn't worry about it, if I were you. If you are still concerned, put a "no reverse engineering" clause in your license.

Chip H.
 
You could encrypt the DLLs and store them as a binary file on the disk. Then only decrypt them with your application into memory. It is still possible to get the key for the DLLs from your application (even if it is a derived key) but it is significantly more difficult.

Of course you could just use a Hasp dongle. Just have your DLL check for the licensed dongle with each call. I haven't heard of any cracks for the hardware dongle yet.

Personally, I hate the dongles, and won't use an application that requires them unless there isn't anything else.

There is also a CryptKey component that you can buy. It allows you to develop MS-like licensing keys that are theoretically difficult to crack.
pansophic
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top