Vb.net program licensing




















Answered by:. Archived Forums. Visual Basic. Not for VB6 questions. Sign in to vote. Sunday, February 25, AM. Hello Pat, Licensing done right would be to purchase this from a service such as this one which took over from a base service that Microsoft started. Once an instance is created, simply set the KeyCode property to the license key. The OptValue property may be used in any of three modes.

It may be treated as a simple bit number, as a set of 16 options which can be read via the OptionEnabled x method, set via SetOption x method, or unset via the UnsetOption x method. It may also be used in a date mode via the ExpDate property.

Internally, the class generates and decodes keys that are AES symmetrically encrypted with a key generated from the calling program's Application. But here's the catch. I have an Function which returns a unique code for the computer it's running on using hardware IDs etc.

This Function helps me protect against the use of the same key on multiple computers unless I implement a system for allowing this, limited times and is required as the last 5 characters of the "Key". After checking, this Function returns a value of the result True or False.

Finally phew , each assembly the licensing one, and any external ones which utilize it are obfuscated -and likewise signed all assemblies, with the same key. If so, tell me what you don't understand. And just to confirm, my question is this: Would this system be secure enough to protect against the average hacker? So this is the best I can do. That's an insane wall of text so you kind of lost me. And, to be honest I stopped reading seriously when I saw you had a hardcoded key inside the binary that you plan to distribute But there are two questions you ought to ask yourself:.

And wouldn't your time be better spent adding cool features to the application instead of licensing code which does nothing to improve the application itself? Don't get me wrong. I'm all for people getting paid for their work and I don't object to people licensing their software; as a matter of fact, one of the projects I worked on was a custom licensing engine which was tracking a little over , licenses last I checked.

But make sure that if you decide to implement licensing that the effort you put into it doesn't exceed the effort you put into the actual software you're licensing.

Compile and then digitally sign your application with Authenticode. Have the application itself validate the signature to try and discourage casual tampering. If you are so inclined, you could even encrypt the hashes, although that is unlikely to help against the sort of attack that someone would mount against this scheme. To be clear: this is not bulletproof then again, no licensing mechanism is and it's possible for someone sufficiently skilled to break it in a number of ways.

But it's almost certainly going to be more than good enough for your project. Security doesn't have an absolute value, it has to be measured against the payoff.

If your app is holding some nuclear codes I'd say go pay a specialized consultant for this. If you're storing grandma's secret recipes - you're good to go.

I read the whole post and it's still not clear what's the purpose of the hard-coded key or how do you manage the individual encryption keys for each license: encryption is not just about how strong an algorithm you use or how long your password is; it's also about how do you hide your passwords, how do you transmit them, what do you do in edge cases interrupted connection, failed decryption etc and many other things. From the looks of it I'd say you're in the "good to go" category only because your app doesn't sound like a high-profile target to crack and you mostly want to deter the casual cracking attempt from a frustrated developer who doesn't like your licensing scheme : and the obfuscation alone would deter most when it comes to reverse-engineering your code.

I'm not familiar with your code to tell if there's any other, easier ways to bypass licensing, such as the popular method of copying the licensing file itself if it's not tied to the machine or user profile There are many workarounds online, but only hashing system described here or something based on public key cryptography can be secure enough to serve licensing.

It's cheap, easy to setup and really secure as it uses previously meant public key cryptography to work with license. Edit: To compare with hashes of serial numbers - this solution does not require to predefine accepted serial numbers. Public key cryptography based license systems do not have this disadvantage. You provide the Name and Key to the client probably by email. Your pass phrase should be a constant invisible from the client in your client application.

Net application Saturday, October 4, PM by -Unreleased- When I put all the code into my program, it says that selectquery and other parts in the code are not defined. There must be a way to have one software version and extend the trial software into a fully licensed software, pr not. Kind regards, Matt. The current version of this code is only a trial or a fully licensed. This means that the software runs in trial limited to 30 days if I stand correct or fully licensed if the user enters a key.

You can modify the code to fit your needs to extend the code until a further date! How does it run in trial and how does it run fully licensed? How do I set the parameter? Kind regards Matt. As long as you don't enter a key, the application is in trial mode. The variables are automatically set by reading the registry. I must have done something wrong porting the code into my application Excel-AddIn. I will have to check this!

Thanks, Matt. This is a different beast. It is a DLL and not sure my demo will be easily portable. The DLL could be referenced as a standalone software as well.

I have yet to figure out how to protect the DLL itself. The protection is currnetly implemented within UI-part. Cheers, Matt. Net application Friday, April 10, AM by Naeem Shah Thans a lot man u don't know i was trying past one month for making algorithm for my products but i can't sucess then suddenly i see ur post its amazing bro one again thx a lot hope u will be great developer in future. How can I integrate an unstallation code in my VB.

Please, help me. Same as when your application creates files, those are not deleted by the un-install process. Can you give me any hint of how I can go about it? I never created a custom unistall myself. It will also vary according to the tool you are using to build your installation package. Let me check the link you've given me. But still I think you can help me because I use Inno Compiler to build my application which I think you may have some Idea about how I can add in a custom code therein before I compile.

I'm confused. Help me. But may I kindly ask questions on where to add each pieces of the code in my application? Thank you very much and hope to hav your attention and comment. Your entry point of your application a class, a form, a module will validate the key and set a global variable to the state of the license. This global variable can then be used everywhere in your application to enable or not features. If I understood, I modify the pass phrase at design time If I wish to do so and then I use your application for my self to generate and provide the keys to the user.

Is that right? And in my specific application which needs protection, I include the two classes Encryption and Hardware. I understood how your application works to generate and validate keys but I have had less clarity when I try to integrate a part of it in my own application which will be dispatched to the User.

Again, thank you for your time and attention. I plan to rewrite this article by the end of the month and really building 2 distinct applications. The one to generate the keys and another one the client to validate the keys. This way it will be a lot cleaner! I will then try the way I understood. It was just to avoid any risk of sending the parts that shouldn't be sent to the user end. Yes, writing in to two separate applications would be great and makes a lot easier for some of the people like me to easily adopt this nice piece of code.

Again, thanks. Net application Sunday, November 22, PM by Aluxa The license code dosn't change if the client name excceds about 16 characters. It is rather some code and ideas you can adjust to fit your needs.

Net application Friday, April 29, AM by Ahmad Hazim Hello, Please provide us a small sample tutorial to show how to integrate this code into our project. I saw the version but I can't open it since I have Visual Studio You didn't cater for us? You can surely create a new project with VS and add the forms and classes to it. It can give to a beginner programmer an intro to the software licensing problematics and this is always good.

I would not recommend to use this for any serious project. You have to include password somewhere in the app and anyone can retrieve it back from your binary. With this online example, it's easy to create keygen for target application. I have 10 years of experience in software licensing and developed.

NET library which avoids this possibility. It has of course much more features, but the purpose of this comment is not make advertisement for my product, but to notify programmers about problems using method. If you would like to read more about solution I provide, visit: link removed by Eric. Net application Sunday, May 28, AM by Eric Moreau I have removed the link from the previous comment as it was not authorized.

The comment is fully valid. Net application Monday, October 26, PM by Jongwe i just want t find out how to effect this on an application. Author field is required. Optional E-mail format is invalid. Comment field is required. Enter the code shown:. December 1. November 1. October 2. September 1. August 1. July 1. June 1. May 2. April 1. March 1. February 2. October 1. September 2. June 2. February 1.



0コメント

  • 1000 / 1000