General Development

Product Key systems – klumsy

Klumsy

Administrator

Posts: 1061
From: Port Angeles, WA, USA
Registered: 10-25-2001
anybody have any experience with product key/registration of app sort of coding? I'm going to have to add that sort of thing to my app soon and haven't really considered it before.

------------------
Karl /GODCENTRIC
Visionary Media
the creative submitted to the divine.
Husband of my amazing wife Aleshia
Klumsy@xtra.co.nz

TwoBrothersSoftware

Member

Posts: 141
From: Janesville, Wi USA`
Registered: 08-05-2006
quote:
Originally posted by klumsy:
anybody have any experience with product key/registration of app sort of coding? I'm going to have to add that sort of thing to my app soon and haven't really considered it before.


Yes - tried it - have gone to a crippleware model. Someone broke one of our keyes and posted it along with a link to our site for the download (they were too cheap to host it themselves). Bandwidth was insane - fortunatly we pay for alot of it and it didn't push us over the limit.

So go high end if you right a key they do break the easy ones.

kenman

Member

Posts: 518
From: Janesville WI
Registered: 08-31-2006
Yeah, it was insane, I think well over 10,000 illegal downloads in 2 days. I think we figured overall we lost >$150,000 in potential revenue from this fiasco. .

No matter how you encrpyt a key into a program, someone somewhere will be able to decompile it. Some languages are harded to decompile (such as python) and some are easy (such as C# and VB). If you write a key reading part to your program, someone may be able to hack it, especially if you make your code easy to read.

Here is what we have found to be alternitives. Call an external file as a key file. When the key file is read, then ran through a sub routine to determine if the program is licensed or not. Then, the only way to break into the program is to write code to try to write a file.

The best way I have found, is to create 2 files, one as a trial and one as a complete program. That way there is no way to hack into the code and change a line and make a full version from a trial version. Generally if someone is willing to download a 3MB program, and then pay for it, they will be willing to download a 3MB full version of the program. Os commerce has a nice interface for a download module if you were wondering..

Some times the best way to learn in life is from mistakes, I hope you can learn from mine.

By the way, I am the other brother (If you did not figure that out)

MastaLlama

Member

Posts: 671
From: Houston, TX USA
Registered: 08-10-2005
My suggestion only reiterates what Kenman said...

2 versions is the safest, unless you want to do something funky like RealmCrafter does where everytime you run the program you have to have internet access to connect to their website to allow you to open your program (which really sucks when my internet is down on a day off and I want to work on my MMORPG).

------------------
"Bell, I have something to show you, but first, you have to close your eyes, it's a surprise." - The Beast

Klumsy

Administrator

Posts: 1061
From: Port Angeles, WA, USA
Registered: 10-25-2001
yep, maybe the two version thing would be great.. over even a smaller download for the second that will change a critical DLL to "unlock it" or something..

However i don't really care about making something that is crippleware'd, or that has windows activation/lockdown sort of restrictions, and 10,000 illegal downloads in a day to me sounds like good free marketting. For most people who will pirate something aren't going to buy it anyway, so its not really money lost, but then they start depending/using and loving this program, and they talk to others, and maybe want to use it at their office, and the office will buy it etc... i'm just wanting a solid product key, generating and management system. other than the product key system what i am planning is

1) a 30 day trial with no catches... they download , install and run this software.. this is best for somebody, you can't be draconian, you have to give something for nothing for a period until they trust it, and realize they want it....

however after 30 days alot of people mightn't buy it, nor be ready to.. so i want to have a button where they can CHOOSE to extend the trial for another 60 days, the catch being they then have to choose to give me a valid email address, and a will require a 60 serial key.. so i am getting demographic use.. plus they will agree that it will send me some usage statistics (basically when the app was loaded and closed), so that i can give something for cheap/free but at least can get usage information that may help me with marketting decisions.. However i wouldn't want to do this at the first stage because alot of people wouldn't like it.. and thats why this "extention" is a choice that is fully in the users hands..

-Karl

------------------
Karl /GODCENTRIC
Visionary Media
the creative submitted to the divine.
Husband of my amazing wife Aleshia
Klumsy@xtra.co.nz

Lazarus

Member

Posts: 1668
From: USA
Registered: 06-06-2006
Forcing the user to connect to the Internet to play it is a bad idea, imo.

I always hated games like that, and so did other gamers I've played with.

Best to just have a demo version(non-expiring), and a full version. (imho)

Klumsy

Administrator

Posts: 1061
From: Port Angeles, WA, USA
Registered: 10-25-2001
one its not a game
two its only an option to extend the trial beyond the normal trial period, and its fully the users choice, without this choice they have less options (just deal with it when the 30 days is over_
three, it won't force the user to connect to the internet , sure they'll need to send and recieve in email, or directly the product key request, and usage statistics will be send over the internet (but only when connected, if it can't get a connection, then no statistics will be sent, i'm not going to cripple it)

------------------
Karl /GODCENTRIC
Visionary Media
the creative submitted to the divine.
Husband of my amazing wife Aleshia
Klumsy@xtra.co.nz

HanClinto

Administrator

Posts: 1828
From: Indiana
Registered: 10-11-2004
I like your idea, Klumsy -- asking them to extend the trial period every 30 days or something in exchange for statistics.

I'm interested in seeing how well that works out for you.

--clint

MastaLlama

Member

Posts: 671
From: Houston, TX USA
Registered: 08-10-2005
The problem I see with your DLL way of unlocking the program is the DLL can be purchased once then uploaded to hack/crack sites so people with the demo can unlock it with a DLL download.

I like your idea of a 30 day trial with an extended 60 day trial. That's very cool.

------------------
"Bell, I have something to show you, but first, you have to close your eyes, it's a surprise." - The Beast

kenman

Member

Posts: 518
From: Janesville WI
Registered: 08-31-2006
I respectfully disagree that 10,000 downloads to pirate software is good advertisement. The amount of time reworking everything was not made up by the about $7.00 in advertisement revenue. But this could be software type specific, it may be more attractive for different types of software. It certainly was an experiance to have a major software offering cracked and hijacked. It's like being in a car accident, you might have an idea what it's about until you get into one. - enough said about this.

The idea of overwriting an exisiting .dll file is a system I have used also. Here is a secret that I will devulge here. Instead of calling it a .dll , just give it a different name, such as .jpg - People won't be as apt to look at a .jpg with a text viewer as they might be a .txt or .dll file.

I wish the best for you in your latest project too!