Most secure way to license software [closed]

2020-02-28 09:59发布

What is the best and most secure way to license software? Is there an existing program for doing so? I want to sell a script of mine, but I want to make sure that users cannot redistribute or sell it themselves (of course, if they deactivate the registration on their own computer and choose to resell, that is their choice).

The software language is VB.net.

Since I am not sure whether or not I could host a registration database of any sort, is there any way to keep licensing self-contained securely? I would like the user to be able to download the demo and be able to upgrade to the full version somehow.

Thanks for the help!

If there is not currently a software in existence to do this, how would i go about making one?

8条回答
地球回转人心会变
2楼-- · 2020-02-28 10:07

with .net? Its very difficult to protect it.

Best bet is only do a trivial system and rely on peoples honesty. Make it easy and simple for those who actually buy your software.

Demo? omit code from the download.

basically, don't be too paranoid...

查看更多
贪生不怕死
3楼-- · 2020-02-28 10:13

Since I am not sure whether or not I could host a registration database of any sort, is there any way to keep liscensing self-contained securely?

No, there is no way to do it securely. Even if you do have a registration database, it is crackable.

Remove full version code from the demo. If you have a small amount of buyers, this lessens your chance of leakage greatly.

If you want to make copy protection, you should start reading up on it. Since you are asking about this, I can tell that it will take you a very long time to make decent copy-protection. It's best to just hire someone else to do it for you.

A .net obfuscator is probably the easiest and most effective solution for you.

查看更多
趁早两清
4楼-- · 2020-02-28 10:17

It's not so much an answer to the question of licensing, but if you're concerned about your potential customers decompiling your assemblies then you should look into Obfuscation.

Obfuscation is performed on your release builds and it heavily modifies the naming of classes, methods, and fields within your application. If a user tries to regenerate the source code using a tool such as Reflector they will be met with a high level of difficulty in trying to make the code compile or function.

Update: To answer Cyclone's comment: Dotfuscator is probably the best known since it's been shipping with Visual Studio since 2003 (I think; not sure if it's limited to specific VS editions). Some quick Google searches turned up a tutorial on using it in Visual Studio 2008, and also some alternative options.

查看更多
来,给爷笑一个
5楼-- · 2020-02-28 10:19

Take a look at the article Developing for Software Protection and Licensing; it explains how to choose a solution, why you should obfuscate your application and gives a number of tips for structuring your code to be harder to crack.

The thing to remember is that once your application is running on another machine, there is no 100% guaranteed way to prevent execution. What you can do, if you're careful, is raise the bar sufficiently high that it's easier to purchase your software than to crack it.

Obligatory disclaimer & plug: the company I co-founded produces the OffByZero Cobalt software licensing solution for .NET, which supports VB.NET natively.

查看更多
我想做一个坏孩纸
6楼-- · 2020-02-28 10:24

Don't bother. If a user is determined enough to resell your script, there is absolutely nothing you can do to stop them. By doing so, you limit users who may want to tweak your script for non malicious reasons.

查看更多
Luminary・发光体
7楼-- · 2020-02-28 10:27

If your software is desired enough and done well people will pay for it. You are always going to have a % that never will. Rather than wasting time trying to stop them, focus on improving the product.

99.9% of companies don't want to steal something and rather not change your software for there needs. They rather buy something out of the box that will work.

Keep in mind Fog Bugz from Fog Creek ships with its complete source code, and they have no problems selling there software because it is a quality product.

Quality is important, focus on that not security.

查看更多
登录 后发表回答