Copy protection system

Started by
39 comments, last by DividedByZero 10 years, 1 month ago


With the full source option. What would stop you from changing a few lines and then selling it off as your own?

I don't belive anyone is that stupid, but you should be so lucky! Willful commercial copyright infrignment is very much frowned upon by the courts. If this happens, you can sue and look forward to a nice payday with triple damages.

I have never actually heard of this happening to any library at all. Development libraries are generally such niche items that piracy of them is very uncommon. How many development libraries are available on the torrent sites? I would guess it's a number close to zero.


Out of interest where do you purchase your libs from? Is there some sort of marketplace out on the net?

I haven't actually used the site myself, but many of the libraries I use link back to http://www.componentsource.com/ Maybe it's an option for you to sell it there?

Usually I first research if there are any actively developed open source libraries with a suitable license that do what I need. If there is, that's probably what I'll end up using.

If there are no suitable open source libraries, I start considering commercial alternatives. Usually I turn to stuff I heard of before that has good reputation, if not, I google and see what I can find. The requirements are:

0) It should be useful for what I want.

1) Source should be included.

2) Distribution should be royalty free (we sell the end products in very high volumes, even a $1 royalty per copy would be way more than any fixed price a library vendor usually comes up with).

If those requirements are satisfied, I download the evaluation version. Sometimes I make my boss pay for the library even during evaluation, so that it can be properly evaluated with source code and all.

The cost of the library is generally not an issue (except for the royalty part). We want third-party vendors that can support their product for a long time to come. If the cost of the library was only $20, that would be an indicator very much against that, so I would probably look for something else based on that alone.

If you want to set a more realistic price, you could consider how many hours you spent making the library, and then think about how much a programmer is paid per hour. Then set your price based on how many copies you are likely to sell. Let's say you set the price at 10% of total development costs. Then you only need to sell 10 copies to "break even". Everything beyond that is just free money. It's still an OK deal for the buyer, as it would cost him roughly 10 times more to develop the functionality himself.

Of course, if there are other libraries that do the same thing as your library does, you should consider that when setting your price.

Advertisement


You could embed a separate, unique 128-bit GUID in each individual DLL and assign it to each legitimate customer. Each time a user connects, transmit that GUID and make sure that no one else is current using it. If a second connection is made with the same GUID, disconnect them.

All that guarantees is that a pirate will stay online, the legitimate owner will always be "second" and will not get what he paid for.

Please don't PM me with questions. Post them in the forums for everyone's benefit, and I can embarrass myself publicly.

You don't forget how to play when you grow old; you grow old when you forget how to play.


If my library takes off as well as I think it will, I am sure that it will be hacked in no time. That is my biggest worry.

what kind of library is it?

and how much do you plant to charge for it?

and what are the terms of the licence, upgrades, support, etc?

a lot of hacking has to do with glory, and hassle to benefit ratio. by definition, almost no library will bring glory to the hacker because of the low number of potential illegal users - IE not enough people will care or be impressed to make it worth the hacker's time.

so its all about who would want a free copy, why, how many of them are there, and whats in it for the hacker, along with what they don't get in a hacked version (support, upgrades, etc).

a complex library can use good support as incentive to buy a legit copy.

Norm Barrows

Rockland Software Productions

"Building PC games since 1989"

rocklandsoftware.net

PLAY CAVEMAN NOW!

http://rocklandsoftware.net/beta.php


So the libraries you get have full source code also? I didn't know this was commonplace.

professional programming libraries are often offered as binary only (dll, obj, etc) at a lower price point, and with full source at a much higher price point (10x as much?).


With the full source option. What would stop you from changing a few lines and then selling it off as your own?

copyrights, license agreements, lawyers, guns, and money. <g>

IE litigation. you have to make sure all your legal documents will stand up in court BEFORE your release.

While we all wish such nonsense was unnecessary, unfortunately is all part of the business of writing and selling code.

Norm Barrows

Rockland Software Productions

"Building PC games since 1989"

rocklandsoftware.net

PLAY CAVEMAN NOW!

http://rocklandsoftware.net/beta.php


Out of interest where do you purchase your libs from? Is there some sort of marketplace out on the net?

programmers paradise

http://www.techxtend.com/content.aspx?name=programmers-is-now-techxtend

there are a couple other companies like them.

for a gamedev, they're the coolest F-ing stores on the planet!

well, that and techncial bookstores, like:

http://www.reiters.com/

Norm Barrows

Rockland Software Productions

"Building PC games since 1989"

rocklandsoftware.net

PLAY CAVEMAN NOW!

http://rocklandsoftware.net/beta.php


This is not a game, not does it require internet to use it.

I'm curious, how would you determine this? What is stopping people from just configuring their firewall to block your attempt to probe for network connectivity?

so what kind of library is it?

unless its the best thing since sliced bread, odds are you don't need to do much if anything in the way of copy protection. OTOH, if its something that might get site licensed, tracking copies will become more important, depending on the license terms.

exactly what kind of library it is will determine its popularity, likelyhood of theft, and likelyhood of being cracked.

but i can't think of any type of game related library other than directx and openGL, which are already free, that's big and powerful enough, with a large enough potential user base, to warrant cracking. and then it wouldn't be a regular game cracker doing the cracking, it would be some gamedev type doing it.

Norm Barrows

Rockland Software Productions

"Building PC games since 1989"

rocklandsoftware.net

PLAY CAVEMAN NOW!

http://rocklandsoftware.net/beta.php


This is not a game, not does it require internet to use it.

I'm curious, how would you determine this? What is stopping people from just configuring their firewall to block your attempt to probe for network connectivity?

It would be simple to determine if the library is connected to the internet. So, that would be the least of my worries.

As for what is stopping people blocking the ports? Nothing. As I said this would be a far from perfect solution, it would only slow the spread (as everyone who uses it would have to have the forethought of blocking the port).

I agree, nothing in this topic is 'trival' to do, in terms of piracy. There are ways around everything.


As I said this would be a far from perfect solution, it would only slow the spread (as everyone who uses it would have to have the forethought of blocking the port).

Basically, you'd have to try pretty hard (like making it segfault and smash the stack) for me not to notice the correlation. Moreover, I have a firewall GUI where I can see network activity. Creating a new rule takes a couple seconds.

If I noticed that your library kept phoning home, I would not buy from you again.


There are ways around everything.

My point is, if you acknowledge that this is only a very trivial hurdle (which doesn't entirely stop most that would try, only temporarily), why would you choose a method that people would, at the very least, find offensive? You say unintrusive, but to me, any code that I run that performs unauthorized actions is intrusive. Once you cross that line, I cannot trust the library. How do I know that you're not stealing my data?

What it comes down to is, are you willing to trade ethics (and legality in some territories) for knowingly futile piracy prevention, with the knowledge that someone will likely (if it is worth the effort) dummy out the code that phones home, leaving you with nought but a bad reputation?

You must have one heck of a good lib dude, like, so good, you'd break the law for it, treat your customer like a potential criminal, and try to get away with it without being noticed. Best lib ever.

"I AM ZE EMPRAH OPENGL 3.3 THE CORE, I DEMAND FROM THEE ZE SHADERZ AND MATRIXEZ"

My journals: dustArtemis ECS framework and Making a Terrain Generator

This topic is closed to new replies.

Advertisement