Need some work done? Post a Project Today
I would like C#.Net Class with a few methods to manage application license and activation for a C# Windows application.
It would have to take a structure, character array, or string created from multiple values; Header, Product, Version, Features, Serialnumber, TrialFlag, ExpirationDate, Footer, Etc. This piece of data would then be encrypted, and hashed to create a key similar to what is used in other applications, like AGG09-45PPQ-YJP43-77EF2-K3F1U. Then a cooresponding method to decode that key, decrypt it and reconstruct the original structure. Another method to call a web service, pass this key and a machine signature (I have the signature function written), for managing activation.
This class will be included within a C# Windows application, for activation purposes, and also would have to be included within a webservice, for the other side of the activation.
Some sureity file, token, atom or other hidden flag feature to indicate the product has been activated would be nice as well.
So, the business functions are like this. A user purchases or requests a trial, a key will be generated and emailed to him/her, they will enter the key into the application, it will be decoded/decrypted and if valid, shipped to the webservice for activation. The webservice will check the status of the key, and return a response to revolk, or activate, or fail the key. Once activated, there will be some hidden/encrypted token that will be used as a flag so to indicate the activation doesn't need to be executed again.
These would be the basic methods needed.
CreateKey() - Makes a brand new key from supplied values
DecodeKey() - Disassembles key into the supplied values.
ValidateKey() - Calls webservice to validate
IsActivated() - Checks to see if it has been validated already.
Anyone with any experience in this area, I might have skipped some things, or I might have them misunderstood, but I'm basically looking for a Class to manage fairly simple license/activation. I'd like the encryption to be pretty strong, like DES or AES - but I don't want a very long key - maybe 20-40 characters long.
I can purchase license/activation modules for around $200-$300 to integrate into my application, but they are basically Atomic Baloney Slicers - with zillions of features, where I need a few and want to keep it simple.